Skip to content

lin826/cursor-boston

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,741 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Cursor Boston logo Cursor Boston

The hub for Boston's AI-powered development community.
Built by builders, for builders, using Cursor.

OpenSSF Best Practices Gold

CI Codecov OpenSSF Scorecard REUSE status Latest release PRs Welcome Discord Luma Events Node >= 22 License: GPL v3


πŸš€

New here? Never coded before? Start here.

You don't need to know how to code. AI tools like Cursor, Claude Code, and Codex can do the technical work for you. We wrote a step-by-step guide in plain, simple language β€” no jargon, no experience required.

Read the Get Started Guide β†’


πŸ™οΈ What is Cursor Boston?

Cursor Boston is a community-led platform designed to bring together the most ambitious developers, students, and founders in the Boston area. We focus on AI-native development workflowsβ€”leveraging tools like Cursor to ship production code at the speed of thought.

🧩 Major programs

  • Summer Cohort β€” 5-week intensive fellowship; weekly submissions land in long-lived submission branches (c1w*-submission, c2w*-submission).
  • Hackathons β€” monthly virtual + in-person events with team formation, submission gallery, and AI-judged scoring (Hack-a-Sprint, Sports Hack, PyData notebooks).
  • Generals β€” a persistent turn-based strategy MMO contributors can play and contribute to. Includes Heroes, Armageddon end-game, public profiles, pacts, prophecies, and a public-vote chronicle system. Game contribution docs live under docs/generals/.
  • Mentorship & Pair Programming β€” matchmaking between members.
  • Talks & Showcase β€” community presentations + project gallery.
  • Questions β€” community Q&A on Cursor workflows, prompting patterns, and engineering process.

🎯 Who is this for?

  • 🌱 Beginners & Students: Pick up AI-assisted development from day one β€” no experience required.
  • πŸ’Ό Interns & Early-Career Devs: Level up fast by building real features with real tools.
  • πŸ’» Working Developers: Sharpen your workflow, contribute to open source, and connect with peers.
  • 🧠 Senior Engineers & Experts: Mentor others, shape the project, and push the boundaries of AI-native development.
  • πŸš€ Founders & Indie Hackers: Prototype MVPs in hours and validate ideas fast.
  • 🎨 Designers & PMs: Bridge the gap between design and production code.

Whether you're writing your first line of code or your ten-thousandth β€” if you care enough to open Cursor and do some work, you belong here.


πŸ› οΈ The Build Stack

This platform is a living example of what you can build with Cursor and modern web tech:

  • Frontend: Next.js 16 (App Router), Tailwind CSS, TypeScript
  • Backend: Firebase (Auth, Firestore, Storage)
  • Integrations: Discord/GitHub OAuth, Luma API, Framer Motion

πŸ—οΈ Architecture

graph TB
    subgraph Client["Browser"]
        UI["Next.js 16 App Router<br/>(React + Tailwind CSS)"]
        Auth["Firebase Auth<br/>(Email, Google, GitHub)"]
    end

    subgraph Vercel["Vercel"]
        Pages["Pages & Layouts<br/>(SSR / Static)"]
        API["API Routes<br/>(214+ endpoints)"]
        MW["Middleware<br/>(CSRF, Rate Limit, Logging)"]
    end

    subgraph Firebase["Firebase"]
        Firestore["Cloud Firestore<br/>(Users, Events, Posts, Teams)"]
        Storage["Cloud Storage<br/>(Avatars, Uploads)"]
    end

    subgraph External["External Services"]
        Discord["Discord OAuth + Webhooks"]
        GitHub["GitHub OAuth + Webhooks"]
        Luma["Luma Events"]
        Mailgun["Mailgun Email"]
        Leaflet["CARTO + Leaflet Maps"]
    end

    UI --> Pages
    UI --> Auth
    Auth --> Firestore
    Pages --> API
    API --> MW
    MW --> Firestore
    MW --> Storage
    API --> Discord
    API --> GitHub
    API --> Mailgun
    UI --> Luma
    UI --> Leaflet
Loading

πŸš€ Build Something

Want to add a major feature to the platform? We have 6 open feature projects ready for contributors to claim and build:

# Feature Issue
1 Prompt & Rules Cookbook β€” share and discover Cursor workflows #78
2 Achievement Badge System β€” gamified milestones for community activity #79
3 AI Pair Programming Matchmaker β€” find your coding partner #80
4 Public Community Analytics Dashboard β€” visualize community growth #81
5 Interactive Community Event Map β€” Boston venues on a live map #82
6 Lightning Talk Timer & Speaker Queue β€” real-time event tool #83

Each feature is fully isolated β€” new routes, new Firestore collections, no entanglement with existing code. Pick one, comment to claim it, and ship it. See the Contributing Guide for how to get started.

Looking for something smaller? Browse good first issue for beginner-friendly tasks. Issues tagged maintainer:audit are internal maintainer review work β€” not for new contributors; you can safely ignore that label.

Where does my PR go? Most contributions target develop (the default base). A few β€” PyData notebooks, summer cohort weekly submissions, game content, maintainer applications β€” target dedicated long-lived branches instead. See docs/SUBMISSION_BRANCHES.md for the routing table.


