Skip to content

Repository files navigation

SideDoor 🚪⚡

Discover Evidenced, Buildable Opportunities at Target Startups & Hand Off Ready-to-Build MVPs

SideDoor is an intelligent, developer-centric platform that scans target tech companies (YC startups, high-growth scale-ups, and open-source ecosystems) to uncover real, unfulfilled technical gaps. It equips software engineers and job-seekers with verified evidence, deep research insights, and one-click AI prompt handoffs to build working MVPs and unlock "side door" opportunities.


⚡ Key Features

  • 🎯 Startup Discovery Feed: Browse curated YC & top-tier tech startups with real-time 24-hour rotation timers (synchronized daily at 00:00 UTC).
  • 💰 Verified Paid Bounties & Hackathons: Real-time ingested paid OSS bounties, contract gigs, and solo hackathons from Devfolio, Devpost, Algora, Unstop, and GitHub.
  • 🔬 Deep Research Engine: Automated multi-stage signal collector that ingests evidence from HackerNews, Reddit, GitHub, X (Twitter), and live job postings.
  • 🧠 AI Prompt Generators (Ask ChatGPT & Ask Claude): Automatically crafts rich, contextualized prompt payloads containing candidate skills, company tech stack, and gap analysis for instant MVP scaffolding.
  • 📊 Pipeline Workflow Tracker: Kanban-style tracker to manage active MVP builds, outreach status, replies, and interview cycles.
  • 🔒 Supabase Authentication & Onboarding: Seamless OAuth/Magic link authentication with an interactive 4-step onboarding wizard for developers.

🏗️ Architecture & Tech Stack

SideDoor is structured as a clean monorepo:

sidedoor/
├── frontend/             # Vite + React 18 + TypeScript SPA
│   ├── src/
│   │   ├── api/          # API Client & Backend REST endpoints
│   │   ├── components/   # Editorial UI Components & Feed Cards
│   │   ├── lib/          # Supabase Auth & Helper utilities
│   │   ├── pages/        # Landing Page, Dashboard, Onboarding, Login
│   │   └── types/        # Shared TypeScript Schemas
│   ├── index.html
│   ├── vite.config.ts
│   └── package.json
│
└── backend/              # FastAPI + Python 3.11 Pipeline Server
    ├── app/
    │   ├── api/routes/   # Profile, Company, & Scan endpoints
    │   ├── db/           # SQLAlchemy ORM Models & Session setup
    │   ├── services/     # Multi-source Collectors & Resume Extractor
    │   └── main.py       # FastAPI application entrypoint with CORS
    ├── alembic/          # PostgreSQL Database Migrations
    └── pyproject.toml

Stack Breakdown:

  • Frontend: React 18, TypeScript, Vite, Lucide Icons, Vanilla CSS (Code Almanac Editorial Theme), Supabase Client.
  • Backend: FastAPI, Python 3.11, SQLAlchemy (Async), Alembic, Pydantic v2, PyPDF / python-docx.
  • Database: PostgreSQL (with vector support capability).

🚀 Local Development Setup

Prerequisites

  • Node.js: v18.0.0 or higher
  • Python: v3.11 or higher
  • Poetry or pip for Python dependency management

1. Clone the Repository

git clone https://github.com/codeharsh27/sidedoor.git
cd sidedoor

2. Frontend Setup

cd frontend
npm install
npm run dev

The frontend will start locally at http://localhost:5173.

3. Backend Setup

cd backend
poetry install
poetry run uvicorn app.main:app --reload --port 8000

The backend API documentation will be available at http://localhost:8000/docs.


🌐 Production Deployment Guide

Option 1: Vercel (Frontend) + Render / Railway (Backend) + Supabase (Database)

1. Database Setup (Supabase / Neon)

  1. Create a new project on Supabase or Neon.
  2. Retrieve your PostgreSQL Connection String (DATABASE_URL).
  3. Run Alembic migrations:
    cd backend
    poetry run alembic upgrade head

2. Backend Deployment (Render / Railway)

  1. Connect your GitHub repository to Render or Railway.
  2. Set Root Directory to backend.
  3. Set Build Command: pip install poetry && poetry install
  4. Set Start Command: poetry run uvicorn app.main:app --host 0.0.0.0 --port $PORT
  5. Environment Variables:
    • DATABASE_URL: Your production Postgres URI
    • GEMINI_API_KEY: Your Gemini / LLM API Key
    • GITHUB_TOKEN / TWITTER_BEARER_TOKEN (optional for deep collectors)

3. Frontend Deployment (Vercel)

  1. Connect repository to Vercel.
  2. Set Root Directory to frontend.
  3. Set Framework Preset to Vite.
  4. Environment Variables:
    • VITE_SUPABASE_URL: Your Supabase Project URL
    • VITE_SUPABASE_ANON_KEY: Your Supabase Public Anon Key
    • VITE_API_BASE_URL: Deployed backend URL (e.g. https://sidedoor-api.onrender.com/api/v1)

📜 License

MIT License © 2026 SideDoor Team. Built with ❤️ for ambitious software engineers.

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages