AI-powered developer portal for TigerGraph - Learn, Build, and Master Graph Databases.
- Resource Wall: Searchable hub with all TigerGraph content - docs, videos, tutorials
- AI Chat: Gemini-powered assistant to guide your learning journey
- Learner Pathfinder: Personalized learning paths based on your goals
- Frontend: Next.js 14, React, Tailwind CSS
- Backend: Node.js, Express
- Database: Supabase (PostgreSQL)
- AI: Google Gemini API
- Node.js 18+
- npm or yarn
- Supabase account (free tier works great)
- Google Gemini API key (optional)
git clone <repo-url>
cd tigergraph-devhub
npm run install:all- Go to supabase.com and create a new project
- Once created, go to SQL Editor and run the schema in
backend/supabase-schema.sql - Go to Settings > API to get your credentials
Backend - Create backend/.env:
PORT=3001
FRONTEND_URL=http://localhost:3000
# Supabase
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_ANON_KEY=your-anon-key
# Google Gemini (optional)
GEMINI_API_KEY=your-gemini-api-keyFrontend - Create frontend/.env.local:
NEXT_PUBLIC_API_URL=http://localhost:3001/apinpm run devThis starts:
- Frontend at http://localhost:3000
- Backend at http://localhost:3001
Note: The app works without Supabase credentials using mock data. Add credentials for persistence.
To populate the Pathfinder and Resource Wall with real TigerGraph content:
cd backend
npm run seed:resources # Scrapes TigerGraph docs (takes a few minutes)
npm run seed:courses # Imports courses from TeachablePathfinder: Works even without seeding. If the database is empty, Pathfinder uses curated fallback resources so you always get a useful learning path.
tigergraph-devhub/
├── frontend/ # Next.js frontend
│ ├── app/
│ │ ├── page.tsx # Home/Dashboard
│ │ ├── resources/ # Resource Wall
│ │ ├── chat/ # AI Chat
│ │ └── pathfinder/ # Learner Pathfinder
│ ├── components/
│ │ └── layout/ # Sidebar, Header
│ └── lib/
│ └── api.ts # API client
├── backend/ # Node.js API
│ ├── src/
│ │ ├── index.js # Express server
│ │ ├── config/ # Supabase config
│ │ └── routes/ # API routes
│ └── supabase-schema.sql # Database schema
└── README.md
| Endpoint | Method | Description |
|---|---|---|
/api/resources |
GET | List resources with filters |
/api/resources/:id |
GET | Get single resource |
/api/resources |
POST | Create new resource |
/api/chat |
POST | Send message to AI assistant |
/api/pathfinder/generate |
POST | Generate learning path |
| Column | Type | Description |
|---|---|---|
| id | UUID | Primary key |
| title | TEXT | Resource title |
| description | TEXT | Resource description |
| type | TEXT | video, tutorial, docs, blog |
| skill_level | TEXT | beginner, intermediate, advanced |
| use_cases | TEXT[] | Array of use case tags |
| url | TEXT | Link to resource |
| thumbnail | TEXT | Thumbnail URL |
| duration | TEXT | Estimated time |
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
MIT