Welcome to OctoCAT Supply — your premier destination for AI-powered smart products designed specifically for your feline companions! 🐱🤖 This sample repository showcases a full-stack ecommerce platform for our fictional company, where cutting-edge cat tech innovations bring together the latest in artificial intelligence, sensor technology, and pet-friendly design.
The application is built using modern TypeScript with a clean separation of concerns:
erDiagram
Headquarters ||--o{ Branch: has
Branch ||--o{ Order: placed_at
Order ||--o{ OrderDetail: contains
OrderDetail ||--o{ OrderDetailDelivery: fulfilled_by
OrderDetail }|--|| Product: references
Delivery ||--o{ OrderDetailDelivery: includes
Supplier ||--o{ Delivery: provides
- Frontend: React 18+, TypeScript, Tailwind CSS, Vite
- Backend: Express.js, TypeScript, SQLite, OpenAPI/Swagger
- Data: SQLite (file db at
api/data/app.db; in-memory for tests) - DevOps: Docker
- Node.js 18+ and npm
- Make
-
Clone this repository
-
Install dependencies:
make install
-
Start the development environment:
make dev
This will start both the API server (on port 3000) and the frontend development server (on port 5173).
View all available commands:
make helpKey commands:
make dev- Start both API and frontend development serversmake dev-api- Start only the API servermake dev-frontend- Start only the frontend servermake build- Build both API and frontend for productionmake db-init- Initialize database schemamake db-seed- Seed database with sample datamake test- Run all testsmake clean- Clean build artifacts and dependencies
Initialize the database explicitly (migrations + seed):
make db-initSeed data only:
make db-seedOr use npm scripts directly in the API directory:
cd api && npm run db:migrate # Run migrations only
cd api && npm run db:seed # Seed data onlyYou can also use VS Code tasks and launch configurations:
Cmd/Ctrl + Shift + P->Run Task->Build All- Use the Debug panel to run
Start API & Frontend
To showcase extended capabilities:
- Install Docker/Podman for the GitHub MCP server
- Use VS Code command palette:
MCP: List servers->playwright->Start serverMCP: List servers->github->Start server
- Configure with a GitHub PAT (required for GitHub MCP server)
Database defaults and env vars:
- DB file:
api/data/app.db(override withDB_FILE=/absolute/path/to/file.db) - Enable WAL:
DB_ENABLE_WAL=true(default) - Foreign keys:
DB_FOREIGN_KEYS=true(default)
This entire project, including the hero image, was created using AI and GitHub Copilot! Even this README was generated by Copilot using the project documentation. 🤖✨
