onelegstudios/starter-kit

A Laravel starter kit for Livewire.

Maintainers

Package info

github.com/onelegstudios/starter-kit

Language:Blade

Type:project

pkg:composer/onelegstudios/starter-kit

Statistics

Installs: 51

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

dev-main 2026-03-13 18:39 UTC

This package is auto-updated.

Last update: 2026-03-13 18:41:51 UTC


README

Overview

This project extends laravel/livewire-starter-kit by providing enhanced developer experience and local development tools.

It is intended for teams seeking a Laravel + Livewire solution, offering a practical default setup that runs quickly, tests easily, and is highly customizable.

Project improvements

Experience enhanced usability and customization with this starter kit. It introduces several practical improvements over the upstream default. Enjoy customizable dark mode controls, including a button, a dropdown, and a visual toggle switch. The toggle switch comes in two variants. One displays text labels, while the other uses only an icon. Both variants are ideal for a settings page. The kit also supports profile picture upload, replacement, and removal from settings. It switches to Lucide icons for a cleaner visual style and enables MustVerifyEmail by default.

It also adds a focused set of development and local tooling packages to improve day-to-day workflow. barryvdh/laravel-ide-helper improves editor intelligence, larastan/larastan with calebdw/larastan-livewire strengthens static analysis for Laravel and Livewire code, fruitcake/laravel-debugbar helps inspect requests and performance during development, soloterm/solo streamlines local command workflows, spatie/laravel-login-link simplifies secure local login/testing flows.

Instalation

laravel new --using=onelegstudios/starter-kit

Documentation

Dark mode component

The resources/views/components/layouts/dark-mode.blade.php component provides a reusable UI for switching Flux appearance between light, dark, and system.

Use it in Blade as:

<x-layouts.dark-mode />

Supported props:

  • type (button | dropdown | bar | iconbar, default: button)
  • align (default: start, used by dropdown)
  • position (default: bottom, used by dropdown)
  • standard Blade attribute bag (for example class)

Examples:

{{-- Default cycle button (light -> dark -> system) --}}
<x-layouts.dark-mode />

{{-- Dropdown menu variant --}}
<x-layouts.dark-mode type="dropdown" align="end" position="bottom" class="max-lg:hidden" />

{{-- Segmented control with labels --}}
<x-layouts.dark-mode type="bar" class="w-full" />

{{-- Segmented control with icons only --}}
<x-layouts.dark-mode type="iconbar" />

Notes:

  • The component expects Flux appearance state ($flux.appearance and $flux.dark) to be available.
  • type="bar" and type="iconbar" are useful on settings/profile pages where users expect persistent display controls.

Upstream starter kit

The original upstream starter kit documentation is available at:

License

This project is open-sourced software licensed under the MIT license.