You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Naeem Ullah 70b3c77fa6 Initial project setup with backend and frontend
Add full-stack release tracker with NestJS backend and React/Vite frontend. Includes environment configs, Docker setup, database migration scripts, core backend modules (auth, projects, releases, transaction codes, users), frontend dashboard components, context providers, and utility files.
4 hours ago
backend Initial project setup with backend and frontend 4 hours ago
frontend Initial project setup with backend and frontend 4 hours ago
supabase/migrations Initial project setup with backend and frontend 4 hours ago
.env Initial project setup with backend and frontend 4 hours ago
.gitignore Initial project setup with backend and frontend 4 hours ago
README.md Initial project setup with backend and frontend 4 hours ago
SETUP_DATABASE.md Initial project setup with backend and frontend 4 hours ago
package-lock.json Initial project setup with backend and frontend 4 hours ago
test.txt create test 1 day ago

README.md

Verto

Verto is a full-stack release tracker built with React + Vite on the frontend and NestJS + MySQL on the backend. Users can sign up, authenticate with JWTs, manage client/environment release metadata, and customize their personal settings (profile, avatar, password) without leaving the workspace.

Repo layout

  • backend/ NestJS + TypeORM API (JWT auth, releases CRUD, MySQL integration)
  • frontend/ React + Vite dashboard (shown below)

Getting started

  1. Install dependencies

    (cd backend && npm install)
    (cd frontend && npm install)
    
  2. Configure environment variables

    The backend now looks for three .env* files:

    • backend/.env production defaults (gitignored). Copy backend/.env.example and fill in real secrets.
    • backend/.env-development used whenever NODE_ENV is unset or development. Update this file for local dev.
    • backend/.env-test used when NODE_ENV=test, e.g., during Jest/e2e runs.
    cp backend/.env.example backend/.env   # production / deployment secrets
    

    Ensure a MySQL database (default verto) exists and the configured user has permissions. Create separate schemas (verto_dev, verto_test) if you keep the dev/test defaults. NODE_ENV controls which file loads (defaults to development); Jest sets NODE_ENV=test automatically, and NODE_ENV=production npm run start:prod will read from .env.

  3. Run the dev servers (in separate terminals)

    (cd backend && npm run start:dev)   # http://localhost:3000
    (cd frontend && npm run dev)        # http://localhost:5173
    
  4. Optionally build/preview the frontend

    (cd frontend && npm run build)
    (cd frontend && npm run preview)
    

Project structure

frontend/src/
├─ components/
│  ├─ AppContent.tsx
│  ├─ auth/
│  ├─ common/
│  └─ dashboard/
├─ contexts/
├─ services/
├─ styles/
├─ types/
└─ utils/
  • contexts/ keeps isolated auth + release providers.
  • services/ holds API + session helpers.
  • components/ are split by feature (auth vs dashboard) with smaller presentational children.
  • utils/ centralizes data shaping helpers (flattening/grouping releases, exporting JSON, etc.).
  • styles/ includes shared tokens plus CSS modules per component for maintainable styling.

Features

  • Email + password auth persisted in MySQL and secured with JWTs
  • Add/edit/delete release metadata per client/environment with server-side validation
  • Invite collaborators to specific client projects via emailed signup links
  • Search across clients, branches, versions, and environments
  • JSON export of the current user's release catalog
  • Responsive layout with accessible modals and form semantics