Quizzy is a backend project built on a Docker-based infrastructure for the Symfony web framework, with FrankenPHP and Caddy inside. It provides a powerful backend environment to create, manipulate, and respond to quizzes.
- Create and manage quizzes
- Respond to quizzes
- API documentation available at
/api/doc
To run Quizzy, follow these steps:
-
Environment Setup: Create a file named
.env.local
and set your database URL:DATABASE_URL="postgresql://app:!ChangeMe!@127.0.0.1:5432/quizzy?serverVersion=16&charset=utf8"
-
Use
make start
to launch the Docker environment. Database Schema: Connect to the Docker container with make sh and run the following commands: -
Connect to the Docker container with
make sh
and run the following commands:
# Create the database schema
php bin/console doctrine:migrations:migrate
# Load fixtures
php bin/console doctrine:fixtures:load
We use Insomnia to test API endpoints. You can import the Insomnia configuration from the .insomnia
folder. Here's how to import in Insomnia.
For local development, you can add a TLS certificate to avoid security warnings. Refer to the Caddy TLS guide for more information.
To stop and clean up the Docker environment, use:
docker compose down --remove-orphans
This project is licensed under the MIT License.
Contributions are welcome! Please create issues or submit pull requests on our GitHub repository.
If you have any questions or need support, you can reach us through our GitHub repository.