MeetDown is a MeetUp clone project for learning purposes. The focus is on advanced software development concepts like TDD, DDD, Hexagonal Architecture and CQRS.
- PHP 8.0
- Nginx 1.21
- MariaDB 10.6
- Elasticsearch 7.14
- Docker
- Docker-Compose
- Free ports on host as defined in
.env
-
Clone this repository:
git clone [email protected]:thled/meetdown.git
-
Change to project directory:
cd meetdown
-
Copy .env for Docker-Compose:
cp .env.dist .env
-
Build and start the docker containers:
docker-compose up -d
-
Initialize the app:
docker-compose exec app composer bootstrap
-
Access the application: http://localhost:80
-
SSH into container:
docker-compose exec app sh
-
Manage DB with Adminer: http://localhost:8080
-
Start docker container:
docker run --network meetdownnet -p 8080:8080 -e ADMINER_DESIGN='dracula' adminer
-
System:
MySQL
-
Server:
db
-
Username:
db
-
Password:
db
-
Database:
db
-
To ensure a high quality of the code base different tools are used to analyse, lint and fix code which does not adhere to the standards (PSR, Symfony etc.).
-
PHP-CS-Fixer (lint):
rl
-
PHP-CS-Fixer (fix):
rf
-
Deptrac/Psalm/PHPStan:
ra
-
Continues Integration:
rc
-
Run whole test suite:
rt
-
Run test watcher:
rw
Please do contribute! Issues and pull requests are welcome.