Skip to content

Feat/init project - #1

Merged
bartrosa merged 4 commits into
mainfrom
feat/init-project
May 3, 2026
Merged

Feat/init project#1
bartrosa merged 4 commits into
mainfrom
feat/init-project

Conversation

@bartrosa

@bartrosa bartrosa commented May 3, 2026

Copy link
Copy Markdown
Owner

Summary

This PR adds the initial scaffold for bigos, a high-level document ingestion library aimed at RAG pipelines. Scope is foundation-only: packaging layout, developer tooling, CI, and documentation—no domain ingestion logic yet.

What’s included

  • Packaging: pyproject.toml with Hatchling, requires-python >= 3.11, Apache-2.0, empty runtime dependencies, and a dev dependency group (pytest, pytest-asyncio, pytest-cov, ruff, mypy, hypothesis).
  • Layout: src/bigos/ package with __version__, plus tests/test_smoke.py asserting the public version string.
  • Tooling: Ruff, mypy (strict), pytest (asyncio auto mode), and coverage configured in pyproject.toml.
  • CI: GitHub Actions workflow running on push to main and pull requests, matrix Python 3.11 & 3.12, using uv for sync and running ruff (check + format), mypy, and pytest with coverage.
  • Docs / meta: README.md (status + quickstart), CHANGELOG.md entry for 0.0.1.dev0, and .gitignore updates (e.g. macOS, .vscode/).
  • Reproducible installs: uv.lock committed for consistent resolution in CI and locally.
  • Local git: .githooks/commit-msg (conventional/structured commit message checks) for those who wire hooks locally.

How to verify

uv sync && uv run ruff check . && uv run ruff format --check . && uv run mypy src/ && uv run pytest --cov

Notes

  • Public API is intentionally minimal (__version__ only) until APIs stabilize.
  • Update the CI badge in README.md once the repository path is final (OWNER/REPO).

Add .gitignore entries for .context/, .cursorrules, and .cursor/rules/ so
local notes and personal Cursor configuration stay out of version control.

Made-with: Cursor
- Introduced a commit-msg hook to enforce Conventional Commits format.
- Added __init__.py to define the package version as "0.0.1.dev0".
- Created a smoke test to verify the package import and version.
- Updated .gitignore to include macOS and Visual Studio Code files.
- Added pyproject.toml for project metadata and dependency management.
- Introduced uv.lock for dependency resolution.
- Created CI workflow in GitHub Actions for automated testing and linting.
- Created CHANGELOG.md to document notable changes and adhere to Semantic Versioning.
- Expanded README.md with project description, status, quickstart instructions, and CI badge.
@bartrosa
bartrosa merged commit a6c6444 into main May 3, 2026
2 checks passed
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.

1 participant