This is project template for basic programming, to see something on browser or cli, can be used as a stepping stone (starting or resetting) to learn about OOP concepts, Backend development and web development in general.
Overkill features
- Autoloading (PSR-4) - already supported by composer, skipping burden of
- require all necessary files one by one in other files
- using spl_autoload_register
Missing features
- Basic Router (including PSR-7)
- Containers (PSR-11)
- Other PSR interfaces (PSR-3 Logging, PSR-6 Caching, PSR-14 Event/Listeners)
- Something FE related (maybe Mithril.js)
Okay features
- More or less well known structure
- Has examples for env variables
- Pointing to use Pest for testing
- You can use this template by running the following command:
docker run --rm -it \ --volume $PWD:/app \ --user $(id -u):$(id -g) \ composer create-project citadaskola-2023/project-template <project_name>
- Dependencies already are installed with
composer create-project
- Start Project container (using dunglas/frankenphp PHP image)
docker run -v $PWD:/app \ -p 80:80 -p 443:443 \ dunglas/frankenphp
- Go to https://localhost, and enjoy!
- In order to use MySQL, libraries more has to be added to fresh Dockerimage ref
MIT licence