Skip to content

benspak/builders.to

Repository files navigation

Builders.to ๐Ÿš€

A members-only launchpad and community platform for indie hackers and builders. Share your work in progress, track milestones, discover projects, hire verified talent, and grow in an ecosystem of builders who ship.

Join the Community on X

โœจ Features

๐ŸŽฏ Core Platform

  • Project Showcase โ€” Post your work at any stage: Idea โ†’ Building โ†’ Beta โ†’ Launched โ†’ Paused โ†’ Acquired. Free accounts can share up to 3 projects; Pro members get unlimited.
  • Daily Updates Feed โ€” Share what you're building with text, images, GIFs, and YouTube videos
  • Milestone Tracking โ€” Celebrate achievements: v1 shipped, first user, first customer, MRR milestones, profitability, and more
  • Top Builders Ranking โ€” Leaderboard based on launched projects, engagement, and community contribution

๐Ÿค– AI-Powered Content

  • AI Content Generation โ€” Generate posts and updates with GPT-4 Turbo
  • Content Analysis โ€” Get AI suggestions to improve engagement
  • Content Variations โ€” Generate multiple versions of your content
  • Content Ideas โ€” AI suggests post ideas based on your profile and interests
  • DALL-E Image Generation โ€” Create AI images for your posts (Pro feature)

๐Ÿ”— Cross-Platform Posting

  • Twitter/X Integration โ€” Post directly to Twitter with full media support
  • LinkedIn Integration โ€” Share updates to your LinkedIn feed
  • Scheduled Posts โ€” Schedule your content for optimal timing
  • Platform-Specific Optimization โ€” AI tailors content for each platform

๐Ÿข Companies & Startups

  • Company Profiles โ€” Showcase your startup with traction badges, tech stack, and team
  • Team Members โ€” Add co-founders and team with Owner/Admin/Member roles
  • Company Updates โ€” Internal build logs and announcements
  • Traction Badges โ€” Display customer count, revenue range, users, funding stage

๐Ÿ’ผ Opportunity Hub (Job Board)

  • Job Listings โ€” Post full-time, part-time, contract, freelance, cofounder, advisor, and intern roles
  • Categories โ€” Engineering, Design, Product, Marketing, Sales, Operations, Finance, and more
  • Compensation Transparency โ€” Salary ranges, equity, and currency options
  • Remote Filtering โ€” Location-based or remote opportunities

๐Ÿ“ Builders Local

  • Local Builder Network โ€” Find services, jobs, and meet builders in your area
  • Services โ€” Advertise your services for free
  • Categories โ€” Services, Community, Discussion, Coworking/Housing, For Sale
  • No Platform Fees โ€” Sellers keep 100% of their earnings via Stripe Connect
  • Location Discovery โ€” Find builders in your city
  • Map View โ€” Interactive map showing builders and services near you
  • Open Posting โ€” Any builder can post on Local
  • Privacy-First Location โ€” Coordinates offset ~10 miles for privacy

๐Ÿ“… Events & Meetups

  • Host Events โ€” Create in-person meetups, workshops, or virtual events
  • Event Types โ€” Support for physical, virtual, and hybrid events
  • RSVP System โ€” Track attendance with Going, Interested, and Not Going statuses
  • Nearby Events โ€” Discover events within your radius using geolocation
  • Event Comments โ€” Threaded discussions on event pages

๐Ÿ’ฌ Real-Time Chat (Slack/Discord-style)

๐Ÿ—บ๏ธ Nearby Discovery

  • Find Nearby Builders โ€” Discover users within a customizable radius
  • Location-Based Filtering โ€” Filter events, sessions, and users by distance
  • Geolocation Support โ€” Use browser location for automatic nearby search
  • Radius Options โ€” Search within 5, 10, 25, or 50 km

๐Ÿ’ฌ Threaded Conversations

  • Reply Chains โ€” Reply directly to comments creating threaded discussions
  • Nested Replies โ€” Visual indentation for reply threads
  • Reply Notifications โ€” Get notified when someone replies to your comment
  • Works Everywhere โ€” Threaded comments on updates, projects, listings, and events

๐Ÿช™ Token System

  • In-App Currency โ€” Earn tokens through engagement
  • Welcome Bonus โ€” 5 tokens for new signups
  • Referral Rewards โ€” 10 tokens when your referral joins
  • Streak Bonuses โ€” Daily update streaks earn bonus tokens
  • Profile Completion โ€” 10 tokens for completing your profile
  • Token Gifting โ€” Send tokens to support fellow builders

