Skip to content

prazgaitis/march-fit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

338 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

March Fit

March Fit is a fitness challenge platform for hosting multi-week challenges with activities, points, and leaderboards. The hosted service runs at march.fit.

This repository contains the full source (web app + backend). Contributions are welcome — see CONTRIBUTING.md.

Features

  • Challenges — create time-boxed fitness challenges with custom activity types and scoring rules
  • Activity logging — participants log activities manually or sync from Strava
  • Points & streaks — configurable point values per activity type with streak bonuses
  • Leaderboards — real-time rankings updated as activities come in
  • Community feed — see what other participants are up to
  • Strava sync — automatic activity import via Strava webhooks
  • Payments — optional Stripe integration for paid challenges
  • Admin tools — challenge management, activity moderation, and Strava preview

Tech Stack

  • Frontend — Next.js 16, React 19, Tailwind CSS, shadcn/ui
  • BackendConvex (serverless database + functions)
  • Auth — Better Auth with @convex-dev/better-auth adapter
  • Monorepo — pnpm workspaces + Turborepo

Quick Start

Prerequisites

Setup

git clone https://github.com/prazgaitis/march-fitness-2026.git
cd march-fitness-2026
pnpm install
cp .env.example .env.local   # fill in required values
pnpm convex:start        # start local Convex containers (make sure Docker or similar is running)
pnpm convex:admin-key    # generate admin key → .env.local
pnpm dev

The dev server runs:

See docs/hosting.md for full self-hosting details.

Documentation

Repository Layout

apps/web/            Next.js frontend
packages/backend/    Convex functions + schema
packages/cli/        Bun CLI (`mf`) for HTTP API usage
scripts/             Maintenance & seed scripts
docs/                Architecture and hosting guides

CLI

Run the March Fit CLI with:

./mf --help

Configure API base URL and default challenge:

./mf config set --base-url https://<deployment>.convex.site --challenge <challengeId>

Install mf into your shell PATH (one-time):

pnpm mf:install
mf --help

AI-Assisted Development

This repo includes a CLAUDE.md with project conventions, commands, and architecture context for use with Claude Code and other AI coding tools.

Roadmap

See ROADMAP.md.

Contributing

See CONTRIBUTING.md for development setup, conventions, and the PR process.

License

MIT

About

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages