Voinal / AGENTS.md
GovIndLok
Add contributor guide
a754df9
|
Raw
History Blame Contribute Delete
2.35 kB

A newer version of the Gradio SDK is available: 6.20.0

Upgrade

Repository Guidelines

Project Structure & Module Organization

  • app.py is the Gradio entrypoint. It calls the local Ollama model, runs TTS, and serves the UI on 127.0.0.1:7860.
  • synth.py contains the audio-processing pipeline that transforms a WAV file into the droid-style output.
  • pyproject.toml defines the project metadata and Python version requirement (>=3.12).
  • The repository currently has no dedicated tests/, assets/, or package directories, so keep new modules small and colocated until the structure grows.

Build, Test, and Development Commands

  • python app.py starts the local web app.
  • python synth.py runs the synthesizer against input.wav and writes output.wav for quick audio checks.
  • python -m pip install gradio ollama numpy scipy installs the runtime dependencies used by the current code.
  • There is no formal build step yet; if packaging is added later, keep the command in pyproject.toml and document it here.

Coding Style & Naming Conventions

  • Use standard Python 3.12 style: 4-space indentation, snake_case for functions and variables, and ALL_CAPS only for constants.
  • Prefer short, explicit helper functions over large inline blocks. Keep file names lowercase with underscores when adding modules.
  • Match the existing pragmatic style: minimal abstraction, direct control flow, and comments only where the audio logic is non-obvious.

Testing Guidelines

  • No automated test framework is currently configured.
  • When adding tests, place them under tests/ and name them test_*.py.
  • For now, verify changes manually by running python synth.py and the Gradio app, then confirming the generated WAV plays correctly.

Commit & Pull Request Guidelines

  • Recent commit messages are short, lowercase, and imperative or descriptive, such as add config.toml for Codex git commit settings.
  • Keep commits focused on one change and avoid bundling unrelated refactors.
  • Pull requests should explain the user-visible change, list any local verification performed, and include screenshots or sample audio when UI or sound output changes.

Configuration Notes

  • This app expects a local Ollama server and espeak-ng to be available on the PATH.
  • Temporary WAV files are created during generation and cleaned up automatically; avoid committing generated audio artifacts.