โญ Pro Subscription

  • Pro Monthly โ€” $3.99/month for premium features (currently at intro pricing)
  • Pro Yearly โ€” $39.99/year (save ~17%) (currently at intro pricing)
  • Unlimited Projects โ€” Free accounts can share up to 3 projects; Pro unlocks unlimited
  • Pro Rewards โ€” Earn real money for quality content
  • DALL-E Image Generation โ€” Create AI images for posts
  • Enhanced AI Features โ€” Priority access to AI content tools
  • Pro Badge โ€” Stand out in the community

๐Ÿ”” Notifications & Engagement

  • In-App Notifications โ€” Real-time updates on likes, comments, mentions
  • Push Notifications โ€” PWA support for mobile
  • Daily Digest โ€” Summary of activity on your content
  • Weekly Digest โ€” Platform highlights delivered to email
  • @Mentions โ€” Tag other builders in updates

๐Ÿ‘ค Builder Operating System

  • Profile Flags โ€” Open to Work, Looking for Cofounder, Available for Contract
  • Follow System โ€” Build your network of builders
  • Streak Tracking โ€” Current and longest daily update streaks
  • Public Profiles โ€” SEO-friendly profile pages (builders.to/username)

๐Ÿ“Š Analytics

  • View Tracking โ€” Project views, update views, listing views
  • Click Tracking โ€” Outbound link and contact info clicks
  • Site Statistics โ€” Community-wide metrics

๐Ÿ“ข Advertising

  • Sidebar Ads โ€” Limited to 8 slots platform-wide with dynamic pricing
  • Dynamic Pricing โ€” Price doubles when slots fill up (ensures quality exposure)
  • Impression & Click Tracking โ€” Full analytics dashboard
  • Token Redemption โ€” Use tokens to unlock ad spots

๐Ÿ”’ Security

  • Two-Factor Authentication โ€” TOTP-based 2FA with backup codes
  • Content Reporting โ€” Flag inappropriate content
  • Rate Limiting โ€” Protection against abuse

๐Ÿ› ๏ธ Tech Stack

Category Technology
Framework Next.js 16 (App Router)
Language TypeScript
Runtime React 19
Database PostgreSQL + Prisma ORM 6
Authentication NextAuth.js v5 (Auth.js)
OAuth Providers Twitter/X, GitHub
Magic Link Resend Email
Styling Tailwind CSS
Icons Lucide React
Animation Motion (Framer Motion)
Payments Stripe + Stripe Connect
Push Notifications Web Push API
GIFs Giphy SDK
Image Processing Sharp
2FA OTPAuth + QRCode
Markdown react-markdown
AI OpenAI GPT-4 Turbo + DALL-E 3
Geocoding OpenStreetMap Nominatim
Maps Interactive map components

๐Ÿš€ Getting Started

Prerequisites

  • Node.js 18+
  • PostgreSQL database
  • Twitter/X Developer Application (optional)
  • GitHub OAuth Application (optional)
  • Resend API Key (optional, for magic links)
  • Stripe Account (optional, for payments)
  • Giphy API Key (optional, for GIF search)

1. Clone and Install

git clone https://github.com/your-org/builders.to.git
cd builders.to
npm install

2. Configure Environment Variables

Create a .env file in the root directory:

# Database
DATABASE_URL="postgresql://user:password@localhost:5432/builders_to?schema=public"

# NextAuth
NEXTAUTH_SECRET="generate-with-openssl-rand-base64-32"
NEXTAUTH_URL="http://localhost:3000"

# Twitter/X OAuth (https://developer.twitter.com/en/portal/dashboard)
TWITTER_CLIENT_ID=""
TWITTER_CLIENT_SECRET=""

# GitHub OAuth (https://github.com/settings/developers)
GITHUB_CLIENT_ID=""
GITHUB_CLIENT_SECRET=""

# Resend Email (https://resend.com) - for magic link auth
RESEND_API_KEY=""
EMAIL_FROM="Builders.to <noreply@yourdomain.com>"

# Stripe Payments (https://stripe.com)
STRIPE_SECRET_KEY=""
STRIPE_PUBLISHABLE_KEY=""
STRIPE_WEBHOOK_SECRET=""

# Giphy (https://developers.giphy.com)
NEXT_PUBLIC_GIPHY_API_KEY=""

# OpenAI (https://platform.openai.com)
OPENAI_API_KEY=""

# Web Push VAPID Keys (generate with: npm run generate-vapid-keys)
NEXT_PUBLIC_VAPID_PUBLIC_KEY=""
VAPID_PRIVATE_KEY=""

ADMIN_EMAILS="admin@builders.to"

3. Set Up Database

# Generate Prisma client and push schema
npx prisma generate
npx prisma db push

# Or run migrations for production
npx prisma migrate deploy

