Rapid Build Studio
← Back to portfolio
Starter · $499

RunUp

A pickup sports platform where players discover games, hosts create runs in minutes, and everyone can manage sessions without back-and-forth chat chaos.

A walkthrough of the product

Below is a tour in plain language—each panel is something we actually shipped. Screens are from a demo environment so you can see the UI without exposing a real customer.

RunUp registration form with full name, email, password, skill level, and location fields.

Step 1 of 5

Fast player onboarding

New users can register quickly with practical profile details (skill level and location) that help matchmaking right away.

What you get here

  • Simple register flow with clear field hierarchy
  • Skill-level selection baked into onboarding
  • Session-ready account creation for immediate browsing
RunUp login screen with email/password sign-in and demo account option.

Step 2 of 5

Low-friction login with demo access

Returning players can sign in fast, and first-time visitors can use a demo account to explore before committing.

What you get here

  • Email/password auth with session check support
  • Demo-access CTA for product exploration
  • Clear conversion paths between sign-in and join
Browse runs page with sport pills, search field, date filter, and empty-state message.

Step 3 of 5

Browse and filter runs by intent

Players can scan available games by sport, keyword, and date, with empty states that guide action when no matches exist.

What you get here

  • Filters for sport/date/search in one screen
  • List-first UX designed for quick decision making
  • Helpful loading and empty-state messaging
Create run form with sport selector, location, date/time, max players slider, and optional description.

Step 4 of 5

Create-a-run flow for hosts

Hosts can publish new pickup games with the details players care about: sport, location, time, capacity, and expectations.

What you get here

  • Structured run creation with validation-friendly inputs
  • Capacity control via max-players slider
  • Optional description for skill level and logistics notes
Profile page showing user summary plus runs created and runs joined sections.

Step 5 of 5

Profile hub for activity history

Each user has a single view of personal stats, created runs, and joined runs, making participation history easy to track.

What you get here

  • Separate sections for created vs joined runs
  • User-level summary stats at the top
  • Quick CTAs to create a run or browse runs

The bigger picture

If you’re skimming for capabilities, here’s the same product summarized as feature-sized bites—no jargon for its own sake.

User authentication and session checks

Register, login, logout, and current-user session validation are wired so protected actions always map to a real account context.

Run discovery with practical filtering

Players can browse runs and narrow results by sport, date, and text search to find relevant games quickly.

Run details and player visibility

Each run has a details view where players can inspect key info and see participant lists before joining.

Join and leave protections

The join flow prevents duplicate joins and over-capacity enrollment, while leave actions keep the roster accurate.

Host-side run controls

Run creators can manage ownership actions, including deleting their own runs when plans change.

Platform and profile stats

The product surfaces totals for runs, players, active sports, and upcoming games, plus user-level created/joined activity.

How we framed the build

The short version of why it existed, how we tackled it, and where it landed.

The problem

Pickup sports usually happen in scattered group chats, where finding players, tracking capacity, and confirming details is messy. The product needed one straightforward flow from discovery to commitment.

What we did

We focused on a practical MVP: authenticated users, clean run creation, filterable browsing, reliable join/leave mechanics, and profile-level visibility. UX emphasized speed, empty-state guidance, and confidence in each action.

Where it is now

RunUp ships the core loop end to end: users can sign in, discover runs, create games, join or leave safely, and track activity through profile and platform stats. The result is a usable foundation ready for growth features.

Built with

ReactTypeScriptNode.jsExpressPostgreSQLTailwind CSS

Want something like this?

Tell us what you're building and we'll scope the right tier for you.