This website was developed for Centr'All Games, the board game association of the École Centrale de Lille.
It showcases the association’s activities, lists available games, and allows members to explore rules and information for each game.
Administrators can also manage game borrowing directly from the admin interface.
The site can be deployed easily using Docker by building and publishing an image from the provided Dockerfile.
To spin up this project locally, follow these steps:
- First clone the repo if you have not done so already
cd cag && cp .env.example .envto copy the example environment variables. For thePAYLOAD_SECRETcopy the output ofopenssl rand -hex 16 | cut -c1-24. Also add relevant values forSMTP_HOSTandSMTP_PORT. If your production and development environment need different environment variables, create a.env.localfor development only variables.- Set up a local smtp server (for example fake-smtp-server) and modify local environment variables according. You can activate SMTP authentication by uncommenting auth related properties in
src/payload.config.tsand by adding the relevant environment variables npm install && npm run devto install dependencies and start the dev server- Open
http://localhost:3000to open the app in your browser
That's it! Changes made in ./src will be reflected in your app. Go to http://localhost:3000/admin to login and create your first admin user.
When pushing on main, a github workflow pushes the application's image to this repository packages.
This project uses SQLite for simplicity.
If you wish to switch to another database, refer to the Payload documentation: https://payloadcms.com/docs/database/overview After changing the database adapter, remember to update:
- Dockerfile
- src/payload.config.ts
- .env