Fresh: Laravel Package Skeleton with CI &amp; Boost | Mohamed Said       [Skip to content](#main)  [ ![](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MH.png) Mohamed SaidLaravel Backend Engineer ](https://www.msaied.com/public) - [Home](https://www.msaied.com/public)
- [Projects](https://www.msaied.com/public/projects)
- [Articles](https://www.msaied.com/public/articles)
- [Certificates](https://www.msaied.com/public/certificates)
- [About](https://www.msaied.com/public#about)

           [  Contact](https://www.msaied.com/public#contact) Menu 

Menu
----

Close 

 - [HomeStart here](https://www.msaied.com/public)
- [ProjectsCase studies](https://www.msaied.com/public/projects)
- [ArticlesEngineering notes](https://www.msaied.com/public/articles)
- [CertificatesCredentials](https://www.msaied.com/public/certificates)
- [AboutHow I work](https://www.msaied.com/public#about)
- [ContactGet in touch](https://www.msaied.com/public#contact)

  [Start a conversation](https://www.msaied.com/public#contact) [WhatsApp](https://wa.me/201094619204) [Email](mailto:hello@msaied.com) 

 1. [Home](https://www.msaied.com/public)
2. /
3. [Articles](https://www.msaied.com/public/articles)
4. /
5. [Laravel](https://www.msaied.com/public/articles?category=laravel)
6. /
7. Fresh: A Laravel Package Skeleton with Testbench, CI, and Boost Integration

   [Laravel](https://www.msaied.com/public/articles?category=laravel) [Composer Pacakge](https://www.msaied.com/public/articles?category=composer-pacakge) 

 Fresh: A Laravel Package Skeleton with Testbench, CI, and Boost Integration
============================================================================

 Fresh is an opinionated Laravel package skeleton by Mazen Touati that ships with PHPUnit, Larastan, Rector, Pint, Orchestra Testbench workbench, GitHub Actions CI, a Vue 3 frontend stack, and optional Laravel Boost AI skill stubs.

 ![](https://cdn.msaied.com/01M22N44A70A5MC2S599JP0MPH.webp) [Mohamed Said](https://www.msaied.com/public#person) Published 18 Sep 2026 · Updated 19 Sep 2026 · 3 min read

ShareCopy linkCopied

 ![Fresh: A Laravel Package Skeleton with Testbench, CI, and Boost Integration](https://cdn.msaied.com/679/6e34855eba64d6cc443c5cb2e7d17555.png) 

  On this page +1. [What Is Fresh?](#what-is-fresh)
2. [Getting Started](#getting-started)
3. [What Gets Scaffolded](#what-gets-scaffolded)
4. [Testing and Code Quality](#testing-and-code-quality)
5. [Workbench App](#workbench-app)
6. [Laravel Version Switcher](#laravel-version-switcher)
7. [GitHub Actions CI](#github-actions-ci)
8. [Full-Stack Frontend (Optional)](#full-stack-frontend-optional)
9. [Repository Hygiene](#repository-hygiene)
10. [Domain-Driven Directory Layout](#domain-driven-directory-layout)
11. [Laravel Boost and AI Skills](#laravel-boost-and-ai-skills)
12. [Key Takeaways](#key-takeaways)

 What Is Fresh?
--------------

Fresh is an opinionated Laravel package skeleton created by Mazen Touati. Scaffold it with a single Composer command and you get a fully wired package environment — tests, static analysis, CI pipelines, a workbench app, and optional AI agent skill stubs — ready to go before you write a single line of business logic. It supports both backend-only and full-stack packages.

Getting Started
---------------

Create a new package with:

```bash
composer create-project sunchayn/fresh-package my-package
cd my-package

```

An interactive wizard runs on `composer install` and collects your package details and the features you want to enable. Every prompt is also available as a CLI flag, so you can drive the setup non-interactively from a script or CI job:

```bash
php .template/init template:init --no-interaction \
  --package-name=acme/webhooks \
  --vendor-namespace=Acme \
  --class-name=Webhooks \
  --config --routes --migrations --commands \
  --no-blade --no-translations --no-facade --no-assets \
  --no-vue --no-funding

```

What Gets Scaffolded
--------------------

### Testing and Code Quality

- **PHPUnit** with **Paratest** for parallel test runs
- **Larastan** for static analysis
- **Rector** and **Pint** for automated code style and refactoring fixes

### Workbench App

Fresh includes an Orchestra Testbench `workbench/` application. Run `composer serve` to boot your package inside a real Laravel app without needing a separate host project — ideal for manual testing and UI verification.

### Laravel Version Switcher

Two convenience scripts let you flip between supported Laravel majors locally:

```bash
composer switch:l12
composer switch:l13

```

### GitHub Actions CI

The bundled workflow matrix covers:

- PHP 8.3 through 8.5 × Laravel 12 and 13
- Codecov coverage reporting
- Static analysis, Pint, and Rector auto-fix jobs
- Automated releases via **release-please**

### Full-Stack Frontend (Optional)

If you need a frontend, Fresh wires up **Vue 3**, **Tailwind v4**, **Vite**, and **TypeScript**, complete with ESLint, Prettier, Vitest, and a type-check workflow.

### Repository Hygiene

Dependabot configuration, an issue template, a funding file, and a security policy are all included out of the box.

Domain-Driven Directory Layout
------------------------------

Fresh organises source code by domain rather than by technical type:

```
src/
  Http/Greeting/
    Controllers/GreetingController.php
    Requests/GreetingRequest.php
    Resources/GreetingResource.php
  Modules/Greeting/
    Actions/BuildGreetingAction.php
    DataTransferObjects/GreetingData.php
    Enums/GreetingTone.php

```

Laravel Boost and AI Skills
---------------------------

Fresh ships with AI guidelines and skills for the package repo itself. The bundled `scaffold-module` skill enforces the domain layout when an AI agent adds a feature, while `create-dto-action`, `write-php-test`, and `task-finalization` skills cover the rest of a typical change.

An optional **Laravel Boost** skill stub adds a `resources/boost/skills/` directory. Apps that install your package will automatically receive package-specific guidelines and skills inside Laravel Boost.

Key Takeaways
-------------

- Scaffold a production-ready Laravel package in one command
- Parallel PHPUnit, Larastan, Rector, and Pint configured from day one
- Orchestra Testbench workbench lets you run the package without a host app
- GitHub Actions matrix covers PHP 8.3–8.5 and Laravel 12–13
- Optional Vue 3 + Tailwind v4 + TypeScript frontend stack included
- AI skill stubs for both the package repo and consuming apps via Laravel Boost
- Every wizard prompt has a `--flag` for fully automated, non-interactive setup

---

**Source:** [Laravel News — Fresh Package: Laravel Package Skeleton with Testbench, CI, and Boost Integration](https://laravel-news.com/fresh-package-laravel-package-skeleton)

- [Laravel](https://www.msaied.com/public/articles?search=Laravel)
- [Package Development](https://www.msaied.com/public/articles?search=Package%20Development)
- [Orchestra Testbench](https://www.msaied.com/public/articles?search=Orchestra%20Testbench)
- [GitHub Actions](https://www.msaied.com/public/articles?search=GitHub%20Actions)
- [Laravel Boost](https://www.msaied.com/public/articles?search=Laravel%20Boost)
- [PHP](https://www.msaied.com/public/articles?search=PHP)

 Frequently asked questions 
---------------------------

  What tools does the Fresh Laravel package skeleton include for code quality?Fresh ships with PHPUnit and Paratest for parallel test runs, Larastan for static analysis, and both Rector and Pint for automated code style and refactoring fixes.

   How does the Orchestra Testbench workbench in Fresh work?Fresh includes a `workbench/` directory powered by Orchestra Testbench. Running `composer serve` boots your package inside a real Laravel application, so you can manually test and click through it without needing a separate host project.

   Can I create a Fresh package without going through the interactive wizard?Yes. Every wizard prompt has a corresponding CLI flag. Pass `--no-interaction` along with flags such as `--package-name`, `--vendor-namespace`, and feature toggles like `--no-vue` to drive the setup fully non-interactively from a script or CI job.

   ![Mohamed Said](https://cdn.msaied.com/01M22N44A70A5MC2S599JP0MPH.webp)About the author
----------------

[Mohamed Said](https://www.msaied.com/public#person)Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

[About](https://www.msaied.com/public#about) [GitHub ↗](https://github.com/EG-Mohamed) [LinkedIn ↗](https://www.linkedin.com/in/msaiedm/) [WhatsApp ↗](https://wa.me/201094619204) [Email Address ↗](mailto:hello@msaied.com) [My CV ↗](https://drive.google.com/file/u/0/d/1MF20IPRJyzfy32mhEutjL5EpSls0w2Q8/view)  

   [Previous articleInertia DevTools Now Available for Firefox](https://www.msaied.com/public/articles/inertia-devtools-now-available-for-firefox) [Next articleGate Responses, Policy Before-Hooks, and Ownership Guards in Laravel](https://www.msaied.com/public/articles/gate-responses-policy-before-hooks-and-ownership-guards-in-laravel)  

   On this page
-------------

1. [What Is Fresh?](#what-is-fresh)
2. [Getting Started](#getting-started)
3. [What Gets Scaffolded](#what-gets-scaffolded)
4. [Testing and Code Quality](#testing-and-code-quality)
5. [Workbench App](#workbench-app)
6. [Laravel Version Switcher](#laravel-version-switcher)
7. [GitHub Actions CI](#github-actions-ci)
8. [Full-Stack Frontend (Optional)](#full-stack-frontend-optional)
9. [Repository Hygiene](#repository-hygiene)
10. [Domain-Driven Directory Layout](#domain-driven-directory-layout)
11. [Laravel Boost and AI Skills](#laravel-boost-and-ai-skills)
12. [Key Takeaways](#key-takeaways)

 ###  Have a technical challenge?

 Tell me what you’re building. I reply within two working days.

[Start a conversation](https://www.msaied.com/public#contact) 

   Related articles
-----------------

 [ ![](https://cdn.msaied.com/740/cce86edc21eddcbdd2f2454fadaf9c70.png)  · 3 min read### The Pipeline Pattern in Laravel: Custom Pipelines Beyond Middleware

5 Oct 2026 ](https://www.msaied.com/public/articles/the-pipeline-pattern-in-laravel-custom-pipelines-beyond-middleware-1) [ ![](https://cdn.msaied.com/739/2d6897fdcdcf090613f96f72a64b8a78.png)  · 4 min read### MySQL Full-Text Search in Laravel: Indexes, Relevance Scoring, and Boolean Mode

4 Oct 2026 ](https://www.msaied.com/public/articles/mysql-full-text-search-in-laravel-indexes-relevance-scoring-and-boolean-mode) [ ![](https://cdn.msaied.com/738/073696a3fefe18bec825beec5ac658f5.png)  · 4 min read### Laravel Queue Rate-Limited Middleware: Throttling Jobs Without Losing Work

4 Oct 2026 ](https://www.msaied.com/public/articles/laravel-queue-rate-limited-middleware-throttling-jobs-without-losing-work) 

  Have a technical challenge?
----------------------------

Tell me what you’re building. I reply within two working days.

 [Discuss your project ↗](https://www.msaied.com/public#contact) 

  © 2026 Mohamed Said · Built with Laravel, meant to last.Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

 - [Home](https://www.msaied.com/public)
- [Articles](https://www.msaied.com/public/articles)
- [Certificates](https://www.msaied.com/public/certificates)
- [GitHub](https://github.com/EG-Mohamed)
- [LinkedIn](https://www.linkedin.com/in/msaiedm/)
- [WhatsApp](https://wa.me/201094619204)
- [Email Address](mailto:hello@msaied.com)
- [My CV](https://drive.google.com/file/u/0/d/1MF20IPRJyzfy32mhEutjL5EpSls0w2Q8/view)
- [Sitemap](https://www.msaied.com/public/sitemap.xml)
