Skip to content

πŸš€ A full-stack startup directory platform where founders can pitch ideas and users can discover innovative startups. Built with Next.js, TypeScript, Sanity CMS, and NextAuth.js. Features real-time content updates, admin curation and seamless GitHub authentication.

Notifications You must be signed in to change notification settings

Hrishubh/hb-directory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ HB Directory – Startup Pitch Platform

A modern, scalable platform for discovering, pitching, and curating startup ideasβ€”built with the latest web technologies and a product-focused mindset.

Next.js React TypeScript Tailwind CSS Sanity

πŸš€ Live Demo

Demo Coming Soon

πŸ“‹ Table of Contents


🎯 Overview

HB Directory is a full-featured platform for the startup ecosystem. It enables founders to pitch their ideas, users to discover and search startups, and editors to curate the best content. The project demonstrates advanced full-stack engineering, modern UI/UX, and a focus on real-world product value.

Note: This project is based on a YouTube tutorial. You can find the original tutorial here: YouTube Tutorial

What Makes This Project Special

  • Real-Time Content: Instantly updated startup directory powered by Sanity CMS
  • Seamless Authentication: One-click GitHub login for frictionless onboarding
  • Rich Pitch Experience: Media-rich submissions, detailed pitch pages, and curated highlights
  • Production-Ready UX: Minimal, responsive, and accessible design for all devices
  • Cloud-Native Deployment: Built for Vercel, monitored with Sentry

✨ Key Features

  • Live Startup Directory: Instantly updated, filterable, and searchable
  • Pitch Submission: Founders submit ideas with rich content and media
  • Editor Picks: Admins highlight top startups for extra visibility
  • Profile Management: Users manage their own pitches
  • Engagement Analytics: View counters and curated highlights
  • Minimal, Modern UI: Built with Tailwind CSS, Radix UI, and shadcn/ui

πŸ›  Technology Stack

  • Frontend: Next.js 15 (React 19), TypeScript, Tailwind CSS, Radix UI, shadcn/ui
  • Authentication: NextAuth.js (GitHub OAuth)
  • Database/CMS: Sanity CMS (headless, real-time)
  • Deployment: Vercel
  • Monitoring: Sentry

πŸ— Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Frontend    │────►│   API Layer   │─────►│   Sanity CMS  β”‚
β”‚ (Next.js)     β”‚     β”‚ (Next.js API) β”‚      β”‚ (Content Mgmt)β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
        β”‚                     β”‚                      β”‚
        β–Ό                     β–Ό                      β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Auth (GitHub) β”‚     β”‚   Sentry CMS   β”‚     β”‚     Vercel    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Data Flow

  1. User Authentication β†’ GitHub OAuth via NextAuth.js
  2. Pitch Submission β†’ Data sent to Sanity CMS
  3. Content Discovery β†’ Real-time queries from frontend to Sanity
  4. Admin Curation β†’ Editor picks managed via Sanity Studio
  5. Monitoring β†’ Sentry tracks errors across stack

⚑ Installation

Prerequisites

  • Node.js 18+
  • npm or yarn
  • GitHub account (for authentication)
  • Sanity account (for content management)

Setup Instructions

  1. Clone the repository
    git clone <your-repository-url>
    cd hb_directory
  2. Install dependencies
    npm install
  3. Environment Configuration Create a .env.local file with your Sanity and GitHub credentials (see Sanity and GitHub OAuth docs).
    NEXT_PUBLIC_SANITY_PROJECT_ID="your_project_id"
    NEXT_PUBLIC_SANITY_DATASET="your_dataset"
    NEXT_PUBLIC_SANITY_API_VERSION="you_sanity_api_version"
    SANITY_WRITE_TOKEN="your_sanity_write_token"
    AUTH_GITHUB_ID="your_github_client_id"
    AUTH_GITHUB_SECRET="your_github_client_secret"
    AUTH_TRUST_HOST="http://localhost:3000"
    AUTH_SECRET="your_auth_secret"
    SENTRY_AUTH_TOKEN="your_sentry_auth_token"
  4. Sanity Setup
    cd sanity
    npx sanity deploy
  5. Run the development server
    npm run dev
    Visit http://localhost:3000

πŸ“– Usage

  • Sign in with GitHub to access the platform
  • Submit a startup pitch with title, description, and media
  • Browse and search the live directory
  • View and manage your own pitches in your profile
  • Admins can curate and highlight top ideas

πŸ“ž Contact


⭐ Star this repository if you found it helpful!

Made with ❀️ by Hrishubh Bhandari

About

πŸš€ A full-stack startup directory platform where founders can pitch ideas and users can discover innovative startups. Built with Next.js, TypeScript, Sanity CMS, and NextAuth.js. Features real-time content updates, admin curation and seamless GitHub authentication.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published