Spaces:
Running
Running
| title: RedThread | |
| emoji: πΈοΈ | |
| colorFrom: red | |
| colorTo: purple | |
| sdk: docker | |
| app_port: 7860 | |
| pinned: false | |
| # RedThread | |
| **AI-assisted location-based recommendation platform** that combines intelligent intent parsing, safety validation, and structured data extraction. | |
| ## Architecture | |
| ``` | |
| ultimate_spider/ | |
| βββ client/ # React + Vite frontend | |
| β βββ src/ | |
| β βββ api/ # Backend communication layer | |
| β βββ components/ # Reusable UI components | |
| β βββ pages/ # Page-level compositions | |
| β βββ styles/ # Design system | |
| βββ server/ # Node.js + Express backend | |
| βββ src/ | |
| βββ config/ # Environment-driven configuration | |
| βββ controllers/ # Request orchestration (thin) | |
| βββ middleware/ # Rate limiting, safety guard, error handler | |
| βββ routes/ # HTTP route definitions | |
| βββ services/ # Business logic (AI, safety, scraper) | |
| βββ utils/ # Logger, custom errors | |
| βββ validators/ # Request body validation | |
| ``` | |
| ## Quick Start | |
| ```bash | |
| # Backend | |
| cd server | |
| npm install | |
| cp .env.example .env # Add your GROQ_API_KEY | |
| npm run dev | |
| # Frontend (new terminal) | |
| cd client | |
| npm install | |
| npm run dev | |
| ``` | |
| - **Frontend**: http://localhost:5173 | |
| - **Backend**: http://localhost:3001 | |
| - **Health**: http://localhost:3001/api/health | |
| ## Tech Stack | |
| | Layer | Tech | | |
| |-------|------| | |
| | Frontend | React 19, Vite | | |
| | Backend | Express 4, Node.js | | |
| | AI | Groq API (Llama 3.3 70B) | | |
| | Security | Helmet, CORS, Rate Limiting, Safety Middleware | | |
| ## Environment Variables | |
| | Variable | Description | | |
| |----------|-------------| | |
| | `PORT` | Server port (default: 3001) | | |
| | `NODE_ENV` | Environment (development/production) | | |
| | `GROQ_API_KEY` | Groq API key for AI intent parsing | | |