Eventify API is a powerful, Dockerized backend built with NestJS for managing events, users, and registrations.
It provides secure authentication, efficient database integration, and CI/CD automation β ideal for both small and enterprise-scale event platforms.
Eventify provides the backbone for your event management ecosystem.
It enables users to create, discover, and register for events, manage profiles, and authenticate securely via JWT.
Built on NestJS and MongoDB, itβs fully containerized for scalability and CI/CD-ready.
- π User Authentication β Secure JWT-based login and registration.
- ποΈ Event Management β Create, edit, and explore events effortlessly.
- π§© Database Integration β Seamless data persistence via Mongoose.
- βοΈ Cloud Storage (AWS S3) β Secure upload and retrieval of event images with automatic URL generation.
- π³ Dockerized Architecture β Ready-to-deploy image for any environment.
- βοΈ CI/CD Pipeline β GitHub Actions automate testing, building, and Docker deployment.
| Layer | Technology |
|---|---|
| Framework | NestJS |
| Database | MongoDB (Mongoose) |
| Authentication | JWT |
| Containerization | Docker |
| CI/CD | GitHub Actions |
Ensure you have:
- Docker installed
- Node.js (if running locally)
- A Docker Hub account (for image pushing)
git clone https://github.com/zaiidmo/eventify-api.git
cd eventify-apiCreate a .env file using the provided example:
cp .env.example .envBuild and run the image:
docker build -t eventify-api .Then access the API at http://localhost:3000.
Install dependencies and run the app locally:
npm install
npm run startThis project includes a Dockerfile for quick containerization.
To build your image manually:
docker build -t yourusername/eventify-api:latest .Push to Docker Hub:
docker push yourusername/eventify-api:latestRun all test suites:
npm testTests include unit, integration, and e2e coverage for controllers and services.
Eventifyβs CI/CD pipeline automates testing and Docker image publishing.
The workflow performs the following steps:
- Lint and build the application
- Run automated tests
- Build the Docker image
- Push the image to Docker Hub upon success
You can visualize or edit this under .github/workflows/ci.yml.
Full API reference is generated automatically (Swagger integration recommended).
Once deployed, access docs via:
http://localhost:3000/api/docs
Contributions are always welcome!
To contribute:
- Fork the repo
- Create a branch (
git checkout -b feature-name) - Commit (
git commit -am "Add feature") - Push and open a Pull Request
Refer to CONTRIBUTING.md for contribution guidelines.
- Add event categories & filters
- Integrate payment gateway for premium events
- Deploy production pipeline on AWS ECS
- Add Swagger docs auto-generation
Report any security issues responsibly via email: vlphadev@gmail.com
See SECURITY.md for details.
Licensed under the MIT License β see LICENSE.
Maintained by Zaiid Moumni
π§ Contact: vlphadev@gmail.com
Join discussions and feature ideas in Issues & PRs.
βBuilt with β€οΈ using NestJS β scalable, modular, and open.β