This is the TallUI Monorepo containing all packages and the Laravel dev app.
TallUI packages are categorized in
- _components - Laravel packages only packed with Blade and Livewire components
- _data - Laravel packages only used as data-provider (model, migration, seeding)
- _icons - Laravel packages only with SVG icons, compatible with Blade Icons
- _others - Other Laravel packages or assisting repos like TallUI Package Builder
- _packages - Full blown Laravel packages like TallUI Core or Admin Panel
- _themes - Themes for the admin (backend) or website (frontend)
- _themes/website - Themes for the TallUI Website
Packages are automatically updated to their own read-only repos when pushed to [main]. See the Builder docs for more information about how to build and publish packages.
The Laravel dev app in the root-folder of the TallUI Monorepo is made for instant development with Laravel Sail or Laragon.
# Use the prepared composer.json
cp _custom/composer.json-example _custom/composer.json
# Use the matching environment for sail or laragon
cp .env.sail .env
cp .env.laragon .env
# Build
composer install
# Run Sail, alternatively start Laragon
./vendor/bin/sail up
# Run Vite (in Ubuntu, not in Sail container)
npm install
npm run dev
# Rebuild the sail config if needed
./vendor/bin/sail down --rmi all -v
php artisan sail:install
# Remove broken symlinks
# switching from Laragon to Sail for example
rm -Rf vendor/usetall
As you might want to develop with a custom set of TallUI packages or require your own packages, we included a second composer.json. This composer-file requires all TallUI packages and can be easily edited or extended without overwriting the main composer.json.
cd _custom
cp composer.json-example composer.json
To customize the set of TallUI packages, simply delete the packages you don't want to load from the require-section, composer update
afterwards.
If you want to include custom packages you can clone one or more packages as subrepos into _custom and add them to _custom/composer.json like so:
"repositories": [
{
"type": "path",
"url": "./_custom/package"
}
],
"require": {
"custom/package": "dev-main"
},
- Do
npm run build
before committing because automated tests on GitHub needs a working vite-manifest - Do
php artisan migrate --database=sqlite
to reflect changes to the test-database - Use https://marketplace.visualstudio.com/items?itemName=adrolli.tallui-laravel-livewire-tailwind with VS Code
- Use https://github.com/usetall/tallui-package-builder to create your own packages
- Please see CONTRIBUTING for details.
main
is the current stable version, branch-protected, auto-commits to all packages, deployed livetest
is the branch for tests and Scrutinizer, deployed on staging, merged to maindev
active development with tests and code fixing, merged to testfeature/...
prefix all other dev-branches, merge to dev
We test TallUI using:
- Monorepo
- Larastan, PHPStan Level 5
- Laravel Pint, PHP CS Fixer
- Scrutinizer, Codacy and Code climate (testing)
- Packages
- Orchestra Testbench
- Larastan, PHPStan Level 5
- Laravel Pint, PHP CS Fixer
- Pest
Please make sure you use the same tools in VS Code (our VS Code Extension Pack covers this) or do the checks manually before committing to the dev-branch:
- PHPStan:
composer analyse
or./vendor/bin/phpstan analyse
, for packages../../vendor/bin/phpstan analyse
- Pest:
composer test
or./vendor/bin/pest
, for packages../../vendor/bin/pest
- Coverage:
composer test-coverage
or./vendor/bin/pest --coverage
, for packages../../vendor/bin/pest --coverage
- Pint:
composer format
or./vendor/bin/pint
, for packages../../vendor/bin/pint
TallUI is translated with Weblate. More information about the languages, translation status and how to contribute in our translation documentation.
TallUI is made by these nice people, and bots ...
adrolli |
reinhold-jesse |
weblate |
wp1111 |
azizovic12 |
KimSpeer |
laravel-shift |
FMorlock |
janakeks |
tallui-bot |
github-actions[bot] |
dependabot[bot] |