Skip to content

Repository files navigation

Yii Framework

Web Application Basic


CodeceptionPHPStan

A modern, Bootstrap 5-powered Yii2 application template for rapid development
Clean architecture, production-ready features, and developer-friendly configuration

Web Application Basic

Features

Feature Overview

Available deployment options

Traditional Web Servers

Classic web-server + PHP-FPM setup; simple and widely supported for deployment.

ApacheNginxFrankenPHP Classic

High-Performance Worker Mode

Long-running PHP workers for higher throughput and lower latency.

FrankenPHPRoadRunner

Important

For setup instructions, see README.md in each branch.

How it works

The Yii2 Web Application Basic template provides a complete foundation for building modern web applications. Unlike starting from scratch, this template includes.

  1. Pre-configured structure with organized directories for assets, views, models, and controllers.
  2. Bootstrap 5 integration for responsive, mobile-first user interfaces.
  3. Security features including CSRF protection and input validation.
  4. Development tools for debugging, logging, and testing.

Why use this template

  • Rapid development: Start building features immediately without setup overhead.
  • Best practices: Follow Yii2 conventions and modern web development standards.
  • Extensible: Easy to customize and extend for specific project requirements.
  • Production-ready: Includes security features and optimizations for deployment.

Note

Also, make sure to install npm for frontend dependency management.

Installation

composer create-project --prefer-dist yii2-extensions/app-basic:^0.1 app-basic
cd app-basic

Quick start

Start development server

# Using built-in PHP server
php -S localhost:8080 -t web
# Or using Yii console command
./yii serve

Important

Your application will be available at http://localhost:8080 or at the address set in --address option.

Directory structure

root/
├── config/ Configuration files
│ ├── common/ Common configuration
│ ├── console/ Console configuration
│ ├── web/ Web configuration
│ └── messages.php Translation config
├── src/
│ ├── framework/ Framework assets & resources
│ │ ├── asset/ Asset bundles
│ │ └── resource/ CSS, JS, layouts, messages
│ └── usecase/ Application use cases
│ ├── hello/ Console command example
│ └── site/ Site pages
├── tests/ Test suites
├── vendor/ Composer dependencies
└── web/ Web server document root

Creating your first page

<?php// src/usecase/site/SiteController.phpdeclare(strict_types=1);
namespaceapp\usecase\site;
useyii\web\Controller;
finalclass SiteController extends Controller
{
publicfunctionactionIndex(): string
{
return$this->render('index');
}
}

Console commands

# Run the hello command
./yii hello/index
# Generate translations
./yii message config/messages.php
# Clear cache
./yii cache/flush-all

Package information

PHPYii 2.0.xYii 22.0.xLatest Stable VersionTotal Downloads

Quality code

CodecovPHPStan Level MaxSuper-LinterStyleCI

Documentation

For detailed configuration options and advanced usage:

Our social networks

Follow on X

License

License

About

A modern, Bootstrap5 powered Yii2 application template for rapid development.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

18 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages