Project Plan - bounswe/bounswe2026group11 GitHub Wiki

Project Plan

Project Overview

Social Event Mapper is a map-based platform developed as part of CmpE 354 – Software Engineering (Spring 2026) by Group 11. The platform enables users to discover, create, and manage social events in their area. The project follows a two-milestone delivery plan with a full-stack architecture spanning a Go backend, React web frontend, and React Native mobile app.


Tools & Technologies

Layer Technology
Backend Go, Fiber, PostgreSQL + PostGIS
Web Frontend React, MapLibre GL JS
Mobile React Native, Expo
Infrastructure Docker, Nginx, DigitalOcean, GitHub Actions
API Docs OpenAPI 3.1 (Swagger UI)
Version Control GitHub (monorepo)
Communication WhatsApp, Google Meet, GitHub Issues & PRs

Milestone 1: MVP

Deadline: April 7, 2026

Features Delivered

Authentication & Session Management

  • User registration with email OTP verification
  • Login with username and password
  • JWT-based session with refresh token rotation (15-min access token, 14-day refresh token)
  • Forgot password flow with OTP reset
  • Logout with refresh token revocation

Event Management

  • Create events with title, description, category, location, date/time, capacity, privacy level, and cover image
  • Event discovery with search, filters (category, location radius, time), and pagination
  • Event detail page with host info, participant count, and ratings
  • Public join flow and protected join request flow (host approval)
  • Leave event, cancel event (host), and rejoin after pre-start leave
  • Event lifecycle: ACTIVE → IN_PROGRESS → COMPLETED / CANCELED
  • Auto-expiry background job for stale and max-duration events

User Profile

  • View and edit profile (display name, bio, avatar, gender, birth date, default location)
  • Avatar upload via DigitalOcean Spaces with CDN-backed direct upload
  • Host score, participant score, and final score display
  • My Events page (organized, upcoming, completed, canceled tabs)

Favorites

  • Save and unsave events
  • Manage up to 3 favorite locations (CRUD)

Infrastructure

  • Dockerized stack with Nginx reverse proxy
  • Automated CI/CD via GitHub Actions (deploy on merge to main)
  • Mobile APK auto-build on release
  • OpenAPI specs for all endpoints

Milestone 2: Final Release

Deadline: May 14, 2026

Planned Features

Ticketing & Check-in

  • Digital ticket issuance upon event approval
  • QR code generation for each ticket
  • Host-side QR scanner for check-in at the event

Notifications

  • In-app notification center
  • Alerts for join requests, approvals, event updates, and cancellations
  • Delivery preference settings

Admin & Moderation

  • Event reporting by participants
  • Admin moderation dashboard (review, remove, ban)
  • Category suggestion and approval workflow

Event Editing

  • Host can update event details post-creation
  • Participant reconfirmation flow for significant changes
  • Changelog tracking per event

Map View

  • Interactive map-based event discovery (web & mobile)
  • Route preview from user location to event

Post-Event

  • Discussion threads per event
  • Organizer reliability scoring
  • Archived event history with filters

Team Structure

Sub-team Members
Backend Mehmet Kaan Ünsel, Mehmet Akif Yıldırım, Utku Yiğit Demir
DevOps Mehmet Kaan Ünsel
Web Frontend Oğuz Özer, Emine Türk
Mobile Cansu Er, Buğra Keser, Sevde Pekköse