Skip to content

Instantly share code, notes, and snippets.

View xewl's full-sized avatar
👁️‍🗨️

Ken Verhaegen xewl

👁️‍🗨️
View GitHub Profile
@devbynyden
devbynyden / 1_OpenwrtWiFreeGuide.md
Last active November 6, 2023 19:18
Setting up openwrt with Telenet WiFree

Setting up openwrt with Telenet WiFree

This guide explains how to setup your openwrt router to interact with Telenet WiFree as a WISP router.
In this case we will connect to WiFree, create a secondary Wifi signal and also have access to the internet on the Lan interface.
WISP Network
With this setup you can have multiple devices connected to the Telenet WiFree Hotspot.

!Important check the Troubleshooting section at the bottom of this page if LAN does not work.

Disclaimer

I only use this at a secondary home. I am not in any way affiliated with Telenet.

@matgargano
matgargano / .user.ini
Last active May 8, 2020 12:51 — forked from devotoare/.user.ini
Wordfence for Trellis/Bedrock
; Wordfence WAF
auto_prepend_file = '/srv/www/example.com/current/config/wordfence-waf.php'
; END Wordfence WAF
@jakebathman
jakebathman / logslaravel.sh
Created August 19, 2018 00:06
Tail Laravel logs and filter out the stack traces
tail -f -n 450 storage/logs/laravel*.log \
| grep -i -E \
"^\[\d{4}\-\d{2}\-\d{2} \d{2}:\d{2}:\d{2}\]|Next [\w\W]+?\:" \
--color
@fedme
fedme / Ionic Android Development on WSL.md
Last active November 5, 2024 05:37
Ionic Android Development on WSL (Windows Subsystem for Linux)

Ionic Android Development on WSL

Installing the required software

Execute the following commands to install Node, npm, git, Java, Ionic, Cordova and Angular CLI:

cd ~
sudo apt update
sudo apt upgrade
@ArtBIT
ArtBIT / WEB
Last active October 31, 2020 16:12
WEB is a minimalistic HTML, CSS, and JavaScript CodePen-like web editor that fits inside a bookmarklet.
# WEB
WEB is a recursive acronym. WEB stands for WEB Editor Bookmarklet.
WEB is a minimalistic HTML, CSS, and JavaScript CodePen-like web editor that fits inside a bookmarklet.
# Usage
Every time you edit the HTML, CSS, and JavaScript in the top three boxes, the result gets evaluated.
# Sharing
Click the share button in the bottom right to copy the contents of your WEB onto the clipboard for sharing.
@harishrkpatel
harishrkpatel / 2018_12_29_113449_create_csv_data_table.php
Last active June 12, 2024 07:08
Backpack For Laravel Import Functionality
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateCsvDataTable extends Migration
{
/**
* Run the migrations.
@cyberwani
cyberwani / wordpress-upload-base64.php
Created September 13, 2019 10:19
Upload a base64 string as image to the WordPress media library
<?php
/**
* Save the image on the server.
*/
function save_image( $base64_img, $title ) {
// Upload dir.
$upload_dir = wp_upload_dir();
$upload_path = str_replace( '/', DIRECTORY_SEPARATOR, $upload_dir['path'] ) . DIRECTORY_SEPARATOR;
@edwardlorilla
edwardlorilla / index.html
Created October 12, 2019 14:52
multiline Seconds to Hours:Minutes:Seconds vuejs
<div id="app">
<textarea name="second" id="second" cols="30" rows="10" v-model="second"></textarea>
<textarea v-model="secondToHMS" name="hms" id="hms" cols="30" rows="10"></textarea>
</div>
@cvan
cvan / tailwind.config.js
Last active February 12, 2025 20:46
tailwind CSS breakpoints (including iPhone 11 Pro Max)
// References used:
// - https://yesviz.com/devices.php
// - https://ricostacruz.com/til/css-media-query-breakpoints
// - https://tailwindcss.com/docs/responsive-design/#customizing-breakpoints
screens: {
'2xs': { min: '300px' },
xs: { max: '575px' }, // Mobile (iPhone 3 - iPhone XS Max).
sm: { min: '576px', max: '897px' }, // Mobile (matches max: iPhone 11 Pro Max landscape @ 896px).
md: { min: '898px', max: '1199px' }, // Tablet (matches max: iPad Pro @ 1112px).
lg: { min: '1200px' }, // Desktop smallest.

Converting Tailwind UI Alpine transitions to Vue transitions

After you copy a component from the Tailwind UI library and begin to adapt it from Vue JS to Alpine JS .. you may wonder what to do about the transitions. As I'm exploring this myself, I am documenting it for others in the same boat.

Things to be aware of:

  • Alpine calls the beginning and ending states "start" & "end"
  • Vue calls the beginning and ending states "from" and "to"
  • Alpine has inline "directives" ie x-transition:enter="classes"
  • Vue has a wrapper component that applies classes to the child
  • Alpine applies the classes you pass it for each state, :enter-start="class"