commit 93b5a2299e9ce59843c0ae1f67ec4fcab84c2ea8 Author: rob Date: Mon Mar 2 22:45:06 2026 -0400 Initial project setup Created by development-hub/new-project script diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..30c26d7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,53 @@ +# Python +__pycache__/ +*.py[cod] +*$py.class +*.so +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg + +# Virtual environments +.venv/ +venv/ +ENV/ + +# IDE +.idea/ +.vscode/ +*.swp +*.swo + +# OS +.DS_Store +Thumbs.db + +# Testing +.pytest_cache/ +.coverage +htmlcov/ +.tox/ +.nox/ + +# mypy +.mypy_cache/ + +# Local config +.env +*.local.yaml + +# Documentation symlink (points to project-docs) +docs diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..dcd15f0 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,85 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## Project Overview + +**Exchange Data Manager** - Efficiently retrieve and manage financial candlestick data with caching, REST API, and WebSocket support. + +## ⚠️ CRITICAL: Updating Todos, Milestones, and Goals + +**DO NOT edit `todos.md`, `milestones.md`, or `goals.md` files directly.** + +These files are managed by Development Hub which has file watchers and sync logic. Direct edits will be overwritten or cause conflicts. + +**Use the `devhub-tasks` CLI instead:** + +```bash +# Status overview +devhub-tasks status exchange-data-manager + +# Add todos +devhub-tasks todo add exchange-data-manager "Task description" --priority high --milestone M1 + +# Complete todos (by text match or ID number) +devhub-tasks todo complete exchange-data-manager "Task description" +devhub-tasks todo complete exchange-data-manager 3 + +# List todos +devhub-tasks todo list exchange-data-manager + +# Add milestones +devhub-tasks milestone add exchange-data-manager M2 --name "Milestone Name" --target "March 2026" + +# Complete milestones (also completes linked todos) +devhub-tasks milestone complete exchange-data-manager M1 + +# Goals +devhub-tasks goal add exchange-data-manager "Goal description" --priority high +devhub-tasks goal complete exchange-data-manager "Goal description" +``` + +Use `--json` flag for machine-readable output. Run `devhub-tasks --help` for full documentation. + +**Files you CAN edit directly:** `overview.md`, `architecture.md`, `README.md`, and any other docs. + +## Development Commands + +```bash +# Install for development +pip install -e ".[dev]" + +# Run tests +pytest + +# Run a single test +pytest tests/test_file.py::test_name +``` + +## Architecture + +*TODO: Describe the project architecture* + +### Key Modules + +*TODO: List key modules and their purposes* + +### Key Paths + +- **Source code**: `src/exchange-data-manager/` +- **Tests**: `tests/` +- **Documentation**: `docs/` (symlink to project-docs) + +## Documentation + +Documentation lives in `docs/` (symlink to centralized docs system). + +**Before updating docs, read `docs/updating-documentation.md`** for full details on visibility rules and procedures. + +Quick reference: +- Edit files in `docs/` folder +- Use `public: true` frontmatter for public-facing docs +- Use `` / `` to hide sections +- Deploy: `~/PycharmProjects/project-docs/scripts/build-public-docs.sh exchange-data-manager --deploy` + +Do NOT create documentation files directly in this repository. diff --git a/README.md b/README.md new file mode 100644 index 0000000..c66d490 --- /dev/null +++ b/README.md @@ -0,0 +1,39 @@ +# Exchange Data Manager + +Efficiently retrieve and manage financial candlestick data with caching, REST API, and WebSocket support. + +## Installation + +```bash +pip install -e . +``` + +## Usage + +*TODO: Add usage instructions* + +## Documentation + +Full documentation is available at: https://pages.brrd.tech/rob/exchange-data-manager/ + +## Development + +```bash +# Clone the repository +git clone https://gitea.brrd.tech/rob/exchange-data-manager.git +cd exchange-data-manager + +# Create virtual environment +python -m venv .venv +source .venv/bin/activate + +# Install for development +pip install -e ".[dev]" + +# Run tests +pytest +``` + +## License + +*TODO: Add license* diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..17ba3ef --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,23 @@ +[build-system] +requires = ["setuptools>=61.0", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "exchange-data-manager" +version = "0.1.0" +description = "Efficiently retrieve and manage financial candlestick data with caching, REST API, and WebSocket support." +readme = "README.md" +requires-python = ">=3.10" +dependencies = [] + +[project.optional-dependencies] +dev = [ + "pytest>=7.0", + "pytest-cov>=4.0", +] + +[tool.setuptools.packages.find] +where = ["src"] + +[tool.pytest.ini_options] +testpaths = ["tests"]