eventflow-fullstack-app Tailwind Templates

Eventflow Fullstack App

Full-stack event management platform prototype for EventFlow โ€“ built with React, Tailwind CSS, Node.js, Express, and PostgreSQL. Includes event CRUD, attendee registration, organizer dashboard, JWT auth, audit logs, and engagement scoring. Deployed on cloud platforms.

๐ŸŽŸ๏ธ EventFlow โ€“ Full Stack Event Management Prototype

A streamlined full-stack application for managing event registrations and interactions between organizers and attendees. Built as part of the Full Stack Developer Assignment for EventFlow.


๐Ÿš€ Live Demo


๐Ÿ› ๏ธ Tech Stack

Frontend

  • React.js (with Vite)
  • Tailwind CSS
  • Axios
  • React Router DOM
  • Zustand (for auth state)
  • Socket.IO (for optional real-time notifications)

Backend

  • Node.js + Express.js
  • PostgreSQL (Supabase or Railway-hosted)
  • JWT (Authentication)
  • bcrypt.js (Password hashing)
  • dotenv (for environment configuration)

Deployment

  • Frontend: Vercel
  • Backend: Render
  • Database: Supabase / Railway PostgreSQL

๐Ÿ“Œ Features

Attendee Features

  • Mocked email-based login/register
  • Browse upcoming events
  • Register/Unregister from events
  • View their registered events

Organizer Features

  • Mocked login with role-based access
  • Create, edit, and delete events
  • View attendee list for each event
  • View event engagement score

Additional Features

  • Engagement Scoring System:

    • Number of Registrations (0-2 points)
    • Attendance Confirmation Rate (0-2 points)
    • Organizer Responsiveness (0-1 point)
    • Attendee Feedback (mocked) (0-1 point)
  • Audit Logging:

    • Tracks actions like login, registration, event creation, etc.
  • Security:

    • JWT-based authentication
    • Passwords hashed with bcrypt
    • Sensitive data encrypted
  • Real-Time Notifications (Optional):

    • Socket.IO updates on registration/unregistration

๐Ÿงพ Database Schema

Tables

  • attendees(id, email, password_hash)
  • organizers(id, email, password_hash)
  • events(id, title, description, date, organizer_id)
  • registrations(id, event_id, attendee_id, attended)
  • feedback(id, event_id, attendee_id, score)
  • audit_logs(id, timestamp, action, actor_email, actor_role)

Full schema SQL in server/db/schema.sql


๐Ÿ“ฆ API Endpoints

Authentication

  • POST /api/login โ€“ mocked login, returns JWT

Events

  • GET /api/events โ€“ list all events
  • POST /api/events โ€“ create event (organizer only)
  • PUT /api/events/:id โ€“ edit event
  • DELETE /api/events/:id โ€“ delete event

Registration

  • POST /api/events/:id/register
  • DELETE /api/events/:id/unregister

Organizer Dashboard

  • GET /api/organizer/:id/events โ€“ view all events by organizer
  • GET /api/events/:id/attendees โ€“ view attendee list for an event

Scoring & Audit

  • GET /api/events/:id/score
  • GET /api/audit-logs โ€“ all actions (admin/debug)

๐Ÿ” Authentication & Security

  • Mocked authentication based on email (for testing/demo)
  • JWT tokens for secure access
  • bcrypt hashing for passwords
  • Basic role-based authorization for routes
  • Sensitive information encrypted
  • Audit logging for all key actions

Top categories

Loading Svelte Themes