contributte / webapp-skeleton
Webapp skeleton is full featured web app kit based on Nette Framework + Contributte and many useful packages by @f3l1x.
Fund package maintenance!
f3l1x
contributte.org/partners.html
Installs: 857
Dependents: 0
Suggesters: 0
Security: 0
Stars: 91
Watchers: 9
Forks: 19
Open Issues: 3
Type:project
Requires
- php: >=8.1
- contributte/application: ^0.5.0
- contributte/bootstrap: ^0.6.0
- contributte/cache: ^0.6.0
- contributte/console: ^0.10.0
- contributte/console-extra: ^0.8.0
- contributte/di: ^0.5.0
- contributte/event-dispatcher: ^0.10.0
- contributte/event-dispatcher-extra: ^0.10.0
- contributte/forms: ^0.5.0
- contributte/http: ^0.4.0
- contributte/latte: ^0.5.0
- contributte/mail: ^0.7.0
- contributte/mailing: ^0.5.0
- contributte/monolog: ^0.5.0
- contributte/pdf: ^7.0.0
- contributte/security: ^0.4.0
- contributte/tracy: ^0.6.0
- contributte/utils: ^0.6.0
- nettrine/annotations: ^0.7.0
- nettrine/cache: ^0.3.0
- nettrine/dbal: ^0.8.0
- nettrine/fixtures: ^0.8.0
- nettrine/migrations: ^0.9.1
- nettrine/orm: ^0.8.0
Requires (Dev)
- contributte/dev: ^0.5
- contributte/phpstan: ^0.1
- contributte/qa: ^0.3
- contributte/tester: ^0.2
- mockery/mockery: ^1.3.0
- nelmio/alice: ^3.5.8
- phpstan/phpstan-doctrine: ^1.3.40
This package is auto-updated.
Last update: 2024-10-29 13:01:12 UTC
README
Website 🚀 contributte.org | Contact 👨🏻💻 f3l1x.io | Twitter 🐦 @contributte
Goal
Main goal is to provide best prepared starter-kit project for Nette developers.
Focused on:
- PHP 8.1+
nette/*
packages- Doctrine ORM via
nettrine/*
- Symfony components via
contributte/*
- codestyle checking via CodeSniffer and
contributte/qa
- static analysing via phpstan and
contributte/phpstan
- unit / integration tests via Nette Tester and
contributte/tester
Demo
https://examples.contributte.org/webapp-skeleton/
Installation
To install latest version of contributte/webapp-skeleton
use Composer.
composer create-project -s dev contributte/webapp-skeleton acme
Install using docker
-
At first, use composer to install this project.
composer create-project -s dev contributte/webapp-skeleton
-
After that, you have to setup Postgres >= 10 database. You can start it manually or use docker image
dockette/postgres:12
.docker run -it -p 5432:5432 -e POSTGRES_PASSWORD=webapp -e POSTGRES_USER=webapp dockette/postgres:12
Or use make task,
make docker-postgres
. -
Custom configuration file is located at
config/local.neon
. Edit it if you want.Default configuration should look like:
# Host Config parameters: # Database database: host: localhost dbname: webapp user: webapp password: webapp
-
Ok database is now running and application is configured to connect to it. Let's create initial data.
Run
NETTE_DEBUG=1 bin/console migrations:migrate
to create tables. RunNETTE_DEBUG=1 bin/console doctrine:fixtures:load --append
to create first user(s).Or via task
make build
. -
Start your devstack or use PHP local development server.
You can start PHP server by running
php -S localhost:8000 -t www
or use prepared make taskmake dev
. -
Open http://localhost and enjoy!
Take a look at:
Install using docker-compose
-
At first, use composer to install this project.
composer create-project -s dev contributte/webapp-project
-
Modify
config/local.neon
and set host todatabase
Default configuration should look like this:
# Host Config parameters: # Database database: host: database dbname: webapp user: webapp password: webapp
-
Run
docker-compose up
-
Open http://localhost and enjoy!
Take a look at:
- http://localhost.
- http://localhost/admin (admin@admin.cz / admin)
Features
Here is a list of all features you can find in this project.
- PHP 8.0+
- 📦 Packages
- Nette 3+
- Contributte
- Nettrine
- 🌳 Structure
app
config
- configuration filesenv
- prod/dev/test environmentsapp
- application configsext
- extensions configslocal.neon
- local runtime configlocal.neon.dist
- template for local config
domain
- business logic and domain specific classesmodel
- application backbonemodules
- Front/Admin module, presenters and componentsresources
- static content for mails and othersui
- UI components and base classesbootstrap.php
- Nette entrypoint
bin
- console entrypoint (bin/console
)db
- database filesfixtures
- PHP fixturesmigrations
- migrations files
docs
- documentationvar
log
- runtime and error logstmp
- tmp files and cache
tests
- test engine and unit/integration testsvendor
- composer's folderwww
- public content
- ❗ Tracy
- Cool error 500 page
Notable changes
$user
variable in templates is renamed to$_user
Composer packages
Take a detailed look 👀 at each single package.
- contributte/bootstrap
- contributte/application
- contributte/di
- contributte/cache
- contributte/http
- contributte/forms
- contributte/latte
- contributte/mail
- contributte/security
- contributte/utils
- contributte/tracy
- contributte/console
- contributte/webapp-skeleton
- contributte/event-dispatcher
- contributte/event-dispatcher-extra
- contributte/neonizer
- contributte/mailing
- contributte/monolog
Doctrine
- contributte/doctrine-orm
- contributte/doctrine-dbal
- contributte/doctrine-annotations
- contributte/doctrine-cache
- contributte/doctrine-migrations
- contributte/doctrine-fixtures
Dev
Screenshots
admin@admin.cz / admin
Development
See how to contribute to this package.
This package is currently maintaining by these authors.
Consider to support contributte development team. Also thank you for using this project.