Startmap is an interactive, cinematic "startup universe" ecosystem map. It visualizes the complex relationships between top startups (such as Y Combinator alumni) in a stunning, highly animated Bento Grid UI.
Built with modern web technologies, Startmap provides an immersive experience to explore companies, discover their connections (competitors, similar industries, shared tags, or same batch), and view detailed information.
- Cinematic Ecosystem View: Powered by Framer Motion, the UI smoothly transitions between a global grid and a focused "Ecosystem View" that highlights a selected company and its direct connections.
- Dynamic Relationships: Companies are linked together based on industry overlap, shared batches, and common tags.
- Premium Design: A dark-mode, glassmorphism-inspired aesthetic with subtle glows, custom scrollbars, and fluid animations.
- Detailed Insights: A slide-out sidebar reveals in-depth information about a startup when clicked.
- Local Database: Uses Prisma with a local SQLite database, making it extremely easy to run and extend.
- Framework: Next.js 16 (App Router)
- Library: React 19
- State Management: Zustand
- Animations: Framer Motion
- Styling: Tailwind CSS
- Database ORM: Prisma (SQLite)
- Icons: Lucide React
Follow these steps to set up the project locally.
npm install
# or
yarn install
# or
pnpm installThe project uses a local SQLite database (prisma/dev.db). You need to push the schema and seed the database with the initial startup data.
npx prisma db push
node prisma/seed.js(Note: The seed script will generate the initial companies and calculate their relationship weights).
npm run dev
# or
yarn devOpen http://localhost:3000 (or the port specified in your terminal, e.g., 3001) in your browser to see the result.
src/app/: Next.js App Router pages and API routes (e.g.,api/datafor serving the graph data).src/components/: Core UI components likeBentoGrid,Sidebar,MainOverlay, andUIControls.src/store/: Zustand state management (useStore.ts) for handling node and link data globally.prisma/: Database schema (schema.prisma) and the data seeding script (seed.js).