Skip to content

Conversation

@bryangingechen
Copy link
Contributor

@bryangingechen bryangingechen commented Sep 27, 2025

Mostly written by Codex.

celery+redis will serve as a task runner for the project. I also made Codex CLI add various documentation, including AGENTS.md and docs/design-decisions/.

Depends on #59 and I also went ahead and put the v2 doc from #33 here so the AI could refer to it.

@bryangingechen bryangingechen force-pushed the finalize-environment-tooling branch from 28d2acd to 171016f Compare October 14, 2025 22:23
@bryangingechen bryangingechen force-pushed the finalize-environment-tooling branch from 171016f to 41c8806 Compare November 4, 2025 03:26
  - Introduced a settings package with shared config, environment overrides, and default local
  export, including env-driven database setup and src/ path injection (qb_site/qb_site/settings/
  base.py:1, qb_site/qb_site/settings/local.py:1, qb_site/qb_site/settings/ci.py:1, qb_site/qb_site/
  settings/production.py:1, qb_site/qb_site/settings/__init__.py:1).
  - Registered dedicated Django apps and scaffolded their package structure to mirror the core/
  syncer/analyzer/api responsibilities (qb_site/core/apps.py:1, qb_site/syncer/apps.py:1, qb_site/
  analyzer/apps.py:1, qb_site/api/apps.py:1).
  - Wired the API namespace into the project URLs with a placeholder router ready for DRF endpoints
  (qb_site/qb_site/urls.py:1, qb_site/api/urls.py:1).
> Dockerized Dev Env

  - Added a slim Python 3.12 image that installs the project editable, exposes the repo
  via PYTHONPATH=/app, and runs migrations before runserver (Dockerfile:1, scripts/docker-
  entrypoint.sh:1).
  - Defined a compose stack with a Postgres 16 service, health checks, env passthrough, and
  a live-mounted web container (docker-compose.yml:1). .dockerignore:1 keeps the build lean,
  and .env.example:1 now lists DJANGO_SETTINGS_MODULE plus all required vars.

  Django Package Layout

  - Introduced qb_site/__init__.py:1 so the outer project directory is a proper package.
  - Registered apps as top-level modules (core, syncer, analyzer, api) to match Django’s default
  startproject layout and avoid import clashes when running manage.py (qb_site/qb_site/settings/
  base.py:38, qb_site/core/apps.py:1, qb_site/syncer/apps.py:1, qb_site/analyzer/apps.py:1, qb_site/
  api/apps.py:1).
  - Updated project URLs to include the API namespace via the new module path (qb_site/qb_site/
  urls.py:6).

  Docs & Dependencies

  - Documented the Docker workflow in the README (README.md:39) and refreshed the migration plan to
  reflect the compose setup and app naming (docs/django_backend_plan.md:5).
  - Added psycopg[binary] so Postgres connections work out of the box (pyproject.toml:11); uv.lock
  picks up the resolved wheels.
@bryangingechen bryangingechen force-pushed the finalize-environment-tooling branch from 41c8806 to 6907de5 Compare November 6, 2025 08:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants