Skip to content

abondarev-guru/grant-assistant-oss

Repository files navigation

grant-assistant-oss

Open-source AI co-pilot for nonprofits writing grant applications.

License: MIT Status: alpha Built for: nonprofits PRs Welcome

grant-assistant-oss is a developer-friendly toolkit and CLI that helps nonprofits, social enterprises, and CSR teams draft grant applications faster and better — using LLMs that understand donor-specific frameworks instead of producing generic text.

It is built and maintained by contributors from CSR Community, an initiative supporting nonprofit and social-impact organisations across Eastern Europe.


Why this exists

Funders increasingly use AI to screen incoming applications for alignment, evidence of impact, and methodological rigor. As a result:

  • Generic "ChatGPT copy-paste" applications are systematically filtered out.
  • Small NGOs without dedicated grant writers fall behind larger, well-resourced organisations.
  • The same Theory-of-Change, logframe, and M&E plan get re-written from scratch for every donor.

Existing AI-grant-writing tools are closed-source, expensive, and English-only — exactly the audience-funding mismatch that public-interest software should fix.

grant-assistant-oss is the open alternative. It is:

  • Donor-aware — built around the actual application schemas of EU Horizon, USAID, House of Europe, Google.org, EBRD, UN agencies and other public funders.
  • Multi-language by default — English, Ukrainian, Polish, Russian.
  • AI-assisted, not AI-replaced — humans stay in the loop; the tool produces structured drafts, not finished applications.
  • Reusable — every donor template is a YAML file that the community can audit, fork, and improve.

Who is this for

Audience What you get
Nonprofits & NGOs Faster, donor-aligned drafts; reusable Theory-of-Change and logframe scaffolding.
Corporate CSR teams The match command suggests grant programmes that fit a planned CSR initiative — useful when looking for co-funding or NGO partners.
Researchers & academic teams Structured project narratives for science-policy and innovation grants.
Developers A clean, hackable Python library you can embed in your own nonprofit tooling.

Quickstart

Status: alpha. The interfaces below are stable in intent but evolving in implementation.

Install (editable, from source):

git clone https://github.com/abondarev-guru/grant-assistant-oss.git
cd grant-assistant-oss
pip install -e .
export OPENAI_API_KEY=sk-...    # or ANTHROPIC_API_KEY

Draft a grant application from a short brief:

grant-assistant draft \
  --donor house-of-europe \
  --brief examples/brief-edu-initiative.md \
  --language uk \
  --output drafts/hoe-edu-2026.md

Match an existing CSR project to relevant funders:

grant-assistant match \
  --project examples/csr-project-mentorship.md \
  --top 5

Generate a stand-alone logframe / Theory of Change from a problem statement:

grant-assistant logframe \
  --problem "Rural youth in Eastern Europe lack access to digital skills training" \
  --output drafts/logframe.md

Architecture

                  ┌──────────────────────────┐
  brief.md ─────► │      Donor Adapter        │ ──► structured intent (JSON)
                  │  (eu-horizon, usaid, ...) │
                  └────────────┬─────────────┘
                               │
                               ▼
                  ┌──────────────────────────┐
                  │   Section Planners        │
                  │  problem · TOC · logframe │
                  │  budget · M&E · sustain.  │
                  └────────────┬─────────────┘
                               │
                               ▼
                  ┌──────────────────────────┐
                  │   LLM Refinement Layer    │ ◄── donor style guide
                  │   (OpenAI / Anthropic)    │ ◄── language pack
                  └────────────┬─────────────┘
                               │
                               ▼
                  ┌──────────────────────────┐
                  │      Output Composer      │ ──► .md / .docx / .pdf
                  └──────────────────────────┘

Each donor adapter is a YAML+Python pair describing:

  • Required sections and word limits
  • Eligibility checks
  • Style and tone guide (extracted from public funder guidance)
  • A scoring rubric mirroring the funder's published evaluation criteria

See src/grant_assistant/donors/ for the current adapters.


Roadmap

See ROADMAP.md for the full picture. Short version:

  • v0.1 (current) — CLI scaffold, two donor adapters (House of Europe, generic EU project), English drafts.
  • v0.2 — Ukrainian + Polish output, match command, logframe generator.
  • v0.3score command (self-evaluation against donor rubric), 6+ donor adapters.
  • v0.4 — Web UI for non-technical users, integration with Google Docs.
  • v1.0 — Stable API, multi-donor batch mode, audit-trail export.

Contributing

We want contributors of three kinds:

  1. Grant writers and program officers — even if you don't code, you can contribute donor templates and style guides (see docs/contributing-templates.md).
  2. Python developers — pick up any good-first-issue ticket.
  3. Nonprofits piloting the tool — open a feedback issue describing what worked and what did not.

Read CONTRIBUTING.md before opening a PR.


License

MIT. Use it, fork it, ship it. If your nonprofit benefits from this tool, an attribution back to the project helps other organisations find it.


Acknowledgements

  • The CSR Community network of nonprofits and social-impact teams in Eastern Europe.
  • The GitHub Social Impact Digital Public Goods guidance.
  • All contributors who submit donor templates — these are the most valuable asset in the project.

About

Open-source AI co-pilot for nonprofits writing grant applications. Donor-specific templates, theory-of-change scaffolding, multi-language drafts.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages