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.
- 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 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)
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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 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
- 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
- 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)
- View Tracking โ Project views, update views, listing views
- Click Tracking โ Outbound link and contact info clicks
- Site Statistics โ Community-wide metrics
- 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
- Two-Factor Authentication โ TOTP-based 2FA with backup codes
- Content Reporting โ Flag inappropriate content
- Rate Limiting โ Protection against abuse
| 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 |
- 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)
git clone https://github.com/your-org/builders.to.git
cd builders.to
npm installCreate 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"# Generate Prisma client and push schema
npx prisma generate
npx prisma db push
# Or run migrations for production
npx prisma migrate deploynpm run devOpen http://localhost:3000 to see the app.
- Go to Twitter Developer Portal
- Create a project and app
- 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/twitterandhttps://builders.to/api/platforms/callback/twitter)
- 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.
- Go to GitHub Developer Settings
- Click "New OAuth App"
- Set:
- Homepage URL:
http://localhost:3000 - Callback URL:
http://localhost:3000/api/auth/callback/github
- Homepage URL:
- Copy Client ID and Client Secret to
.env
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
This project includes a render.yaml blueprint for one-click deployment.
- Push your code to GitHub
- Go to Render Dashboard
- Click New โ Blueprint
- Connect your GitHub repository
- Render will automatically detect
render.yamland create:- A Web Service for the Next.js app
- A PostgreSQL Database
- A Persistent Disk for user uploads
Configure these environment variables in the Render dashboard:
- NEXTAUTH_URL: Set to your Render app URL (e.g.,
https://builders.to) - TWITTER_CLIENT_ID & TWITTER_CLIENT_SECRET: From Twitter Developer Portal
- GITHUB_CLIENT_ID & GITHUB_CLIENT_SECRET: From GitHub Developer Settings
- STRIPE_SECRET_KEY, STRIPE_PUBLISHABLE_KEY, STRIPE_WEBHOOK_SECRET: From Stripe Dashboard
- RESEND_API_KEY: From Resend Dashboard
- 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
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 notificationsThe 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
- Restrict Image Domains: Remove the wildcard
hostname: '**'pattern innext.config.mjsand 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
- ๐ฆ X Community
- ๐ Live Site
MIT
Built with โค๏ธ by the Builders.to community