Grant money in Australia is genuinely available and genuinely hard to find. The registers are public, they are in incompatible formats, they change without notice, and eligibility is written to be legally exact rather than readable.
The sources
A plugin per register, each with its own audit specification and a refresh schedule:
- GrantConnect — the federal register
- business.gov.au
- State boards — Business Victoria, NSW Grants, Queensland DSD
Where a source has no usable feed it is read from the page. The extractor for those pages is itself generated: a model is shown a sample page and derives the selectors, which are then saved and reused by every subsequent refresh. So the model is paid for once per site, not once per grant.
Search that is a search index
The active catalogue is held in a dedicated Lucene index, rebuilt atomically and hot-swapped so a refresh never serves a half-built index. Refreshes are coalesced rather than queued, so a burst of updates costs one rebuild.
Plain-English eligibility, cheaply
Each grant gets a summary and an eligibility explanation you can actually read. These are hash-gated: a refresh that returns the same grant unchanged costs nothing, because the content hash matched and the existing summary stands.
Your profile is never sent to the model. Matching your organisation against a grant is done against the summarised grant, locally. The model sees public grant text and nothing else.
Matching against your profile
Set an organisation profile once and the catalogue is scored against it, so the question changes from “what grants exist” — thousands — to “which of these could we actually apply for”.