Metadata-Version: 2.5
Name: isa9000
Version: 0.1.0
Summary: Turn your organization's documents into short, fact-checked podcasts. Self-hosted and white-label.
Project-URL: Homepage, https://girlea.ro
Project-URL: Documentation, https://alexandrugirlea.github.io/isa9000/
Project-URL: Repository, https://github.com/AlexandruGirlea/isa9000
Project-URL: Issues, https://github.com/AlexandruGirlea/isa9000/issues
Project-URL: Changelog, https://github.com/AlexandruGirlea/isa9000/blob/main/CHANGELOG.md
Project-URL: Isabela, https://isabela.girlea.ro
Project-URL: Proof of work, https://devstories.eu
Author: Isabela and Alex @ girlea.ro
License-Expression: Apache-2.0
License-File: LICENSE
License-File: LICENSES/Apache-2.0.txt
License-File: LICENSES/MIT.txt
License-File: LICENSES/OFL-1.1.txt
License-File: NOTICE
License-File: THIRD_PARTY_NOTICES.md
Keywords: corporate-podcast,gemini,internal-communications,onboarding,podcast,summarization,text-to-speech,white-label
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Classifier: Topic :: Office/Business
Requires-Python: >=3.11
Requires-Dist: beautifulsoup4>=4.12
Requires-Dist: google-genai>=1.67
Requires-Dist: jinja2>=3.1
Requires-Dist: lameenc>=1.7
Requires-Dist: pydantic>=2
Requires-Dist: pypdf>=4
Requires-Dist: requests>=2.31
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff==0.17.0; extra == 'dev'
Provides-Extra: ui
Requires-Dist: fastapi>=0.110; extra == 'ui'
Requires-Dist: uvicorn>=0.29; extra == 'ui'
Description-Content-Type: text/markdown

<p align="center">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/AlexandruGirlea/isa9000/main/docs/assets/img/isa9000-hero-dark.png">
    <img src="https://raw.githubusercontent.com/AlexandruGirlea/isa9000/main/docs/assets/img/isa9000-hero-light.png" alt="isa9000" width="180" height="180">
  </picture>
</p>

<h1 align="center">isa9000</h1>

<p align="center">
  <strong>Turn your organization's documents into short, fact-checked podcasts.</strong>
</p>

<p align="center">
  A private audio knowledge base that runs inside your own network, with your
  own branding.
</p>

<p align="center">
  <a href="https://pypi.org/project/isa9000/"><img src="https://img.shields.io/pypi/v/isa9000" alt="PyPI"></a>
  <a href="https://pypi.org/project/isa9000/"><img src="https://img.shields.io/pypi/pyversions/isa9000" alt="Python versions"></a>
  <a href="https://github.com/AlexandruGirlea/isa9000/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-Apache--2.0-blue" alt="Apache-2.0"></a>
  <a href="https://api.reuse.software/info/github.com/AlexandruGirlea/isa9000"><img src="https://api.reuse.software/badge/github.com/AlexandruGirlea/isa9000" alt="REUSE status"></a>
</p>

<p align="center">
  <a href="https://alexandrugirlea.github.io/isa9000/"><strong>Documentation</strong></a>
  ·
  <a href="https://alexandrugirlea.github.io/isa9000/ui.html">Studio</a>
  ·
  <a href="https://alexandrugirlea.github.io/isa9000/cli.html">CLI and Python</a>
  ·
  <a href="https://alexandrugirlea.github.io/isa9000/publishing.html">Website and publishing</a>
  ·
  <a href="https://alexandrugirlea.github.io/isa9000/quality.html">How quality is enforced</a>
</p>

<p align="center">
  <img src="https://raw.githubusercontent.com/AlexandruGirlea/isa9000/main/docs/assets/img/site-home.png" alt="The Internal Audio Knowledge Base built by isa9000" width="900">
</p>

Developed by Isabela and Alex @ [girlea.ro](https://girlea.ro),
from the engine behind [devstories.eu](https://devstories.eu) (more than 60 audio
courses). **Powered by the [Gemini API](https://ai.google.dev/gemini-api/docs).**

If isa9000 is useful to you, please ⭐ [star the repository](https://github.com/AlexandruGirlea/isa9000):
it helps other teams find it.

## Quick start

```bash
pip install "isa9000[ui]"
isa9000 init    # writes isa9000.toml: add a Gemini API key to it
isa9000 ui      # opens the studio at http://127.0.0.1:8790
```

Python 3.11 or newer, on Linux or macOS. Servers and CI only need
`pip install isa9000`.

## How it works

1. **Create.** isa9000 reads the policies, release notes, wikis, PDFs or web
   pages you point it at, plans a short series of episodes, writes each one from
   those sources only, fact-checks every claim, rewrites episodes that a
   listener review scores below 9/10 and draws cover art. Podcasts that pass the
   [quality gate](https://alexandrugirlea.github.io/isa9000/quality.html) are
   recorded straight away; the rest wait for a person to review them.
2. **Publish.** `isa9000 site` builds a static website from your podcasts. Host
   it on any internal web server or storage bucket, by hand or with
   [GitHub Actions](https://alexandrugirlea.github.io/isa9000/publishing.html#automate-with-github-actions).
3. **Listen.** People search, play, read transcripts and share episodes from a
   phone or a desktop.

<p align="center">
  <img src="https://raw.githubusercontent.com/AlexandruGirlea/isa9000/main/docs/assets/img/studio.png" alt="The isa9000 studio" width="900">
</p>

Business users create podcasts in the studio on their own computer and download
the results; developers use the command line, Python and CI. Everything listeners
hear or see, from the narrator to the logo, is a setting.

## Privacy

Only what the models need leaves your machine: your request, the content of
your sources (PDFs are sent as files), the scripts to record and short clips of
each recording for its check. It goes to the Google model endpoints you
configure: the Gemini API, or Vertex AI in your own project. The website is
static files with no server code or tracking. Report vulnerabilities
privately: see [SECURITY.md](https://github.com/AlexandruGirlea/isa9000/blob/main/SECURITY.md).

## License

Apache-2.0: see [LICENSE](https://github.com/AlexandruGirlea/isa9000/blob/main/LICENSE),
[NOTICE](https://github.com/AlexandruGirlea/isa9000/blob/main/NOTICE) and
[THIRD_PARTY_NOTICES.md](https://github.com/AlexandruGirlea/isa9000/blob/main/THIRD_PARTY_NOTICES.md).
Contributions are welcome: see
[CONTRIBUTING.md](https://github.com/AlexandruGirlea/isa9000/blob/main/CONTRIBUTING.md).
Using isa9000 at your organization? Tell us through [girlea.ro](https://girlea.ro).
