41554 blogs · [ { "id": "01a07df3-fe64-708e-a057-88b4f53b239d", "title": "Is the Authors Registry, from the Authors Guild, legitimate?", "url": "https://mattstauffer.com/blog/is-the-authors-registry-from-the-authors-guild-legit/", "published_at": "2025-05-05T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f57827a7", "title": "How to set up Prettier On a Laravel App, Linting Tailwind Class Order and More", "url": "https://mattstauffer.com/blog/how-to-set-up-prettier-on-a-laravel-app-to-lint-tailwind-class-order-and-more/", "published_at": "2024-02-23T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f6540fe6", "title": "How to Trigger a Webhook on a Schedule Using GitHub Actions", "url": "https://mattstauffer.com/blog/how-to-trigger-a-webhook-on-a-schedule-using-github-actions/", "published_at": "2024-01-04T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f6f86707", "title": "How to Separate (and Skip) Laravel Jetstream's Tests", "url": "https://mattstauffer.com/blog/how-to-separate-and-skip-laravel-jetstream-tests/", "published_at": "2023-11-28T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f7794004", "title": "Optimizing Vue for Speed, Performance, and Core Web Vitals", "url": "https://mattstauffer.com/blog/optimizing-vue-for-speed-performance-and-core-web-vitals/", "published_at": "2021-06-17T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f865ad5d", "title": "How to post to Twitter from your Laravel app using Zapier", "url": "https://mattstauffer.com/blog/how-to-post-to-twitter-from-your-laravel-app-using-zapier/", "published_at": "2021-01-25T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f8774cb4", "title": "How to Use Takeout to Add New Services to Laravel Sail and Save RAM", "url": "https://mattstauffer.com/blog/how-to-use-takeout-to-add-new-services-to-laravel-sail-and-save-ram/", "published_at": "2020-12-08T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f8e512ac", "title": "How to Build and Autoload Your Own PHP Package Locally", "url": "https://mattstauffer.com/blog/how-to-build-and-autoload-your-own-php-package-locally/", "published_at": "2020-05-11T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f973dff5", "title": "How I use my Stream Deck for streaming on Twitch and YouTube", "url": "https://mattstauffer.com/blog/how-i-use-my-stream-deck-for-streaming-on-twitch-and-youtube/", "published_at": "2020-04-06T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4f9ea7d17", "title": "How to get started live streaming on Twitch and YouTube", "url": "https://mattstauffer.com/blog/how-to-get-started-live-streaming-on-twitch-and-youtube/", "published_at": "2020-04-06T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4fa4a129c", "title": "Making the Best of a Less-Than-Ideal Remote Work Environment", "url": "https://mattstauffer.com/blog/making-the-best-of-a-less-than-ideal-remote-work-environment/", "published_at": "2020-03-16T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4faaf437a", "title": "Setting Up Your Webcam, Lights, and Audio for Remote Work, Podcasting, Videos, and Streaming", "url": "https://mattstauffer.com/blog/setting-up-your-webcam-lights-and-audio-for-remote-work-podcasting-videos-and-streaming/", "published_at": "2020-02-05T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4fb76722b", "title": "Why You Shouldn't Always Ignore Trolls", "url": "https://mattstauffer.com/blog/why-you-shouldnt-always-ignore-trolls/", "published_at": "2019-09-23T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4fbe5165b", "title": "Introducing Laravel Vapor, a serverless hosting platform", "url": "https://mattstauffer.com/blog/introducing-laravel-vapor/", "published_at": "2019-07-24T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4fc0855f6", "title": "A quick introduction to command-line development with Composer", "url": "https://mattstauffer.com/blog/a-quick-introduction-to-command-line-development-with-composer/", "published_at": "2019-02-12T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4fcfc892a", "title": "It Takes a Village to Write a Book", "url": "https://mattstauffer.com/blog/it-takes-a-village-to-write-a-book/", "published_at": "2018-12-13T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4fd933390", "title": "Introducing Laravel Telescope", "url": "https://mattstauffer.com/blog/introducing-laravel-telescope/", "published_at": "2018-10-19T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4fe5f80fe", "title": "Introducing Laravel Nova: A Tool for Building Admin Panels and Custom CMSes", "url": "https://mattstauffer.com/blog/introducing-laravel-nova-a-tool-for-building-admin-panels-and-custom-cmses/", "published_at": "2018-07-25T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b4ff334fba", "title": "Testing with a MySQL 5.7 Database On Codeship", "url": "https://mattstauffer.com/blog/testing-with-a-mysql-5-7-database-on-codeship/", "published_at": "2018-07-13T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b50026259a", "title": "Enterprise Laravel Help Me: White-Labeled Clothing Stores", "url": "https://mattstauffer.com/blog/enterprise-laravel-help-me-white-labeled-clothing-stores/", "published_at": "2018-06-06T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b500ab86d7", "title": "How to count the number of lines of code in a PHP project", "url": "https://mattstauffer.com/blog/how-to-count-the-number-of-lines-of-code-in-a-php-project/", "published_at": "2018-06-05T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b50125620d", "title": "Creating Multiple Windows for Slack on Your Mac Using Single-Site Browsers", "url": "https://mattstauffer.com/blog/creating-multiple-windows-for-slack-on-your-mac-using-single-site-browsers/", "published_at": "2018-05-21T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b501508648", "title": "Adding an Auto-Generated Sitemap to Your Jigsaw-based Static Site", "url": "https://mattstauffer.com/blog/adding-an-auto-generated-sitemap-to-your-jigsaw-based-static-site/", "published_at": "2018-05-18T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b50189e2bb", "title": "Refactoring Vue: Cleaning Up a List of Posts With Better Component Splitting and More ES6", "url": "https://mattstauffer.com/blog/refactoring-vue-cleaning-up-a-list-of-posts-with-better-component-splitting-and-more-es6/", "published_at": "2018-05-14T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b5022a8c9f", "title": "Matt's Magical Finance Plan for 20- and 30-somethings", "url": "https://mattstauffer.com/blog/matts-magical-finance-plan-for-20-and-30-somethings/", "published_at": "2018-04-12T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b502961b2c", "title": "Controlling LIFX lights with your (Laravel or other) web applications", "url": "https://mattstauffer.com/blog/controlling-lifx-lights-with-your-laravel-or-other-web-applications/", "published_at": "2018-01-21T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b5033b6846", "title": "Real-time (automatic) Facades in Laravel 5.4", "url": "https://mattstauffer.com/blog/real-time-automatic-facades-in-laravel-5-4/", "published_at": "2017-08-22T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b50424237d", "title": "Laravel Collections’ higher order messaging and \"when\" method in Laravel 5.4", "url": "https://mattstauffer.com/blog/laravel-collections-higher-order-messaging-and-when-method-in-laravel-5-4/", "published_at": "2017-08-17T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b504d87811", "title": "Introducing Laravel’s tap, “higher order” tap, and collection tap", "url": "https://mattstauffer.com/blog/introducing-laravels-tap-higher-order-tap-and-collection-tap/", "published_at": "2017-08-15T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b504efe218", "title": "Introducing Laravel Horizon - a Dashboard for your Queues", "url": "https://mattstauffer.com/blog/introducing-laravel-horizon-a-dashboard-for-your-queues/", "published_at": "2017-07-25T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b505129ab9", "title": "New Laravel 5.5 Features: Recap from Laracon US 2017", "url": "https://mattstauffer.com/blog/new-laravel-5-5-features-recap-from-laracon-us-2017/", "published_at": "2017-07-25T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b5058e6d69", "title": "Lambo \"config\" and \"after\" scripts for even better quick Laravel app creation", "url": "https://mattstauffer.com/blog/lambo-config-and-after-scripts-for-even-better-laravel-app-creation/", "published_at": "2017-07-22T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b50681db0c", "title": "What packages do you install on every Laravel application you create?", "url": "https://mattstauffer.com/blog/what-packages-do-you-install-on-every-laravel-application-you-create/", "published_at": "2017-07-18T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b506dbe33a", "title": "Elsewhere: A brief introduction to Progressive Web Apps", "url": "https://mattstauffer.com/blog/elsewhere-a-brief-introduction-to-progressive-web-apps/", "published_at": "2017-06-08T00:00:00+00:00" }, { "id": "01a07df3-fe64-708e-a057-88b507239471", "title": "What happens to Laravel if Taylor Otwell disappears?", "url": "https://mattstauffer.com/blog/what-happens-to-laravel-if-taylor-otwell-disappears/", "published_at": "2017-05-05T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbaf3350b", "title": "How to set up your Laravel application for zero-downtime (Envoyer/Capistrano) deploys", "url": "https://mattstauffer.com/blog/how-to-set-up-your-laravel-application-for-zero-downtime-envoyer-capistrano-deploys/", "published_at": "2017-03-29T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbb4c3abf", "title": "Removing all Vue dependencies from Laravel", "url": "https://mattstauffer.com/blog/removing-all-vue-dependencies-from-laravel/", "published_at": "2017-03-14T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbb55426a", "title": "How to work with Google Spreadsheets in PHP", "url": "https://mattstauffer.com/blog/how-to-work-with-google-spreadsheets-in-php/", "published_at": "2017-03-07T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbb88f4e3", "title": "Introducing Laravel Mix (new in Laravel 5.4)", "url": "https://mattstauffer.com/blog/introducing-laravel-mix-new-in-laravel-5-4/", "published_at": "2017-02-08T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbc3633d0", "title": "Moving tech forward with Gomix, Express, and Google Spreadsheets", "url": "https://mattstauffer.com/blog/moving-tech-forward-with-gomix-express-and-google-spreadsheets/", "published_at": "2017-02-06T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbd09640d", "title": "Introducing Laravel Dusk (new in Laravel 5.4)", "url": "https://mattstauffer.com/blog/introducing-laravel-dusk-new-in-laravel-5-4/", "published_at": "2017-02-03T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbd78f352", "title": "Defining console commands via closure in Laravel 5.3", "url": "https://mattstauffer.com/blog/defining-console-commands-via-closure-in-laravel-5-3/", "published_at": "2017-01-30T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbe6a3e8e", "title": "What to do when your Linux web server says it's out of space--but it isn't (inodes and linux headers, oh my!)", "url": "https://mattstauffer.com/blog/what-to-do-when-your-linux-web-server-says-its-out-of-space-but-it-isnt-inodes-and-linux-headers-oh-my/", "published_at": "2017-01-18T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbeb1ad47", "title": "How to contribute (via pull request) to an open-source GitHub project using your own fork", "url": "https://mattstauffer.com/blog/how-to-contribute-to-an-open-source-github-project-using-your-own-fork/", "published_at": "2017-01-09T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbf35f287", "title": "Update to queue workers in Laravel 5.3", "url": "https://mattstauffer.com/blog/update-to-queue-workers-in-laravel-5-3/", "published_at": "2016-12-21T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfbf73de82", "title": "Using Vue in Laravel 5.3, with the Vue bootstrap and sample component", "url": "https://mattstauffer.com/blog/using-vue-in-laravel-5-3-with-the-vue-bootstrap-and-sample-component/", "published_at": "2016-12-21T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc03a444d", "title": "A little trick for grouping fields in an HTML form", "url": "https://mattstauffer.com/blog/a-little-trick-for-grouping-fields-in-an-html-form/", "published_at": "2016-12-15T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc1258151", "title": "Laravel: Up & Running is launched and available for order!", "url": "https://mattstauffer.com/blog/laravel-up-running-is-launched-and-available-for-order/", "published_at": "2016-12-13T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc143292e", "title": "The new Notification system in Laravel 5.3", "url": "https://mattstauffer.com/blog/the-new-notification-system-in-laravel-5-3/", "published_at": "2016-10-19T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc1b6d012", "title": "What's up with Laravel: Up and Running?", "url": "https://mattstauffer.com/blog/whats-up-with-laravel-up-and-running/", "published_at": "2016-09-02T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc21d0afb", "title": "Directory structure changes in Laravel 5.3", "url": "https://mattstauffer.com/blog/directory-structure-changes-in-laravel-5-3/", "published_at": "2016-08-08T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc31cdac3", "title": "Introducing Mailables in Laravel 5.3", "url": "https://mattstauffer.com/blog/introducing-mailables-in-laravel-5-3/", "published_at": "2016-08-05T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc39faf9c", "title": "Introducing Laravel Passport", "url": "https://mattstauffer.com/blog/introducing-laravel-passport/", "published_at": "2016-07-30T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc3c44b61", "title": "Introducing Laravel Scout", "url": "https://mattstauffer.com/blog/introducing-laravel-scout/", "published_at": "2016-07-29T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc49c0412", "title": "5.3 feature announcement notes from Laracon", "url": "https://mattstauffer.com/blog/5-3-feature-announcement-notes-from-laracon/", "published_at": "2016-07-27T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc59ae145", "title": "Routing changes in Laravel 5.3", "url": "https://mattstauffer.com/blog/routing-changes-in-laravel-5-3/", "published_at": "2016-07-27T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc628c569", "title": "Customizing pagination templates in Laravel 5.3", "url": "https://mattstauffer.com/blog/customizing-pagination-templates-in-laravel-5-3/", "published_at": "2016-07-26T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc69ce57c", "title": "Image dimension validation rules in Laravel 5.3", "url": "https://mattstauffer.com/blog/image-dimension-validation-rules-in-laravel-5-3/", "published_at": "2016-07-25T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc7394d30", "title": "Advanced operations with Collection::where in Laravel 5.3", "url": "https://mattstauffer.com/blog/advanced-operations-with-collectionwhere-in-laravel-5-3/", "published_at": "2016-07-08T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc7622e9d", "title": "New JSON-column where() and update() syntax in Laravel 5.3", "url": "https://mattstauffer.com/blog/new-json-column-where-and-update-syntax-in-laravel-5-3/", "published_at": "2016-07-08T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc7c442c5", "title": "The new cache() global helper in Laravel 5.3", "url": "https://mattstauffer.com/blog/the-new-cache-global-helper-in-laravel-5-3/", "published_at": "2016-07-06T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc7cabd10", "title": "Customizing additional parameters in FirstOrCreate in Laravel 5.3", "url": "https://mattstauffer.com/blog/customizing-additional-parameters-in-first-or-create-in-laravel-5-3/", "published_at": "2016-06-29T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc85372f0", "title": "The new $loop variable in Laravel 5.3", "url": "https://mattstauffer.com/blog/the-new-loop-variable-in-laravel-5-3/", "published_at": "2016-06-27T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc8d248f8", "title": "Introducing Laravel Echo: An In-Depth Walk-Through", "url": "https://mattstauffer.com/blog/introducing-laravel-echo/", "published_at": "2016-06-16T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc977ac28", "title": "Things I didn't know Laravel could do", "url": "https://mattstauffer.com/blog/things-i-didnt-know-laravel-could-do/", "published_at": "2016-06-02T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfc9d265c9", "title": "Why I wrote my book with O'Reilly", "url": "https://mattstauffer.com/blog/why-i-wrote-my-book-with-oreilly/", "published_at": "2016-05-31T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfca2d3d46", "title": "Using SparkPost for Transactional emails with Laravel", "url": "https://mattstauffer.com/blog/using-sparkpost-for-transactional-emails-with-laravel/", "published_at": "2016-04-26T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcac08cc7", "title": "Getting started using Vue's Vue-router for single page apps", "url": "https://mattstauffer.com/blog/getting-started-using-vues-vue-router-for-single-page-apps/", "published_at": "2016-04-01T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcaccbfd0", "title": "How to use Vueify, ES2015, and Browserify on your Vue projects with Laravel Elixir", "url": "https://mattstauffer.com/blog/how-to-use-vueify-es2015-and-browserify-on-your-vue-projects-with-laravel-elixir/", "published_at": "2016-03-17T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcaf16f9e", "title": "How I created a password-less, email-only authentication system in Laravel", "url": "https://mattstauffer.com/blog/how-i-created-a-password-less-email-only-authentication-system-in-laravel/", "published_at": "2016-03-11T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcbb26dda", "title": "How to merge only specific commits from a pull request with git cherry-pick", "url": "https://mattstauffer.com/blog/how-to-merge-only-specific-commits-from-a-pull-request/", "published_at": "2016-03-07T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcbdbe4e3", "title": "\"Strict\" mode and other MySQL customizations in Laravel 5.2", "url": "https://mattstauffer.com/blog/strict-mode-and-other-mysql-customizations-in-laravel-5-2/", "published_at": "2016-02-26T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcc778361", "title": "All My Projects: Asking for Open-Source Help", "url": "https://mattstauffer.com/blog/all-my-projects-asking-for-open-source-help/", "published_at": "2016-02-11T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcca1a5e3", "title": "An introduction to Statamic v2 beta, a Laravel-based flat-file CMS", "url": "https://mattstauffer.com/blog/an-introduction-to-statamic-v2-beta-a-laravel-based-flat-file-cms/", "published_at": "2016-02-09T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcd06fdcc", "title": "Multiple authentication guard drivers (including API) in Laravel 5.2", "url": "https://mattstauffer.com/blog/multiple-authentication-guard-drivers-including-api-in-laravel-5-2/", "published_at": "2016-01-22T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcd30d907", "title": "The auth scaffold in Laravel 5.2", "url": "https://mattstauffer.com/blog/the-auth-scaffold-in-laravel-5-2/", "published_at": "2016-01-08T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcd5ffdb4", "title": "How to disable MySQL strict mode on Laravel Forge (Ubuntu)", "url": "https://mattstauffer.com/blog/how-to-disable-mysql-strict-mode-on-laravel-forge-ubuntu/", "published_at": "2016-01-05T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcd7b3512", "title": "Middleware groups in Laravel 5.2", "url": "https://mattstauffer.com/blog/middleware-groups-in-laravel-5-2/", "published_at": "2015-12-22T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfce6285f5", "title": "API rate limiting in Laravel 5.2", "url": "https://mattstauffer.com/blog/api-rate-limiting-in-laravel-5-2/", "published_at": "2015-12-19T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfcf1f8d87", "title": "Implicit route model binding in Laravel 5.2", "url": "https://mattstauffer.com/blog/implicit-model-binding-in-laravel-5-2/", "published_at": "2015-12-18T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfd01e2352", "title": "Form array validation in Laravel 5.2", "url": "https://mattstauffer.com/blog/form-array-validation-in-laravel-5-2/", "published_at": "2015-12-17T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfd0f57af7", "title": "Writing a case-insensitive orderBy filter with VueJS", "url": "https://mattstauffer.com/blog/case-insensitive-orderby-filter-with-vuejs/", "published_at": "2015-12-16T00:00:00+00:00" }, { "id": "01a07df3-fe65-718e-917e-24bfd1dd67ed", "title": "Live coding as I learn Vue.js", "url": "https://mattstauffer.com/blog/live-coding-as-i-learn-vue-js/", "published_at": "2015-12-01T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330b98c951", "title": "Taking Control of Your JavaScript Objects With the Revealing Module Pattern", "url": "https://mattstauffer.com/blog/taking-control-of-your-javascript-objects-with-the-revealing-module-pattern/", "published_at": "2015-11-06T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330bb024b1", "title": "Environment specific variables in Laravel's testing environment", "url": "https://mattstauffer.com/blog/environment-specific-variables-in-laravels-testing-environment/", "published_at": "2015-11-04T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330beb2d37", "title": "Creating custom @requires annotations for PHPUnit", "url": "https://mattstauffer.com/blog/creating-custom-requires-annotations-for-phpunit/", "published_at": "2015-10-27T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330c77ef05", "title": "Custom conditionals with Laravel's Blade Directives", "url": "https://mattstauffer.com/blog/custom-conditionals-with-laravels-blade-directives/", "published_at": "2015-10-10T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330c80a932", "title": "How to Apply for a Web Developer Job at Tighten (and How Not To)", "url": "https://mattstauffer.com/blog/how-to-apply-for-a-web-developer-job-at-tighten-and-how-not-to/", "published_at": "2015-09-30T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330ce815be", "title": "Environment-Specific Configuration for CraftCMS Using PHPDotEnv", "url": "https://mattstauffer.com/blog/environment-specific-configuration-for-craftcms-using-phpdotenv/", "published_at": "2015-09-24T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330dd0dbad", "title": "Introducing Laravel Spark: A Deep Dive", "url": "https://mattstauffer.com/blog/introducing-laravel-spark-a-deep-dive/", "published_at": "2015-09-17T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330e4ee07f", "title": "ACL (Access Control List) Authorization in Laravel 5.1", "url": "https://mattstauffer.com/blog/acl-access-control-list-authorization-in-laravel-5-1/", "published_at": "2015-09-09T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330ec8eaf0", "title": "Restoring lost InnoDB MySQL databases after all data and hope was lost with DROP TABLES", "url": "https://mattstauffer.com/blog/restoring-lost-innodb-mysql-databases-after-all-data-and-hope-was-lost-with-drop-tables/", "published_at": "2015-08-29T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330edc24b6", "title": "Login Throttling in Laravel 5.1", "url": "https://mattstauffer.com/blog/login-throttling-in-laravel-5.1/", "published_at": "2015-07-31T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6330fd4779f", "title": "Using Github authentication for login with Laravel Socialite", "url": "https://mattstauffer.com/blog/using-github-authentication-for-login-with-laravel-socialite/", "published_at": "2015-07-16T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b63310c6c423", "title": "Excluding Routes from the CSRF Middleware in Laravel 5.1", "url": "https://mattstauffer.com/blog/excluding-routes-from-the-csrf-middleware-in-laravel-5.1/", "published_at": "2015-07-07T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b63311af2b47", "title": "Sublime Text (3) for PHP Developers", "url": "https://mattstauffer.com/blog/sublime-text-3-for-php-developers/", "published_at": "2015-06-26T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6331202a745", "title": "Better Integration Testing in Laravel 5.1: DatabaseMigrations, DatabaseTransactions, and WithoutMiddleware", "url": "https://mattstauffer.com/blog/better-integration-testing-in-laravel-5.1-databasemigrations-databasetransactions-and-withoutmiddleware/", "published_at": "2015-06-19T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b633129b3cac", "title": "Better Integration Testing in Laravel 5.1: Model Factories", "url": "https://mattstauffer.com/blog/better-integration-testing-in-laravel-5.1-model-factories/", "published_at": "2015-06-16T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b6331366c3f8", "title": "Better Integration Testing in Laravel 5.1: Powerful Integration Tests in A Few Lines", "url": "https://mattstauffer.com/blog/better-integration-testing-in-laravel-5.1-powerful-integration-tests-in-a-few-lines/", "published_at": "2015-06-15T00:00:00+00:00" }, { "id": "01a07df3-fe66-71f5-8993-b63313d4a057", "title": "Advanced input & output with Artisan commands, tables, & progress bars in Laravel 5.1", "url": "https://mattstauffer.com/blog/advanced-input-output-with-artisan-commands-tables-and-progress-bars-in-laravel-5.1/", "published_at": "2015-06-11T00:00:00+00:00" } ] posts Claim your blog
Back to Matt Stauffer
Blog · corpus.blog/blogs/mattstauffer.com/posts

Matt Stauffer

mattstauffer.com

2025

2024

2023

2021

2020

2019

2018

2017

2016

2015