Getting Started
Set up a Waaseyaa project in a few minutes.
Prerequisites
- PHP 8.4 or later
- Composer 2.x
Create a New Project
composer create-project waaseyaa/skeleton my-app
cd my-app
php -S localhost:8000 -t public
This scaffolds a minimal Waaseyaa application and starts the built-in PHP server. Open http://localhost:8000 to see it running.
Project Structure
my-app/
├── config/
│ └── waaseyaa.php # Framework configuration
├── public/
│ └── index.php # Front controller
├── src/
│ └── Provider/
│ └── AppServiceProvider.php
├── composer.json
└── .env
The front controller boots the Waaseyaa kernel. Configuration lives in config/waaseyaa.php. Your application logic goes in service providers under src/Provider/.
Define Your First Entity
use Waaseyaa\Entity\EntityType;
use Waaseyaa\Field\FieldDefinition;
use Waaseyaa\Field\Type\StringField;
use Waaseyaa\Field\Type\TextField;
EntityType::define('article')
->label('Article')
->addField(FieldDefinition::create('title', StringField::class)->required())
->addField(FieldDefinition::create('body', TextField::class))
->revisionable()
->register();
This registers an article entity type with two fields. Waaseyaa handles storage, validation, and API generation automatically.
What's Next
Visit the GitHub repository for full documentation, package reference, and examples. Read the blog series for the story behind the framework.