RSSAmplifier

Blog

Caleb Porzio

calebporzio.comRSS feed ↗45 posts

Latest posts

I just crossed $1 million on GitHub Sponsors. 💰🎉

Folks, today's the day. As of this morning, I've made over a million dollars on GitHub sponsors. W...

Reactive switchboard: making a big, slow Vue/Alpine page "blazingly" fast

![](/post_images/3891881266.png) > Heads up: I'm going to use Vue/Alpine lingo in this article, bu...

I'm out of a job...

My job is building Livewire and Alpine. What's it been? like almost four years now? Fun fact: th...

How Livewire works (a deep dive)

The experience of using Livewire seems magical. It’s as if your front-end HTML can call your PHP co...

Livewire isn’t actually “live”

Livewire is a fake. It pretends to be something it’s not. When you use a Livewire component on a p...

Making $100k As An Employee Versus Being Self-Employed

I’ve been self-employed for 2 years now. I love it and want to encourage others to go for it, but f...

Easy, Free, Serverless Laravel With Vercel

I’m blown away by how easy and powerful it is to get Laravel running on the popular serverless plat...

5 Annoying Things In VS Code You Can Fix Right Now

Let’s just skip the intro and get to the good stuff. Mmkay? Kay. ## #1) Move “Find All” To The Bot...

I Just Hit $100k/yr On GitHub Sponsors! 🎉❤️ (How I Did It)

I have a...

Easy, Free Laravel CI Using GitHub Actions

I just set up a simple set of tests for the [Livewire Docs Repo](https://github.com/livewire/docs)....

Introducing Sponsorware: How A Small Open Source Package Increased My Salary By $11k in Two Days

After digging deep on SQLite during a pair programming session with a client/friend, I had an idea…...

Live-Updating Status Page With Livewire

[Sebastian De Deyne](https://twitter.com/sebdedeyne) recently published a blog post called: [Live up...

Using Babel Without The Build (Inline JS FTW!!!)

Instead of reaching for Vue or React, I first see if I can solve my UI needs with plain old CSS (on...

Sketch Tip: Easier Pen Tool Drawing By Simply Zooming In

Lately, I've been spending a lot of time in [Sketch](https://sketch.com). I'm not a designer by trad...

8 Accessibility Mistakes We Need To Stop Making

> Web accessibility is the inclusive practice of ensuring there are no barriers that prevent interac...

My #1 Productivity Tip

I am not naturally a productive person. I love building and learning things, but my intense passion...

Playing Around With Jonathan Reinink's InertiaJS

My buddy [Jonathan Reinink](https://twitter.com/reinink) has been working on a cool project called I...

Essential Laravel Knowledge: How A Facade Works

Facades are the gateway to the magical system at the core of Laravel. Understanding them unlocks the...

Make Your "git" Command Awesome

I just stumbled on a cool command-line utility put out by GitHub called "Hub". It attempts to mimic...

[Video] Real-time Livewire w/ Laravel Echo & Pusher

In this series of screencasts, I'll walk you through a powerful new feature in Livewire: *Events*. E...

On Leaving My Day Job

January 11 was my last day at [Tighten](https://tighten.co/). Tighten was supposed to be my dream j...

Building UIs With Livewire: Dynamic Input Group

Watch me walk through building a common UI component in Livewire. We'll be adding dynamic functional...

Equivalent of PHP Class Traits in JavaScript

I'm currently working on a fairly JS-heavy project called Livewire. I'm not sure I've ever written m...

Fun Building A UI Component From Scratch With Livewire

Lately, working with Livewire has given me the same kind of joy I had when I first discovered VueJs....

Designing The "No Plans To Merge" Logo

Shortly after I started at [Tighten](https://tighten.co/), [Daniel Coulbourne](https://twitter.com/D...

Parsing Markdown: The Easy Way (With Code Highlighting)

Markdown is the bee's knees. A nice, clean, universal language that programmers AND non-programmers...

Sign Up for Livewire Updates

In case anyone is coming here from Laracon Online, you can sign up for Livewire (and my blog) update...

A simple trick to auto-retry pesky Dusk tests

If you have a Dusk test suite of reasonable size, I guarantee you there are a few pesky tests that f...

[Video] Livewire/personal life update

I’ve been dark for the past couple of weeks working on Livewire and hanging out with Family. I deci...

Livewire: No Need For Controllers Anymore!

In the midst of some heavy work I’m doing on Livewire, I decided to stop for a minute and show you a...

5 New Features In Livewire That I’m Ridiculously Excited About

If you haven't been following along, I've been working on a little tool I'm calling Laravel Livewire...

11 Awesome Laravel Helper Functions (that aren't in Laravel)

TLDR: I [packaged up](https://github.com/calebporzio/awesome-helpers) all the helper functions I use...

Laravel Lightwire (LiveView): Taking Shape

The goal of this screencast series is to catch you up on the progress of the project and demo some d...

Proof of Concept: Phoenix LiveView for Laravel

I recently read through [this blog post](https://dockyard.com/blog/2018/12/12/phoenix-liveview-inter...

How To Publish a Vue Component as an NPM Package

If you're like me, you have a handful of useful Vue components you use between different projects. M...

Helper Functions: A Love Note (and a package)

Dear Helper Functions, _You are an escape._ In a world of rigid object-orientation, you offer freed...

Feather Icons: Easy way to get SVG icons in Vue components

So I just created a new Laravel project and quickly need a couple icons in the UI. I usually use Ste...

Bash Alias: composer-link - Require Local Folders as Composer Dependencies

Anytime I find myself contributing to or building a composer package, I inevitably feel the need to...

Using inline SVGs in Vue components

Note: This blog post is less of a technical guide and more of a story around a campfire. ...so ther...

My VS Code Setup

## Important Note: This post is an out-dated representation of my setup. I’ve since gone DEEP into t...

How I Keep Notes About My Laravel Projects: scratch.md

In my day to day work, I find myself jotting things down about the project I'm working on constantly...

Acceptance Testing Laravel & VueJs Apps with Codeception

*This tutorial is based on [a fantastic tutorial](https://dotdev.co/acceptance-testing-a-laravel-and...

Ajax loading wheels and forgotten Promises

In the beginning... ``` data: { beans: null }, ready: function() { this.$http.get('beans')...

Better Vuejs form handling with SparkForm

So... every time you submit a form to a Laravel backend from a Vue component you do something like.....

Build it for yourself

One of the goals for our development team this year is to "level up" our skills. Particularly in lea...