Skip to content

feature-agent/projectflow-api

Repository files navigation

ProjectFlow API

A project and task management REST API built with FastAPI and SQLite.

Features

  • Health check endpoint
  • Database with async SQLAlchemy and Alembic migrations
  • CI pipeline with GitHub Actions

Coming Soon

  • User management (CRUD)
  • Project management with soft deletes
  • Task management with status transitions and assignment
  • Pagination, due dates, and project statistics

Setup

Prerequisites: Python 3.10+, Git

  1. Clone the repo

    git clone <repo-url>
    cd projectflow-api
  2. Create virtual environment

    python3 -m venv .venv
    source .venv/bin/activate
  3. Install dependencies

    pip install -r requirements.txt
    pip install -r requirements-dev.txt
  4. Configure environment

    cp .env.example .env
  5. Run migrations and start server

    alembic upgrade head
    uvicorn app.main:app --reload

Visit http://localhost:8000/docs for the API explorer.

Running Tests

pytest tests/ -v --cov=app

API Documentation

Interactive docs available at /docs when the server is running.

Architecture

See CLAUDE.md for full architecture documentation and the reasoning behind every decision.

Contributing

External contributors (including course students) work fork-and-PR style:

  1. Fork this repo to your own GitHub account
  2. Clone your fork and create a feature branch
  3. Commit and push to your fork
  4. Open a pull request against feature-agent/projectflow-api:main

Direct pushes to main are blocked. All changes land via reviewed PRs.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors