Backend service for Eventful – a ticketing platform that connects event creators and attendees. Built as a capstone project for the AltSchool Backend Engineering (NodeJS) Diploma Karatu 2025.
- Runtime: Node.js + TypeScript
- Framework: Express
- Database: PostgreSQL (Supabase) + Prisma ORM
- Caching & Rate Limiting: Redis
- Payments: Paystack
- Authentication: JWT (access + refresh tokens)
- Testing: Jest + Supertest
- Docs: Postman / Swagger
- User authentication & role‑based access (Creator / Attendee)
- Event creation, listing, and management
- QR code ticket generation & verification
- Paystack payment integration
- Customizable event reminders (creator & attendee)
- Analytics dashboard for event creators
- Social media shareability
- Node.js ≥ 18
- PostgreSQL database (local or Supabase)
- Redis instance (local or cloud)
- Paystack test keys
-
Clone the repo
git clone https://github.com/devGeorgeOwi/eventful-api.git cd eventful-api -
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env
Fill in your DATABASE_URL, JWT_SECRET, PAYSTACK_SECRET_KEY, REDIS_URL, etc.
-
Run database migrations
npx prisma migrate dev
-
Start the development server
npm run dev
- Interactive Postman collection: [Link here once deployed]
- Swagger UI (coming soon)
The API is deployed on [Render / Railway] at:
https://eventful-api.onrender.com
- George Owoicho - www.linkedin.com/in/georgetechnmore
This project is licensed under the MIT License – see the LICENSE file for details.