Skip to content

Instantly share code, notes, and snippets.

View davidpiesse's full-sized avatar

David Piesse davidpiesse

View GitHub Profile
@davidpiesse
davidpiesse / Foreach-refactor.php
Created July 29, 2016 07:30
A refactoring challenge for Adam Wathan at Laracon 2016
//this function returns entrymessage objects only if the entrymessage is a mesaage, and the internal message object isText.
//From Facebook messenger api
//Got parts refractories but couldn't work out how to return a collection of valid entrymessages with the double foreach.
//Tried lots of combos of each/map/ and filter.
public function textMessages()
{
$result = [];
foreach ($this->entries as $entry) {
foreach ($entry->messages as $entryMessage) {
@davidpiesse
davidpiesse / vue-switch-style
Created March 1, 2017 14:52
VueJS Switch Custom Style - SASS to CSS conversion
.vue-switcher-theme--custom.vue-switcher-color--green div {
background-color: #C8E6C9;
}
.vue-switcher-theme--custom.vue-switcher-color--green div:after {
background-color: #43A047;
}
.vue-switcher-theme--custom.vue-switcher-color--green.vue-switcher--unchecked div {
background-color: #E0E0E0;
}
.vue-switcher-theme--custom.vue-switcher-color--green.vue-switcher--unchecked div:after {
@davidpiesse
davidpiesse / gist:572d4aa272fdbaccfd49423b3cf699fc
Created May 25, 2017 10:27
Bash script for adding common packages when building a new laravel project
//Asks a bunch of questions about potential common packages that you may want to add
//Example
laravel new test-project
//It runs
laravelextras
//Asks questions
There are 27 potential packages you may want to add to your composer file. Select y/n for all of the following.
Once complete composer will install all of these packages with the latest version if not defined in the list of packages
@davidpiesse
davidpiesse / info.md
Last active January 31, 2018 15:55
Earthquake Stream Connection - Pusher
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="">
<meta name="author" content="">
<title>Starter Template for Tailwind CSS</title>
<!-- Tailwind CSS Preflight CSS-->
@davidpiesse
davidpiesse / tailwind_md_colours.js
Last active November 30, 2020 21:35
Replace the default (still great) colors from Tailwind to those from Material Design maintaining the Tailwind naming convention
//Notes
//
//For mapping the 100-900 colors we have mapped as follows:
//darkest:900
//darker:700
//dark:600
//base:500
//light:400
//lighter:300
//lightest:100
@davidpiesse
davidpiesse / tailwind_md_all_colours.js
Last active April 5, 2024 14:55
A colour set for Tailwind CSS that include all Material Design Colours, shades, accents and contrast colours
// https://davidpiesse.github.io/tailwind-md-colours/
//
//Notes
//
//All colours are generated from Material Design Docs
//Colours have a base, a set of shades (50-900) accent colours
//In addition a companion set of contrast colours are included for colouring text / icons
// Example usage
// class="w-full bg-red-600 text-red-600-constrast"
@davidpiesse
davidpiesse / Schedulable.php
Last active September 7, 2023 15:22
Laravel Custom Class/Model Scheduling
<?php
//Don't forget to change the namespace!
namespace App\Traits;
use Cron\CronExpression;
use Illuminate\Support\Carbon;
use Illuminate\Console\Scheduling\ManagesFrequencies;
trait Schedulable{
@davidpiesse
davidpiesse / example.js
Created July 8, 2018 18:33
A auto loader that allows for loading modules quickly with an await function and then call anywhere else (Allows you to get out the the UMD function)
import esri from '../moduleLoader'
async loaded(){
await esri.loadModules([
'esri/Map',
'esri/views/MapView',
'esri/widgets/Compass',
],true)
}
@davidpiesse
davidpiesse / index.js
Created August 5, 2019 13:59
Brand Colour Tailwind Plugin
let brands = {
"500px": {
"title": "500px",
"slug": "500px",
"colors": ["0099e5", "ff4c4c", "34bf49"]
},
"about-me": {
"title": "About.me",
"slug": "about-me",
"colors": ["00a98f"]