Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Skeleton Laravel Package

mrshanebarron/skeleton

A Laravel package skeleton offering a clean starting point for building reusable packages, with standard structure, service provider setup, and sensible defaults for testing, configuration, and distribution.

View on GitHub
Deep Wiki
Context7

mrshanebarron/skeleton is a lightweight starting point for building Laravel/PHP packages. It provides a clean structure, sensible defaults, and the essential wiring needed to move from idea to distributable package quickly.

  • Laravel-ready service provider and package discovery setup
  • PSR-4 autoloading with clean src/ and tests/ layout
  • Config publishing hooks for package configuration
  • Testing setup for confident package development
  • Composer metadata ready for Packagist releases
Frequently asked questions about Skeleton
What is mrshanebarron/skeleton used for?
It is a minimal Laravel package skeleton for scaffolding new PHP packages that integrate with Laravel. It provides Composer setup, a service provider, config publishing, and a PHPUnit test harness so you can start building reusable Laravel components instead of wiring that structure by hand. It is a starting point, not an application framework or a domain-specific feature package.
How do I install mrshanebarron/skeleton with Composer?
Install it as a Composer dependency in a Laravel application or use it as a template for a new package with composer require mrshanebarron/skeleton. After installation, the service provider is expected to be discovered through Laravel package discovery, and config publishing is optional via vendor:publish. Check the package README and composer.json for the exact namespace and supported Laravel constraints before adopting it.
Which Laravel versions does this package support?
The supplied package metadata does not list explicit Laravel version constraints, so verify the require section in composer.json before installing. The described architecture is a standard Laravel package shape with a service provider and publishable config, which generally fits Laravel 8 and later applications. Treat the Composer constraints, not the skeleton pattern, as the source of truth for compatibility.
How do I publish the config file for this Laravel package?
Use Laravel's vendor publish command, typically php artisan vendor:publish with the provider or tag specified by the package. In v1.0.1 the published config file was renamed to use an sb- prefix, for example config/sb-*.php, to reduce collision risk with host-app config files. After publishing, run php artisan config:clear and rebuild config:cache if your deployment uses it.
What changed in v1.0.1 and do I need to upgrade?
v1.0.1 is a patch release that renames the published config file to an sb-prefixed filename; it does not declare new features or public API changes. New installs can use it directly. Existing v1.0.0 installs should treat it as a config migration: compare the old and new config keys, publish the new file, port custom values, delete the old file, and clear config cache.
Will upgrading to v1.0.1 break my existing configuration?
It can cause a silent config regression if you already published the v1.0.0 config file, because Laravel will stop merging the old unprefixed file and the package will fall back to its shipped defaults. There may be no error or warning. Diff your published config against the new sb-prefixed file, copy customised values, delete the orphaned file, and clear or rebuild config cache during deployment.
Is mrshanebarron/skeleton production ready?
It is a package skeleton intended for scaffolding, so production readiness depends on what you build on top of it rather than the skeleton itself. The v1.0.1 release is early stabilisation: a user-visible config filename changed after 1.0.0, which is a release hygiene signal. Pin versions, review upgrade notes, and test config publishing in CI before relying on it in production.
How do I run the PHPUnit tests in this package skeleton?
The package includes a PHPUnit test harness, so install dev dependencies with Composer and run the test suite using the configured PHPUnit command, commonly vendor/bin/phpunit. If the package defines Composer scripts, use those to match the maintainer's intended workflow. For package development, run tests against the supported Laravel versions in your CI matrix.
How do I customise the skeleton for my own Laravel package?
Rename the Composer package, update the namespace and autoload mapping, and adjust the service provider and config file to match your vendor prefix. Keep the publishable config path and publish tag stable across releases to avoid the kind of config migration seen in v1.0.1. Add your routes, migrations, views, or commands only after the base package installs and publishes cleanly.
What are alternatives to a Laravel package skeleton like this?
Common alternatives include other Laravel package boilerplates and skeleton repositories that provide service provider, config, and test scaffolding, such as community-maintained package templates. Choose based on maintained Laravel version support, CI coverage of the publish path, and clear upgrade documentation. This package is a reasonable minimal starting point, but compare release cadence and config-publishing stability before committing.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect