Project Info
Pathfinder AI – Supabase + Django + React
This repository provides an integrated full-stack implementation combining a Django REST API with a React frontend. Authentication and data management are handled via Supabase.
System Architecture Overview
- Frontend: React 18 (Vite build system, styled with Tailwind CSS)
- State/Data: TanStack Query, Supabase JS client
- Auth: Supabase (email/password + Google OAuth)
- Backend: Django 5 + Django REST Framework + CORS headers
- Tooling: TypeScript, ESLint, ShadCN UI components
- LLM: Llama 2.7 HF
Development Environment
- Python 3.11+
- Node.js 20+
- PostgreSQL (managed via Supabase)
Ensure both frontend and backend
.envfiles are configured before running the application.
1. Supabase Setup
- Create a Supabase project and enable the Google OAuth provider (Auth -> Providers -> Google).
- Run the SQL in
supabase/initial-setup.sqlfrom the Supabase SQL editor to create theprofilestable, enable row-level security, and auto-seed profiles when new users sign up. - Record the project URL and anonymous API key for use in frontend and backend environment variables.
- Do not commit keys or credentials to source control. Store them in your environment manager
2. Frontend (React)
cd frontend
npm install
npm run dev
The frontend relies on Supabase for user authentication and profile persistence:
- Email/password sign up & sign in
- Google OAuth sign-in (redirect handled by Supabase)
- Persisted profiles (
profilestable) keyed to the authenticated user
Key Modules:
src/lib/supabaseClient.ts– shared Supabase clientsrc/context/AuthContext.tsx– wraps the app with session state + auth helperssrc/pages/Auth.tsx– auth UI wired to Supabase (email/password + Google)src/components/Navbar.tsx– reflects auth state (sign in/out buttons)
Environment variables:
VITE_API_BASE_URL=http://127.0.0.1:8000/api
VITE_SUPABASE_URL=…
VITE_SUPABASE_ANON_KEY=…
3. Backend
cd backend
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver
Default settings give:
/api/health/– simple JSON healthcheck/api/placeholders/– example DRF ViewSet/– landing page to show the API is running
Environment variables (backend/.env.example):
DJANGO_SECRET_KEY=change-me
DJANGO_DEBUG=1
DJANGO_ALLOWED_HOSTS=127.0.0.1,localhost
DJANGO_CORS_ALLOW_ALL=1
4. Authentication and Data Model Extensions
- Profiles: During user registration, the frontend automatically synchronizes user metadata to the
profilestable via Supabase - Protected routes: Use the
useAuthhook anywhere to readuser,session, and helper functions. Gate pages or fetch user-specific data via Supabase queries or Django. - Google OAuth: Google OAuth is managed through Supabase’s redirect-based authentication flow, with session updates propagated through the frontend’s auth listener.
5. Command Reference
| Command | Example |
|---|---|
| Install frontend deps | npm install |
| Run frontend dev server | npm run dev |
| Build production bundle | npm run build |
| Create backend venv | python -m venv .venv |
| Install backend deps | pip install -r requirements.txt |
| Apply migrations | python manage.py migrate |
| Start Django dev server | python manage.py runserver |
| Seed Supabase tables | Execute supabase/initial-setup.sql in Supabase |
Analysis
View
Metric
- 15
- 13
- 12
- 12
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- DjangoIn code
- HTMLIn code
- JavaScriptIn code
- PythonIn code
- ReactIn code
- SQLIn code
- SupabaseIn code
- Tailwind CSSIn code
- TypeScriptIn code
10 of 10 appear in the indexed code.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
376 KB
Source files
97
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
beaumont-code/Pathfinder-AI
109 files · 5.1 MB · @ 6770ab3
Structure
Interface
62 files · 57%Screens, components and styles rendered to the user.
API & routing
12 files · 11%Request entry points: routes, handlers and controllers.
Application logic
22 files · 20%Domain rules, services and shared utilities.
Data & schema
1 file · 1%Schema definitions, migrations and data access.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- TypeScript76%
- Python17%
- SQL4%
- Markdown2%
- CSS1%
- HTML0%
- Other (1)0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
frontend/package.json
npm · 71- @dnd-kit/core
- @dnd-kit/sortable
- @dnd-kit/utilities
- @hookform/resolvers
- @radix-ui/react-accordion
- @radix-ui/react-alert-dialog
- @radix-ui/react-aspect-ratio
- @radix-ui/react-avatar
- @radix-ui/react-checkbox
- @radix-ui/react-collapsible
- @radix-ui/react-context-menu
- @radix-ui/react-dialog
- @radix-ui/react-dropdown-menu
- @radix-ui/react-hover-card
- @radix-ui/react-label
- @radix-ui/react-menubar
- @radix-ui/react-navigation-menu
- @radix-ui/react-popover
- +53 more
backend/requirements.txt
pypi · 6- django
- django-cors-headers
- djangorestframework
- gunicorn
- python-dotenv
- requests
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.