mattablues / radix-app
Radix System
Requires
- php: ^8.3
- ext-ctype: *
- ext-exif: *
- ext-fileinfo: *
- ext-gd: *
- ext-iconv: *
- ext-libxml: *
- ext-openssl: *
- ext-pdo: *
- ext-simplexml: *
- mattablues/radix-framework: ^1.0
- phpmailer/phpmailer: v6.12.0
Requires (Dev)
- friendsofphp/php-cs-fixer: v3.93.1
- infection/infection: ^0.32
- phpstan/phpstan: ^2.1
- phpstan/phpstan-phpunit: ^2.0
- phpunit/phpunit: ^11.0
- symfony/event-dispatcher: ^7.4
- symfony/filesystem: ^7.4
- symfony/finder: ^7.4
- symfony/var-dumper: v7.4.4
This package is auto-updated.
Last update: 2026-07-07 12:22:52 UTC
README
Radix App
Radix App är en starter-applikation för Radix som skapas via composer create-project.
Själva ramverket lever som ett separat Composer-paket:
mattablues/radix-framework
Det här repot är alltså appen, inte frameworket.
Radix App vs Radix Framework
radix-app = starter-projektet / applikationen du bygger vidare på
radix-framework = själva ramverket som appen använder via Composer
Radix App innehåller bland annat:
bootstrap/
config/
database/
docs/
public/
resources/
routes/
src/
support/
templates/
tests/
tools/
views/
radix
Radix Framework installeras via Composer och ligger normalt under:
vendor/mattablues/radix-framework
- Radix App vs Radix Framework
- Översikt
- Krav
- Installation
- Webroot och .htaccess
- Public assets och uploads
- Frontend
- Dokumentation
- CLI (
radix) - Scaffolds
- Utveckling & test
- Deployment kort
- Licens
Översikt
Radix App är en färdig projektstruktur med:
- routing
- controllers
- middleware
- views/templates
- frontend assets
- CLI
- migrations
- seeders
- scaffolds
- service/container setup
- test- och analysverktyg
Vanligt flöde:
composer create-project mattablues/radix-app <din-app> cd <din-app> npm install php radix app:setup
Därefter kan du lägga till mer funktionalitet stegvis med scaffolds:
php radix scaffold:install auth --force-placeholders php radix migrations:migrate
Krav
- PHP 8.3
- Composer
- Node.js + npm
- Databas, till exempel MySQL eller SQLite
- Rekommenderat: webbserver med document root pekad till
public/
PHP-extensions beror på vilka delar av appen du använder, men appen kan kräva till exempel:
pdo
gd
exif
ctype
openssl
fileinfo
iconv
simplexml
libxml
Installation
Skapa ett nytt projekt:
composer create-project mattablues/radix-app <din-app> cd <din-app>
Installera frontend dependencies:
npm install
Grundsetup:
php radix app:setup
app:setup gör normalt:
- rensar cache
- kör migrationer
- kör seeders om det finns några
Se mer:
Webroot och .htaccess
Rekommenderat är att peka serverns document root till:
public/
För enklare webbhotell där document root inte kan ändras finns en .htaccess i projektroten som kan skicka requests vidare till public/.
Det finns även en:
public/.htaccess
som hanterar webbroot-specifika Apache-regler, till exempel:
- routing till
index.php - skydd av dolda filer
- cache headers
- regler för assets/uploads
Public assets och uploads
Radix App använder en rekommenderad standardstruktur för publika assets och användaruppladdningar:
public/
assets/
css/
js/
images/
graphics/
favicons/
uploads/
public/assets
public/assets innehåller appens betrodda frontend-assets, till exempel:
- CSS
- JavaScript
- favicons
- logotyper
- statisk grafik
- default-avatar
Exempel:
versioned_file('/assets/css/app.css'); versioned_file('/assets/js/app.js'); versioned_file('/assets/images/graphics/avatar.png');
public/uploads
public/uploads är reserverad för användargenererade filer.
Exempel:
public/uploads/users/1/avatar.jpg
Spara normalt publik path i databasen:
/uploads/users/1/avatar.jpg
Använd inte public/uploads för appens egna SVG-, JS- eller CSS-filer.
Använd inte public/assets för användaruppladdningar.
Se mer:
Frontend
Frontend-källor ligger i:
resources/
js/
tailwind/
Byggda filer hamnar i:
public/assets/
css/app.css
js/app.js
Development:
npm run start:dev
Production build:
npm run start:build
Se mer:
Dokumentation
All dokumentation för appen finns under:
docs/
Starta här:
👉 Radix App Documentation Index
Viktiga dokument:
docs/INSTALLATION.mddocs/CLI.mddocs/ARCHITECTURE.mddocs/CONFIG.mddocs/ROUTING.mddocs/CONTROLLERS.mddocs/DATABASE.mddocs/ORM.mddocs/SECURITY.mddocs/TESTING.md
CLI (radix)
Kör CLI:
php radix
Kör ett kommando:
php radix [command] [arguments]
Visa hjälp:
php radix [command] --help
Visa hjälp som Markdown:
php radix [command] --help --md
Vanliga kommandon:
app:setup
scaffold:install
cache:clear
migrations:migrate
migrations:rollback
seeds:run
seeds:rollback
make:migration
make:seeder
make:model
make:controller
make:form-request
make:event
make:listener
make:middleware
make:service
make:provider
make:test
make:view
make:command
Se mer:
Scaffolds
Scaffolds är paket som kan lägga till app-funktionalitet, till exempel:
- routes
- controllers
- middleware
- views/templates
- config
- migrations
- seeders
- services
- events/listeners
- frontend-filer
Installera scaffold:
php radix scaffold:install <preset>
Exempel:
php radix scaffold:install auth
Rekommenderat i ny app
I en ny/minimal app kan det finnas placeholder-filer för att statisk analys, till exempel PHPStan, ska vara nöjd.
Använd därför normalt:
php radix scaffold:install auth --force-placeholders
För alla top-level presets:
php radix scaffold:install --all --force-placeholders
Kör sedan:
php radix migrations:migrate
Kontrollera först med dry-run
php radix scaffold:install auth --dry-run
Force
Använd --force endast när du medvetet vill skriva över riktiga filer:
php radix scaffold:install auth --force
Se mer:
Utveckling & test
Vanliga kommandon via Composer scripts:
composer format:check
composer stan
composer test
Autoformat:
composer format
Mutation testing:
composer infect composer infect:pcov composer infect:xdebug
Se mer:
Deployment kort
Exempel på kort deployment-flöde:
composer install --no-dev --optimize-autoloader npm install npm run start:build php radix cache:clear php radix migrations:migrate
Kontrollera production-env:
APP_ENV=production APP_DEBUG=0 APP_URL=https://example.com RADIX_DEPLOY=0 MAIL_DEBUG=0 SESSION_COOKIE_SECURE=true HEALTH_REQUIRE_TOKEN=1
Se mer:
Licens
MIT