Website 🚀 contributte.org | Contact 👨🏻💻 f3l1x.io | Twitter 🐦 @contributte
Main goal is to provide best prepared API starter-kit project for Nette-Apitte developers.
Focused on:
nette/*
packagescontributte/apitte
nettrine/*
contributte/*
contributte/qa
contributte/phpstan
contributte/tester
You can try it out yourself either by running it with docker, or more easily with docker-compose.
https://examples.contributte.org/apitte-skeleton/
1) At first, use composer to install this project.
composer create-project -s dev contributte/apitte-skeleton
2) After that, you have to setup database.
1. Setup PostgreSQL 10. You can start it manually or use docker image `dockette/postgres:15`.
```bash
docker run -it -p 5432:5432 -e POSTGRES_PASSWORD=contributte -e POSTGRES_USER=contributte dockette/postgres:15
```
Or use make task, `make docker-postgres`.
2. Setup MariaDB 10.4. You can start it manually or use docker image `mariadb:10.4`.
```bash
docker run -it -d -p 3306:3306 -e MARIADB_ROOT_PASSWORD=contributte -e MARIADB_PASSWORD=contributte -e MARIADB_USER=contributte -e MARIADB_DATABASE=contributte mariadb:10.4
```
Or use make task, `make docker-mariadb`.
3) Custom configuration file is located at config/local.neon
. Edit it if you want.
Default configuration should look like this. Pick PostgreSQL or MariaDB.
# Host Config
parameters:
# Database
database:
# Postgres
driver: pdo_pgsql
host: database
dbname: contributte
user: contributte
password: contributte
port: 5432
# MariaDB
driver: pdo_mysql
host: database
dbname: contributte
user: contributte
password: contributte
port: 3306
4) 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.
Run NETTE_DEBUG=1 bin/console doctrine:fixtures:load --append
to create first user(s).
Or via task make build
.
5) 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 task make dev
.
6) Open http://localhost and enjoy!
Take a look at:
1) At first, use composer to install this project.
composer create-project -s dev contributte/apitte-skeleton
2) Modify config/local.neon
and set host to postgres
or mariadb
Default configuration should look like this. There is preconfigured database. Pick PostgreSQL or MariaDB.
# Host Config
parameters:
# Database
database:
# Postgres
driver: pdo_pgsql
host: database
dbname: contributte
user: contributte
password: contributte
port: 5432
# MariaDB
driver: pdo_mysql
host: database
dbname: contributte
user: contributte
password: contributte
port: 3306
3) Run docker-compose up
4) Open http://localhost and enjoy!
Take a look at:
Since we have OpenAPI specification available at /api/public/v1/openapi/meta
you just need to add UI for it (e.g. to www/doc
directory or as a standalone application).
Available options are:
Here is a list of all features you can find in this project.
app
config
- configuration files
env
- prod/dev/test environmentsapp
- application configsext
- extensions configslocal.neon
- local runtime configlocal.neon.dist
- template for local configdomain
- business logic and domain specific classesmodel
- application backbonemodule
- API moduleresources
- static content for mails and othersbootstrap.php
- Nette entrypointbin
- console entrypoint (bin/console
)db
- database files
fixtures
- PHP fixturesmigrations
- migrations filesdocs
- documentationvae
log
- runtime and error logstmp
- temp files and cachetests
- test engine and many cases
tests/cases/E2E
- PhpStorm's requests files (api.http
)tests/cases/Integration
tests/cases/Unit
vendor
- composer's folderwww
- public contentTake a detailed look :eyes: at each single package.
Doctrine
Nette
Symfony
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.