πŸ”Œ API Reference

  • Full endpoint list: docs/API.md β€” 215 operations across 32 areas
  • Live Swagger UI: /api/docs (or http://localhost:3000/api/docs in dev)
  • OpenAPI 3.0 spec: served at /openapi.json, regenerated by npm run generate:openapi on every build
  • Per-area contracts live in lib/api-schemas/ and use @ts-rest/core + zod. Each route validates its inputs against the same schema the spec is generated from, so docs and code can't drift.
  • Adding a new route: define the contract in lib/api-schemas/<area>.ts, register it in lib/api-schemas/index.ts, then validate inputs via contract.<route>.body.safeParse(...) in your route handler. The CI gate (npm run check:route-contracts) blocks any new route under app/api/ that doesn't import a contract.

πŸ“š Community

Which onboarding doc do I read?

If you… Read this Time
Have never coded before GET_STARTED.md β€” uses AI tools, plain language ~30 min
Know git, want the shortest path to a merged PR CONTRIBUTING.md Β§ Your first PR in 5 minutes ~5 min
Want a guided first-PR walkthrough with explanations FIRST_CONTRIBUTION.md ~30–45 min
Want the full contribution policy (issue claiming, code style, review process) CONTRIBUTING.md reference

Full documentation index


πŸƒ Quick Start

  1. Fork, then clone your fork

    git clone https://github.com/your-username/cursor-boston.git
    cd cursor-boston
  2. Install & run (no Firebase account needed)

    npm install
    cp .env.local.demo .env.local    # zero-config demo mode
    npm run dev                       # open http://localhost:3000

The site loads fully in demo mode β€” pages, layouts, and styling all work. Firebase features (auth, data) are disabled until you set up credentials.

Want full functionality? See docs/DEVELOPMENT.md for Firebase setup, all npm scripts, troubleshooting, and more.

First time contributing? See docs/FIRST_CONTRIBUTION.md for a step-by-step walkthrough.

🐳 Docker

A production-ready multi-stage Dockerfile is available at docker/Dockerfile:

# Build the image (pass Firebase config as build args)
docker build -f docker/Dockerfile \
  --build-arg NEXT_PUBLIC_FIREBASE_API_KEY=your-key \
  --build-arg NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your-domain \
  --build-arg NEXT_PUBLIC_FIREBASE_PROJECT_ID=your-project \
  --build-arg NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your-bucket \
  --build-arg NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your-id \
  --build-arg NEXT_PUBLIC_FIREBASE_APP_ID=your-app-id \
  --build-arg NEXT_PUBLIC_FIREBASE_DATABASE_URL=your-db-url \
  --build-arg UNSUBSCRIBE_SECRET=build-only-placeholder-secret-32-bytes \
  -t cursor-boston .

# Run the container with the real runtime signing secret
docker run -p 3000:3000 \
  -e UNSUBSCRIBE_SECRET="$(openssl rand -hex 32)" \
  cursor-boston

The image uses Node 22 Alpine, runs as a non-root user, and includes a health check at /api/health.


🧰 Operations

Rate-limit cleanup (internal maintenance)

Run the internal apiRateLimits cleanup endpoint from this repo:

CRON_SECRET=your-secret npm run rate-limit-cleanup

Optional environment variables:

  • RATE_LIMIT_CLEANUP_BASE_URL (default: http://localhost:3000)
  • RATE_LIMIT_CLEANUP_DRY_RUN (true for no-delete simulation)
  • RATE_LIMIT_CLEANUP_BATCH_SIZE (clamped to 1-500)
  • RATE_LIMIT_CLEANUP_MAX_BATCHES (clamped to 1-20)

Examples:

# Dry run against production URL
CRON_SECRET=your-secret RATE_LIMIT_CLEANUP_BASE_URL=https://cursorboston.com RATE_LIMIT_CLEANUP_DRY_RUN=true npm run rate-limit-cleanup

# Real cleanup with tighter bounds
CRON_SECRET=your-secret RATE_LIMIT_CLEANUP_BATCH_SIZE=200 RATE_LIMIT_CLEANUP_MAX_BATCHES=3 npm run rate-limit-cleanup

πŸ—ΊοΈ Roadmap

  • v0.1: Initial Community Hub & Event Tracking
  • v0.2: Enhanced Member Profiles & Social Integration
  • v0.3: Community Discussion Boards
  • v0.4: PWA & Mobile Optimization

See the full roadmap β€” including active development, planned work, and where to find issues to pick up β€” in .github/ACTIVE_ISSUES.md.

Maintained by @rogerSuperBuilderAlpha (Project Lead), @bradAGI (Maintainer), @nebullii (Maintainer), and @AaronGrace978 (Community Maintainer) β€” see MAINTAINERS.md for area ownership.


Made with ❀️ in Boston.
Join us on Discord or Luma.

About

The hub for Boston's AI-powered development community. Built with Next.js, Firebase, and TypeScript.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 63.0%
  • Jupyter Notebook 25.5%
  • JavaScript 6.5%
  • Python 4.4%
  • Markdown 0.4%
  • Shell 0.1%
  • Other 0.1%