Skip to content

Instantly share code, notes, and snippets.

Avatar
🏠
Working from home

Till Krüss tillkruss

🏠
Working from home
View GitHub Profile
@tillkruss
tillkruss / worker.js
Created Jul 17, 2018
A Cloudflare worker that allow cookie/path based caching.
View worker.js
/**
* Time-to-live in seconds for cached requests.
*/
const cacheTtl = 300;
/**
* List of request paths to cache.
*/
const cachedPaths = [
@tillkruss
tillkruss / AppServiceProvider.php
Last active Jul 27, 2019
ElasticSearch engine for Laravel Scout
View AppServiceProvider.php
<?php
resolve(EngineManager::class)->extend('elasticsearch', function ($app) {
return new ElasticsearchEngine(
ElasticBuilder::create()->setHosts(config('scout.elasticsearch.hosts'))->build()
);
});
@tillkruss
tillkruss / README.md
Last active Jun 22, 2020
AWS Lambda function that optimizes images uploaded to a S3 bucket using Kraken.io's API.
View README.md

Lambda S3 Kraken

Trigger

  • Event type: ObjectCreated
  • Suffix: jpg

Environment variables

  • AWS_KEY
  • AWS_SECRET
  • KRAKEN_SECRET
@tillkruss
tillkruss / stream-s3-as-zip.php
Last active Apr 6, 2020
Stream files from S3 as ZIP file.
View stream-s3-as-zip.php
<?php
use Aws\S3\S3Client;
use ZipStream\ZipStream; // https://github.com/maennchen/ZipStream-PHP
use GuzzleHttp\Client as HttpClient;
protected function streamAsZip($files)
{
$s3 = S3Client::factory('...');
$zip = new ZipStream("foobar.zip");
@tillkruss
tillkruss / AuthServiceProvider.php
Last active Jul 18, 2018
Case-insensitive PostgreSQL eloquent user provider for Laravel 5.
View AuthServiceProvider.php
<?php
namespace App\Providers;
use Auth;
use App\Support\EloquentUserProvider;
class AuthServiceProvider extends ServiceProvider
{
public function boot(GateContract $gate)
View keybase.md

Keybase proof

I hereby claim:

  • I am tillkruss on github.
  • I am tillkruss (https://keybase.io/tillkruss) on keybase.
  • I have a public key whose fingerprint is 6490 DEB6 8D18 F0A3 49BD CB9C 8874 10C6 42BC 23BB

To claim this, I am signing this object:

@tillkruss
tillkruss / redis-test.php
Last active Aug 20, 2016
[WordPress] Redis Test MU-Plugin
View redis-test.php
<?php
/*
Plugin Name: Redis Test
Plugin URI: https://wordpress.org/plugins/redis-cache/
Description: Redis connection test.
Author: Till Krüss
Version: 1.0
Author URI: https://till.im/
*/
@tillkruss
tillkruss / app\Http\Kernel.php
Last active Nov 9, 2018
Running Laravel 5 on Heroku behind CloudFlare
View app\Http\Kernel.php
<?php
class Kernel extends HttpKernel
{
protected $middleware = [
\App\Http\Middleware\TrustedProxies::class,
];
}
@tillkruss
tillkruss / Database.php
Last active Mar 4, 2016
[Laravel 5.1] Use Redis PECL/HHVM extension
View Database.php
<?php
namespace App\Redis;
use Redis;
use Illuminate\Redis\Database as RedisDatabase;
use Illuminate\Contracts\Redis\Database as DatabaseContract;
class Database extends RedisDatabase implements DatabaseContract
{
@tillkruss
tillkruss / wp-api-timeouts.php
Last active Jan 23, 2018
Prevent `api.wordpress.org` requests timeouts: "Warning: An unexpected error occurred. Something may be wrong with WordPress.org or this server's configuration. If you continue to have problems, please try the support forums. (WordPress could not establish a secure connection to WordPress.org.)"
View wp-api-timeouts.php
<?php
// increase `timeout` for `api.wordpress.org` requests
add_filter( 'http_request_args', function( $request, $url ) {
if ( strpos( $url, '://api.wordpress.org/' ) !== false ) {
$request[ 'timeout' ] = 15;
}
return $request;