-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
Description
🏗️Initial Project Setup
🎯 Goal
Set up the foundational structure for the Self-Hosted Monorepo Package Manager Dashboard project, ensuring a scalable, maintainable, and self-hosted architecture that aligns with the FRS document.
✅ Tasks
1. Repository & Structure
- Initialize a new monorepo using pnpm workspaces or Nx
- Create folders:
/apps/dashboard– Frontend (React + TypeScript + Vite)/apps/server– Backend (Node.js + Fastify)/packages/shared– Shared utilities and types
- Add
.editorconfig,.gitignore,.nvmrc,.prettierrc,.eslintrc.cjs
2. Frontend Setup
- Initialize React + TypeScript project with Vite
- Integrate Tailwind CSS and shadcn/ui components
- Configure routing with React Router
- Add placeholder pages:
- Dashboard Overview
- Packages List
- Dependency Graph
- Role Management
3. Backend Setup
- Initialize Fastify (or Express) with TypeScript
- Set up API routes structure:
/api/packages/api/dependencies/api/auth/api/config
- Implement environment-based configuration using
dotenv - Add sample
/healthroute for testing
4. Database & Auth
- Configure lightweight database (SQLite for local, PostgreSQL for prod)
- Set up ORM
- Initialize RBAC schema for roles: Admin, Maintainer, Developer
- Implement token-based authentication (JWT)
5. Developer Experience
- Configure ESLint and Prettier for code quality
- Add Husky + lint-staged for pre-commit hooks
- Add TurboRepo or Nx for task orchestration
- Setup Dockerfile and docker-compose.yml for self-hosted deployment
6. CI/CD & Version Control
- Setup GitHub Actions workflow for:
- Lint + Build checks
- Test automation
- Add basic README.md with project overview and setup instructions
🧩 Deliverables
- Monorepo structure initialized
- Working React + Fastify setup
- Basic Docker and CI pipeline
- ESLint, Prettier, Husky configured
- RBAC schema with seed roles
🧠 Notes
- Follow FRS version 1.0 (October 2025)
- Future tasks will include: Dependency graph visualization, CI/CD integrations, and role-based UI access.
Priority: 🔥 High
Type: Setup / Infrastructure
Labels: setup, infrastructure, priority-high, backend, frontend
Reactions are currently unavailable