Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

yiisoft/app

Yii

Yii3 web application

An application template for a new web project


Latest Stable Version Total Downloads Build status Code Coverage Static analysis type-coverage

Home page

The package is a classic web application template. If you need console only or API please start with corresponding templates:

Requirements

  • PHP 8.2 - 8.5.

Installation

Local installation

If you do not have Composer, you may install it by following the instructions at getcomposer.org.

Create a project:

composer create-project yiisoft/app myproject
cd myproject

Note

Ensure that Composer is executed with the same PHP version that will be used to run the application.

Copy the example environment file and adjust as needed:

cp .env.example .env

To run the app:

./yii serve

Now you should be able to access the application through the URL printed to console. Usually it is http://localhost:8080.

Tip

The .env file is for local development only and is excluded from version control. In production, configure environment variables via your server or container instead.

Installation with Docker

Warning

Docker compose version 2.24 or above is required.

Fork the repository, clone it, then:

cd myproject
make composer update

To run the app:

make up

To open the running app in your default browser:

make open

To stop the app:

make down

The application is available at http://localhost.

Other make commands are available in the Makefile and can be listed with:

make help

Directory structure

The application template has the following structure:

assets/ Asset bundle source files.
config/ Configuration files.
 common/ Common configuration and DI definitions.
 console/ Console-specific configuration.
 environments/ Environment-specific configuration (dev/test/prod).
 web/ Web-specific configuration.
docker/ Docker-specific files.
public/ Files publically accessible from the Internet.
 assets/ Published/compiled assets.
 index.php Entry script.
runtime/ Files generated during runtime.
src/ Application source code.
 Console/ Console commands.
 Shared/ Code shared between web and console applications.
 Web/ Web-specific code (actions, handlers, layout).
 Shared/ Shared web components.
 Layout/ Layout components and templates.
 bootstrap.php Application bootstrap (autoloading, environment setup).
 Environment.php Environment configuration class.
tests/ A set of Codeception tests for the application.
 Console/ Console command tests.
 Functional/ Functional tests.
 Unit/ Unit tests.
 Web/ Web actions tests.
vendor/ Installed Composer packages.
Makefile Config for make command.
yii Console application entry point.

Testing

The template comes with ready to use Codeception configuration. To execute tests, in local installation run:

./vendor/bin/codecept build
APP_ENV=test ./yii serve > ./runtime/yii.log 2>&1 &
./vendor/bin/codecept run

For Docker:

make codecept build
make codecept run

Static analysis

The code is statically analyzed with Psalm. To run static analysis:

./vendor/bin/psalm

or, using Docker:

make psalm

Support

If you need help or have a question, check out Yii Community Resources.

License

The Yii3 web application template is free software. It is released under the terms of the BSD License. Please see LICENSE for more information.

Maintained by Yii Software.

Support the project

Open Collective

Follow updates

Official website Twitter Telegram Facebook Slack

About

Yii3 web application template

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Contributors

Generated from yiisoft/package-template

AltStyle によって変換されたページ (->オリジナル) /