mattablues/radix-app

Radix System

Maintainers

Package info

github.com/mattablues/radix-app

Type:project

pkg:composer/mattablues/radix-app

Transparency log

Statistics

Installs: 35

Dependents: 0

Suggesters: 0

Stars: 1

Open Issues: 0

v1.5.0 2026-06-07 12:07 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

Ö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:

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