Insert bullets description of the project if available.
Give a short introduction of your project. Let this section explain the objectives or the motivation behind this project.
Contributing | Built with | Repos and projects | Deployment | Feedback | License | About Code for Romania
This project is built by amazing volunteers and you can be one of them! Here's a list of ways in which you can contribute to this project. If you want to make any change to this repository, please make a fork first.
Help us out by testing this project in the staging environment. If you see something that doesn't quite work the way you expect it to, open an Issue. Make sure to describe what you expect to happen and what is actually happening in detail.
If you would like to suggest new functionality, open an Issue and mark it as a [Feature request]. Please be specific about why you think this functionality will be of use. If you can, please include some visual description of what you would like the UI to look like, if you are suggesting new UI elements.
Mention all related repos and projects.
This project uses Laravel Sail, Laravel's Docker development environment.
Initial setup:
# 1. Install composer dependencies
docker run --rm -v ${PWD}:/app -w /app composer:latest composer install --ignore-platform-reqs --no-scripts --no-interaction --prefer-dist --optimize-autoloader
# 2. Copy the environment variables file
cp .env.example .env
# 3. Start the application
./vendor/bin/sail up -d
# 4. Install npm dependencies and build frontend assets
./vendor/bin/sail npm ci
./vendor/bin/sail npm run build
# 5. Generate the app secret key
./vendor/bin/sail artisan key:generate
# 6. Migrate and seed the database
./vendor/bin/sail artisan migrate:fresh --seedDay-to-day:
./vendor/bin/sail up -d
./vendor/bin/sail npm run devThe app runs at http://localhost. Mailpit is available at http://localhost:8025.
If ports 80 or 5173 are already in use, set alternate values in .env (e.g. APP_PORT=8888, VITE_PORT=5174) before running sail up.
The production image is built from code4romania/php:8.4 using a multi-stage Dockerfile. Images are published to Docker Hub as code4romania/cpc on pushes to main and version tags.
Build locally:
docker build -t code4romania/cpc:local \
--build-arg VERSION=dev \
--build-arg REVISION=local .On Apple Silicon, the base image is linux/amd64 only — add --platform linux/amd64 when building locally. CI publishes the amd64 image automatically.
Run locally (smoke test):
docker run -p 8080:8080 --env-file .env code4romania/cpc:localThe container listens on port 8080 and exposes a healthcheck at /up.
./vendor/bin/sail artisan test --compact- Request a new feature on GitHub.
- Vote for popular feature requests.
- File a bug in GitHub Issues.
- Email us with other feedback contact@code4.ro
This project is licensed under the MPL 2.0 License - see the LICENSE file for details
Started in 2016, Code for Romania is a civic tech NGO, official member of the Code for All network. We have a community of around 2.000 volunteers (developers, ux/ui, communications, data scientists, graphic designers, devops, it security and more) who work pro-bono for developing digital solutions to solve social problems. #techforsocialgood. If you want to learn more details about our projects visit our site or if you want to talk to one of our staff members, please e-mail us at contact@code4.ro.
Last, but not least, we rely on donations to ensure the infrastructure, logistics and management of our community that is widely spread across 11 timezones, coding for social change to make Romania and the world a better place. If you want to support us, you can do it here.