citadaskola-2023 / project-template
Installs: 28
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
Requires
- php: >=8.2
Requires (Dev)
- pestphp/pest: ^2.24
- symfony/var-dumper: ^6.3
README
Project
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.
⚠️ Keep in mind - It is on purpose, very stupid simple, lacks many features for production, but those are left as a plan to be discovered later in the classroom.
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
How to get it started?
- 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!
Future expansions
- In order to use MySQL, libraries more has to be added to fresh Dockerimage ref
Licence
MIT licence