4. Run Development Server

npm run dev

Open http://localhost:3000 to see the app.

๐Ÿ” OAuth Setup

Twitter/X

  1. Go to Twitter Developer Portal
  2. Create a project and app
  3. Enable OAuth 2.0 with:
    • Type: Web App
    • Callback URLs (add BOTH):
      • http://localhost:3000/api/auth/callback/twitter (for login)
      • http://localhost:3000/api/platforms/callback/twitter (for cross-posting)
    • For production, add both URLs with your domain (e.g., https://builders.to/api/auth/callback/twitter and https://builders.to/api/platforms/callback/twitter)
  4. Copy Client ID and Client Secret to .env

Note: The app requires two callback URLs because login (NextAuth) and platform connection (cross-posting) use separate OAuth flows.

GitHub

  1. Go to GitHub Developer Settings
  2. Click "New OAuth App"
  3. Set:
    • Homepage URL: http://localhost:3000
    • Callback URL: http://localhost:3000/api/auth/callback/github
  4. Copy Client ID and Client Secret to .env

๐Ÿ“ Project Structure

src/
โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ (auth)/                 # Auth pages (signin)
โ”‚   โ”œโ”€โ”€ (protected)/            # Protected routes (dashboard, settings, etc.)
โ”‚   โ”‚   โ”œโ”€โ”€ ads/                # Advertisement management
โ”‚   โ”‚   โ”œโ”€โ”€ my-companies/       # Company management
โ”‚   โ”‚   โ”œโ”€โ”€ my-listings/        # Local listing management
โ”‚   โ”‚   โ”œโ”€โ”€ notifications/      # Notification center
โ”‚   โ”‚   โ”œโ”€โ”€ projects/           # Project management (new, edit, import)
โ”‚   โ”‚   โ”œโ”€โ”€ referrals/          # Referral dashboard
โ”‚   โ”‚   โ”œโ”€โ”€ services/           # Services marketplace management
โ”‚   โ”‚   โ”œโ”€โ”€ settings/           # User settings & 2FA
โ”‚   โ”‚   โ””โ”€โ”€ tokens/             # Token balance & history
โ”‚   โ”œโ”€โ”€ [slug]/                 # Dynamic user profile pages
โ”‚   โ”œโ”€โ”€ api/                    # API routes (120+ endpoints)
โ”‚   โ”‚   โ”œโ”€โ”€ 2fa/                # Two-factor authentication
โ”‚   โ”‚   โ”œโ”€โ”€ ads/                # Advertisement CRUD & tracking
โ”‚   โ”‚   โ”œโ”€โ”€ auth/               # NextAuth handlers
โ”‚   โ”‚   โ”œโ”€โ”€ companies/          # Company management
โ”‚   โ”‚   โ”œโ”€โ”€ feed-events/        # Feed event interactions
โ”‚   โ”‚   โ”œโ”€โ”€ local-listings/     # Builders Local
โ”‚   โ”‚   โ”œโ”€โ”€ notifications/      # Notification management
โ”‚   โ”‚   โ”œโ”€โ”€ projects/           # Project CRUD
โ”‚   โ”‚   โ”œโ”€โ”€ services/           # Services marketplace
โ”‚   โ”‚   โ”œโ”€โ”€ tokens/             # Token system
โ”‚   โ”‚   โ””โ”€โ”€ ...                 # Many more endpoints
โ”‚   โ”œโ”€โ”€ companies/              # Company directory pages
โ”‚   โ”œโ”€โ”€ feed/                   # Main builder feed
โ”‚   โ”œโ”€โ”€ local/                  # Builders Local pages
โ”‚   โ”œโ”€โ”€ projects/               # Project detail pages
โ”‚   โ”œโ”€โ”€ services/               # Services marketplace pages
โ”‚   โ””โ”€โ”€ streamers/              # Builder streamers directory
โ”œโ”€โ”€ components/
โ”‚   โ”œโ”€โ”€ ads/                    # Advertisement components
โ”‚   โ”œโ”€โ”€ analytics/              # View tracking components
โ”‚   โ”œโ”€โ”€ auth/                   # Auth & 2FA components
โ”‚   โ”œโ”€โ”€ comments/               # Comment system
โ”‚   โ”œโ”€โ”€ companies/              # Company components
โ”‚   โ”œโ”€โ”€ feed/                   # Feed & updates components
โ”‚   โ”œโ”€โ”€ local/                  # Builders Local components
โ”‚   โ”œโ”€โ”€ notifications/          # Notification UI
โ”‚   โ”œโ”€โ”€ profile/                # Profile components
โ”‚   โ”œโ”€โ”€ projects/               # Project cards & forms
โ”‚   โ”œโ”€โ”€ pwa/                    # PWA install prompts
โ”‚   โ”œโ”€โ”€ services/               # Services marketplace UI
โ”‚   โ”œโ”€โ”€ ui/                     # Shared UI components
โ”‚   โ””โ”€โ”€ updates/                # Daily update components
โ”œโ”€โ”€ lib/
โ”‚   โ”œโ”€โ”€ auth.ts                 # NextAuth configuration
โ”‚   โ”œโ”€โ”€ prisma.ts               # Prisma client singleton
โ”‚   โ”œโ”€โ”€ stripe.ts               # Stripe utilities
โ”‚   โ”œโ”€โ”€ tokens.ts               # Token system
โ”‚   โ””โ”€โ”€ utils.ts                # Helper utilities
โ””โ”€โ”€ middleware.ts               # Auth & route protection

๐ŸŒ Deployment on Render.com

This project includes a render.yaml blueprint for one-click deployment.

One-Click Deploy

  1. Push your code to GitHub
  2. Go to Render Dashboard
  3. Click New โ†’ Blueprint
  4. Connect your GitHub repository
  5. Render will automatically detect render.yaml and create:
    • A Web Service for the Next.js app
    • A PostgreSQL Database
    • A Persistent Disk for user uploads

Post-Deployment Setup

Configure these environment variables in the Render dashboard:

  1. NEXTAUTH_URL: Set to your Render app URL (e.g., https://builders.to)
  2. TWITTER_CLIENT_ID & TWITTER_CLIENT_SECRET: From Twitter Developer Portal
  3. GITHUB_CLIENT_ID & GITHUB_CLIENT_SECRET: From GitHub Developer Settings
  4. STRIPE_SECRET_KEY, STRIPE_PUBLISHABLE_KEY, STRIPE_WEBHOOK_SECRET: From Stripe Dashboard
  5. RESEND_API_KEY: From Resend Dashboard
  6. ADMIN_EMAILS: Comma-separated list of admin email addresses (for moderation, etc.)

Important: Update your OAuth callback URLs to use your production domain:

  • Twitter (both required):
    • https://your-domain.com/api/auth/callback/twitter (login)
    • https://your-domain.com/api/platforms/callback/twitter (cross-posting)
  • GitHub: https://your-domain.com/api/auth/callback/github

๐Ÿ“œ Available Scripts

npm run dev          # Start development server
npm run build        # Build for production
npm run start        # Start production server
npm run lint         # Run ESLint

# Prisma
npx prisma generate  # Generate Prisma client
npx prisma db push   # Push schema to database
npx prisma studio    # Open Prisma Studio GUI
npx prisma migrate   # Run database migrations

# Utilities (in /scripts)
npm run generate-vapid-keys   # Generate VAPID keys for push notifications

๐Ÿ—‚๏ธ Database Schema

The database includes 50+ models covering:

  • Users & Auth: User, Account, Session, VerificationToken
  • Projects: Project, ProjectImage, ProjectMilestone, ProjectCoBuilder, Upvote, Comment
  • Companies: Company, CompanyMember, CompanyUpdate, CompanyRole
  • Feed: FeedEvent, FeedEventLike, FeedEventComment, DailyUpdate, UpdateLike, UpdateComment
  • Marketplace: ServiceListing, ServicePortfolio, ServiceOrder
  • Local: LocalListing, LocalListingImage, LocalListingComment, LocalListingFlag, LocalListingRating
  • Events: Event, EventAttendee, EventComment
  • Tokens: TokenTransaction
  • Notifications: Notification, EmailPreferences, PushSubscription
  • Advertising: Advertisement, AdView, AdClick
  • Analytics: SiteView, ProjectView, ProjectClick, UpdateView, LocalListingView
  • Social: Follow, Report
  • Subscriptions: Pro subscriptions, Stripe integration
  • Rewards: Post rewards, earnings, payouts
  • Platforms: Connected platforms (Twitter, LinkedIn), OAuth tokens
  • AI: User interests, tone preferences, posting style

๐Ÿ”ฎ Future Improvements

  • Restrict Image Domains: Remove the wildcard hostname: '**' pattern in next.config.mjs and replace with specific allowed domains
  • Advanced Search: Full-text search across projects, users, and companies
  • AI Features: Smart project recommendations and auto-tagging
  • Mobile App: React Native companion app
  • Webhooks: External integrations for project milestones

๐Ÿค Community

๐Ÿ“„ License

MIT


Built with โค๏ธ by the Builders.to community

About

Share your project, get feedback from real builders, and find your first users. A members-only launchpad for builders who ship.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors