Skip to content

πŸš€ YCDirectory: A modern pitch platform built with Next.js 15 where entrepreneurs can showcase their startups through virtual pitch competitions. Featuring GitHub authentication, markdown-rich pitch submissions, and a minimalist design for optimal user experience. Built with Next.js 15, React 19, NextAuth.js v5, and Tailwind CSS.

Notifications You must be signed in to change notification settings

Lostovayne/YCDirectory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

26 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Startup Directory Platform

A Next.js 15 platform where entrepreneurs can submit their startup ideas for virtual pitch competitions, browse other pitches, and gain exposure through a clean minimalistic design for a smooth user experience.

πŸš€ Features

  • GitHub Authentication: Secure login system using NextAuth.js with GitHub provider
  • Pitch Submission: Entrepreneurs can submit their startup ideas with rich markdown support
  • Browse Pitches: Clean interface to explore and discover startup pitches
  • Search Functionality: Find specific startups or filter by categories
  • User Profiles: Dedicated space for entrepreneurs to showcase their ventures
  • Responsive Design: Seamless experience across all devices

πŸ› οΈ Tech Stack

  • Frontend: Next.js 15 (App Router)
  • Authentication: NextAuth.js v5 (Beta)
  • Styling: Tailwind CSS with Typography plugin
  • CMS: Sanity.io
  • UI Components:
    • Radix UI for accessible components
    • Lucide React for icons
    • Class Variance Authority for component variants
  • Content: Markdown support with markdown-it

πŸ—οΈ Project Structure

YCDirectory/
β”œβ”€β”€ app/                  # Next.js app router pages
β”œβ”€β”€ components/          # Reusable UI components
β”œβ”€β”€ lib/                 # Utility functions and queries
β”œβ”€β”€ public/             # Static assets
β”œβ”€β”€ sanity/             # Sanity CMS configuration
└── studio-yc-directory/ # Sanity Studio

πŸš€ Getting Started

  1. Clone the repository

    git clone [repository-url]
  2. Install dependencies

    npm install
  3. Set up environment variables Create a .env.local file based on .example.env:

    NEXT_PUBLIC_SANITY_PROJECT_ID=
    NEXT_PUBLIC_SANITY_DATASET=
    SANITY_WRITE_TOKEN=
    
  4. Run the development server

    npm run dev

πŸ”’ Authentication

The platform uses NextAuth.js for authentication with GitHub as the provider. Features include:

  • Secure user sessions
  • GitHub OAuth integration
  • Custom user profiles stored in Sanity
  • JWT token handling

πŸ“ Content Management

Sanity.io is used as the headless CMS, providing:

  • Structured content models for startups and authors
  • Real-time content updates
  • Rich text editing with markdown support
  • Custom studio configuration

🎨 UI/UX Features

  • Clean, minimalistic design
  • Responsive layouts
  • Accessible components using Radix UI
  • Custom component variants with CVA
  • Typography optimized for readability

πŸ› οΈ Development Scripts

  • npm run dev: Start development server
  • npm run build: Build for production
  • npm run start: Start production server
  • npm run lint: Run ESLint
  • npm run typegen: Generate Sanity schema types

πŸ“¦ Dependencies

Core

  • Next.js 15
  • React (Canary)
  • NextAuth.js v5 Beta
  • Sanity v3

UI/Styling

  • Tailwind CSS
  • Radix UI components
  • Lucide React icons
  • Class Variance Authority

Content

  • Markdown-it
  • Sanity Markdown Plugin

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

About

πŸš€ YCDirectory: A modern pitch platform built with Next.js 15 where entrepreneurs can showcase their startups through virtual pitch competitions. Featuring GitHub authentication, markdown-rich pitch submissions, and a minimalist design for optimal user experience. Built with Next.js 15, React 19, NextAuth.js v5, and Tailwind CSS.

Topics

Resources

Stars

Watchers

Forks