/questmind

Primary LanguagePythonMIT LicenseMIT

Questmind Monorepo

This monorepo is managed with Nx and supports both Python and Node.js/TypeScript projects.

Structure

  • apps/api – FastAPI backend (Python)
  • apps/web – Next.js frontend (TypeScript/React)
  • packages/shared – Shared Python code
  • packages/ui – Shared JS/TS UI components

Prerequisites

  • pnpm for JS/TS dependencies
  • uv for Python dependencies
  • poethepoet for Python task running

Install dependencies

pnpm install           # Install JS/TS dependencies
uv pip install -r requirements.txt  # (If you add a requirements.txt for Python shared deps)

API (FastAPI)

  • Run locally:

    poe serve

    (Runs uvicorn apps.api.main:app --reload)

  • Install Python deps:

    uv pip install fastapi pydantic

Web (Next.js)

  • Run locally:

    pnpm --filter ./apps/web dev
  • Build:

    pnpm --filter ./apps/web build
  • Preview production build:

    pnpm --filter ./apps/web start

Nx Monorepo Commands

  • Run all builds:
    pnpm nx run-many -t build
  • See project graph:
    pnpm nx graph

For more, see the individual app/package README files or the Nx documentation.