Skip to content

ArduinoDayPhilippines/activity-map

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ—ΊοΈ Activity Map

A smart capacity management and virtual queuing system for Arduino Day Philippines 2025

Activity Map is a real-time web application designed to optimize crowd flow and venue navigation. Unlike standard event maps, this system acts as a traffic control engine, intelligently managing booth capacity by distinguishing between pre-scheduled visitors and walk-in attendees.

Next.js React TypeScript Tailwind CSS


🎯 Overview

Activity Map integrates directly with the event's registration system to provide a seamless experience for attendees and organizers. It solves the problem of overcrowding by implementing a Dual-Priority Queue System:

  • πŸš€ Priority Access: Users with a pre-booked itinerary for a specific time/section are granted immediate entry.

  • ⏳ Virtual Walk-in Queue: Users without a booking can join a digital waitlist when a section reaches capacity, freeing them to roam the venue instead of standing in line.

  • πŸ“Š Live Capacity Tracking: Real-time monitoring of section occupancy driven by physical entry/exit scans.

  • 🀝 Shared Identity: No new accounts requiredβ€”attendees log in simply by scanning their existing Registration QR code.

Whether you are an attendee checking your itinerary or a guard managing section entry, Activity Map ensures the right people get to the right place at the right time.

πŸ“Œ Table of Contents


οΏ½ System Documentation

We maintain detailed documentation for the system architecture, logic flows, and database schema in the docs/ folder.

Document Description
πŸ—οΈ System Architecture High-level system overview, component breakdown, and integration points.
πŸ”„ Application Flowchart Detailed logic flow from authentication to queue management.
πŸ’Ύ Database Schema (ERD) Entity relationship diagrams and table definitions.

οΏ½πŸ›  Tech Stack

Next.jsΒ  ReactΒ  Tailwind CSSΒ  TypeScriptΒ 


πŸš€ Getting Started

Prerequisites

Ensure you have the following installed:

  1. Create a New folder where you can store the project file to be referred as the Project Folder

  2. Open command prompt, change current directory to as the Project Folder

cd <PATH TO PROJECT FOLDER>
  1. Clone the repository, add . on the end to extract files to current directory.
git clone https://github.com/ArduinoDayPH2025/activity-map.git .
  1. Install dependencies
npm install
  1. Run the development server:
npm run dev

Open http://localhost:3000 with your browser to see the result.


πŸ“ Project Structure

πŸ“¦ Activity Map
β”œβ”€β”€ πŸ“‚ .next
β”œβ”€β”€ πŸ“‚ node_modules
β”œβ”€β”€ πŸ“‚ public               # Static assets
β”œβ”€β”€ πŸ“‚ src
β”‚   β”œβ”€β”€ πŸ“‚ app              # Next.js app directory (routing & pages)
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ components   # Reusable UI components
β”‚   β”‚   β”‚   β”œβ”€β”€ πŸ“‚ features # Feature-specific components
β”‚   β”‚   β”‚   └── πŸ“‚ ui       # Generic, reusable UI components
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ context      # Global state management (React context)
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ lib          # Utility functions and helpers
β”‚   β”‚   └── πŸ“‚ types        # TypeScript types and interfaces
β”œβ”€β”€ .gitignore
β”œβ”€β”€ eslint.config.mjs
β”œβ”€β”€ next-env.d.ts
β”œβ”€β”€ next.config.ts
β”œβ”€β”€ package.json
β”œβ”€β”€ postcss.config.mjs
β”œβ”€β”€ README.md               # Project documentation
β”œβ”€β”€ tailwind.config.ts      # Tailwind CSS configuration
β”œβ”€β”€ tsconfig.json           # TypeScript configuration
β”œβ”€β”€ .prettierrc.json        # Prettier configuration
β”œβ”€β”€ package-lock.json


Issue & Project Workflow

We use GitHub Projects to manage tasks and issues. Follow these steps when working on issues:

1. Find an Issue

  • Go to the GitHub Issues page.
  • Assign issue to yourself.
  • Move the issue to "In Progress" in the project board.

2. Create a Branch

3. Submit a Pull Request (PR)

  • Reference the issue in the PR description (e.g., Closes #123).
  • Move the issue to "Review" in the project board.

4. Code Review & Merge

  • Once approved, the PR gets merged into develop.
  • The issue is moved to "Done."

Branching & Git Workflow

Branch Naming Convention

Branch Type Naming Convention Example
Main main main
Development dev dev
Feature feature/ISSUE-ID-feature-name feature/123-add-auth
Bugfix bugfix/ISSUE-ID-issue-name bugfix/234-fix-footer
Hotfix hotfix/ISSUE-ID-critical-fix hotfix/345-fix-login

1. Switch to develop branch

git checkout dev
git pull origin dev

2. Create a feature branch linked to an issue

git checkout -b feature/ISSUE-ID-feature-name

Example:

git checkout -b feature/123-add-login-auth

3. Make your changes in the code

4. Once you're done with your changes, commit

git add .
git commit -m "feat(auth): add login authentication (Closes #123)"

5. Push to remote branch

git push origin feature/ISSUE-ID-feature-name

6. Create a pull request (PR)

  • Go to GitHub
  • Open a new PR from feature/ISSUE-ID-feature-name β†’ develop
  • Use the PR Template below

Commit Message Guidelines

Commit Message Format

<type>(<scope>): <description>

Allowed Commit Types

This project follows Conventional Commits.

Type Description
feat A new feature
fix A bug fix
docs Documentation changes
style Code style changes (formatting, etc.)
refactor Code changes that neither fix a bug nor add a feature
perf Performance improvements
test Adding or modifying tests
chore Maintenance and other minor tasks

Examples

git commit -m "feat(auth): add user authentication with JWT "
git commit -m "fix(navbar): resolve mobile responsiveness issue "
git commit -m "docs(readme): update contribution guide "

πŸ“‹ Pull Request Guidelines

PR Title Format:

<type>(<scope>): <short description>

Example

feat(auth): add user login functionality
fix(navbar): resolve mobile responsiveness issue

PR Description Template

✨ What’s New?
- [x] Briefly explain what was added

πŸ“· Screenshots of website (IMPORTANT)
_Add relevant screenshots/gifs_

πŸ”— Related Issues
Closes #ISSUE_NUMBER

βœ… Checklist (from issue)
- [ ] Code follows project conventions
- [ ] Linted & formatted
- [ ] Tested locally

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors