10 existing systems
Official documentation, repositories, licenses, API scope, exports, operating limits and dated maintenance observations.
Download provider dossiersConnect the promise, the work, the evidence and the next decision. Begin with a complete workflow, learn with charities and keep a clear way to leave.
Editorial draft · Updated October 27, 2026 · AI-assisted research and engineering. The shared foundation is implemented; pilot adoption and later gates remain open.
Official documentation, repositories, licenses, API scope, exports, operating limits and dated maintenance observations.
Download provider dossiersNeeds reported in nonprofit and technical communities. A purposive sample, with no claim to represent all charities.
Download the needs registerProposed pilot: program → grant application → obligations → work → evidence → report. Architecture comparison and user validation come first.
Read or propose changes on GitHubAI-assisted review of official documentation, source repositories and public maintenance records. This is a bounded planning sample of ten systems, not a complete market census or a product endorsement.
A documented feature has not been tested here. Unknown does not mean absent. Source-code licenses and supported versions need checking before reuse.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Documentation and repository inspection only; no installation, account purchase, product security audit or end-to-end integration test. Checked 2026-10-25. Review: draft.
Purposive desktop research in public Reddit, Frappe Forum and Hacker News discussions. These are self-reported needs, not interviews or a representative survey. Provider promotion, removed original posts and claims about product performance were excluded from the synthesis. Dates are indexed publication dates where available; null means the opened page did not establish an exact date. No usernames, contact details or beneficiary records are reproduced.
Showing 20 discussions.
2024-03-27 · Checked 2026-10-25
A volunteer supporting a museum describes replacing an old custom intranet.
volunteers · cost · portals
2024-02-13 · Checked 2026-10-25
A coordinator organizes availability through individual email replies and a spreadsheet.
volunteers · scheduling · communications
2025-11-03 · Checked 2026-10-25
A volunteer-run service distributes clothing by appointment.
services · scheduling · privacy
2026-06-03 · Checked 2026-10-25
An administrator describes a program with overnight and returning volunteers.
volunteers · attendance · safeguarding
2024-08-25 · Checked 2026-10-25
A volunteer is asked to allocate an expense category across multiple grants.
grants · finance · restrictions
2024-10-14 · Checked 2026-10-25
A grant writer asks how others organize information. Replies describe reusable text, metrics, attachments and staged folders.
grants · documents · handover
Exact publication date not established · Checked 2026-10-25
A self-described executive director asks about time spent assembling impact reports.
evidence · reporting · data-quality
2026-05-27 · Checked 2026-10-25
A team considering a CRM change asks about migration risk. Replies emphasize cleanup, processes and training.
migration · training · data-quality
2026-01-15 · Checked 2026-10-25
A small assistance team describes paper approvals and limited structured reporting.
services · approvals · reporting
2025-11-05 · Checked 2026-10-25
A small service program asks to replace PDF referrals and spreadsheet tracking.
services · privacy · integrations
2025-06-26 · Checked 2026-10-25
A staff member describes pressure to replace a CRM connected to many other systems.
migration · integrations · cost
2026-06-21 · Checked 2026-10-25
A small team seeks affordable accounting. A reply raises language and audit-trail concerns.
finance · cost · audit
2023-03-02 · Checked 2026-10-25
Program managers seek budget dashboards. A reply describes combining financial, volunteer and service indicators manually.
reporting · integrations · evidence
2024-11-04 · Checked 2026-10-25
A requester wants tasks, project spending and grant funding in one planning view.
projects · finance · grants
Exact publication date not established · Checked 2026-10-25
An accounting discussion describes repeated manual budget entry for multiple grants.
finance · grants · migration
2017-09-04 · Checked 2026-10-25
An open design discussion gathers nonprofit requirements; it is historical, not evidence that the requested features were delivered.
memberships · volunteers · modularity
2018-02-01 · Checked 2026-10-25
A user questions required email, renewal reminders and the connection between membership payment and accounting.
memberships · accessibility · finance
2025-02-25 · Checked 2026-10-25
A prospective implementer asks about income/expense terminology and workflows.
finance · usability · integrations
Exact publication date not established · Checked 2026-10-25
An infrastructure volunteer asks about CRM maintenance by an outside implementer.
maintenance · cost · training
Exact publication date not established · Checked 2026-10-25
A helper describes volunteer records scattered across paper and spreadsheets.
volunteers · usability · migration
No discussions match these filters. Try another topic or clear the search.
Editorial draft · Research dated October 25, 2026; implementation reconciliation October 27, 2026. AI-assisted research and engineering. No pilot organizations have tested the system. The original proposal remains below so its acceptance gates stay visible.
Build a modular operating and learning workspace for charities, beginning with a small shared program-and-grant workflow. Connect to established systems where they already do the job. Before selecting the shared architecture, run the same pilot scenario against an integration with CiviCRM and a small Charitology-owned workspace. Keep the current local workspace available and make migration optional.
This recommendation is a design hypothesis. Public discussions support investigating fragmented records, repetitive reporting, grant restrictions, scheduling and migration burden. They do not establish market size, willingness to pay or that another application will improve outcomes. A useful OS should reduce repeated administration while making decisions, uncertainty and feedback easier to inspect.
Charitology studies charity as a system. The OS should connect a program’s resources, work, intended change, evidence and decisions. It must accommodate relief, repair, prevention, structure and source without treating depth as a grade. It must let communities challenge assumptions without publishing personal service histories. It must not turn incomplete data into ratings of named charities.
The shared Charity OS implements the organization foundation in services/charity-os/: passwordless accounts, invitations, eight roles, program scopes, 26 typed modules, linked records, revision checks, independent approvals, approved reader snapshots, files, generic frozen reports, recoverable trash and validated export/restore. The current registry contains 339 fields. Read-only CiviCRM, OpenProject, Kobo and CSV connections require explicit setup and import previews. Personal reminders run after their due time in a daily dispatch. Manual recurring task drafts are deployed: an authorized member explicitly previews and generates one unapproved weekly, monthly or quarterly successor. This is separate from recurring participant bookings or scheduled automatic task generation.
The new bounded grant-report implementation adds a complete source-derived preparation/approval/preview/freeze path for one agreement, one explicit program and one inclusive period. It separates awards, receipts, cash-spent references and planning context; preserves unknown amounts and individual observations without inferring causation; binds exact current independent source approvals; and stores a scoped board projection separately from private staff sources. Corrections append immutable editions, and recovered reports remain private source provenance. Focused model/service and isolated constrained-Postgres tests passed with synthetic approvals and injected identities. The grant-report release promoted runtime c9750a92f0ac6d5f2b717875f5e0a85f08e98edb as dpl_6FZTpTgrSCfiJcsPazysjGdNfW5D. Exact release CI, 29 staged/30 public-origin checks and production isolation inspection passed. Controlled actual Chrome used fictional Better Auth accounts for preparation, separate-account API approval, freeze, downloaded JSON/checksum verification, print preview, board privacy, stale-source rejection and logout. Narrow-screen browser acceptance, independent review, accountant mapping and a real reporting-cycle pilot remain open; no physical print or saved PDF is established. See the acceptance record for exact scope. This does not close the Phase 2 pilot gate.
The implementation has domain and browser-model regressions and a real Postgres/Better Auth scenario using separate owner and constrained runtime roles, synthetic recipients and mocked delivery. Those checks do not establish user adoption, independent security review, successful connections to a pilot’s actual systems or improved charitable outcomes. The service guide describes exact behavior and limits.
The deployed service also implements bounded public operational intake: a standalone approved/version-bound form, explicit consent, private administrator queue, status/withdrawal receipt, separate staff review and draft conversion, and answer erasure. Restored publications and receipt capabilities stay inactive. Exact-commit CI, production inspection of both new forced-RLS tables and controlled synthetic Chrome/isolated-database checks support this scope; PUBLIC_PARTICIPATION.md records the deployment and evidence limits. The browser administrator fixture used explicitly fake authentication, not an actual sign-in or human approval. No participant adoption or production form publication is claimed. The retention date closes collection for review, not automatic answer deletion. Erasure cannot remove separate contacts/drafts, historical source archives or downloaded copies.
The deployed participant self-service follow-up implements explicit receipt-plus-verified-email claims, an own-only portal, pending corrections and separate withdrawal/erasure/unlink actions; its acceptance record tracks verification and deployment. The bounded confirmed-booking/waitlist follow-up is deployed; its acceptance record records consent, capacity, legacy reconciliation and separate cancellation.
Staff group bookings are deployed in the shared OS. Staff review 2–10 existing requests for one occurrence, keeping each person’s consent and approval checks separate. They can explicitly choose a smaller subset; capacity and overlap are checked for the complete selection, with no places reserved if that admission fails. Groups grant no household or coordinator authority. The acceptance record separates software verification from actual participant use and charity pilots.
The participation delivery implementation adds fresh participation-email-v1 consent bound to the verified own-linked recipient, exact administrator review/activation of at most 20 current confirmations, and a fixed generic notice linking only to the private signed-in portal. It never flushes historical paused events, copies sensitive request/occurrence details into mail or changes newsletter consent. The daily dispatcher shares 20 selected jobs/status operations and 45 seconds with existing operational jobs. Unknown attempts remain status-only; restored policies and intents have no delivery authority.
CI for 3913166 passed 188 OS unit/browser-model checks, 60 actual OS PostgreSQL checks, 75 mail unit checks, 9 mail PostgreSQL checks and the 447-page static build. A separate controlled test exercised the actual OS transport→relay→Resend path to the owned inbox: HTML/plain text, passing DKIM, signed sent/delivered feedback and a stable-key repeat without another email. The newsletter remained unsubscribed for that owner and Edition 1 stayed unchanged. Browser outbox checks used injected transport; the actual inbox test did not establish a production participant, access grant or end-to-end participant booking. Final general-recipient deployments and configuration are recorded in the delivery acceptance record.
Broader participant operations and staff communications, automatic recurring gifts, a certified ledger/payroll system, two-way provider synchronization and specialist case handling remain open. Phases 3–5 below retain those gates. No consented pilot or architecture comparison with an operating CiviCRM installation has occurred. Neither typed modules, public request forms nor a controlled email test establish staffed operations or actual human review.
The current Charity OS stores organization context, projects, grant stages, tasks and observations in one browser. It supports editing, deletion, undo, search, filters and validated JSON backups plus CSV export. It has storage-error and conflicting-tab notices.
The local workspace has no shared accounts or background reminders. Its JSON export can be previewed in an empty shared organization. Conversion preserves the source file privately and creates draft records; descriptive owner labels and local evidence labels do not become accounts or independent approvals. Neither workspace moves money, posts an accounting ledger or stores private case narratives.
The public research desk publishes a provider matrix, a 20-discussion needs register and this plan at the OS planning page. Each observation links to its primary discussion. Provider claims link to official documentation or repositories. Repository status, prices and features are dated snapshots, not independent product tests. An unknown feature is not recorded as absent.
The discussion sample is purposive and predominantly English-language. It overrepresents people who seek technical help and may contain promotional replies. Removed original posts were excluded; vendor comments were not used as product verification. No people were contacted, no private communities were accessed and no user identity or beneficiary records are reproduced. A thread is one observation even when it has many replies. Repeated themes are signals for interviews, not estimates of prevalence.
| Proposed requirement | Supporting observations | Design implication |
|---|---|---|
| Flexible volunteer schedules and participation history | U01–U04, U20 | Partial shifts, capacity, overnight attendance and a simple portal need explicit scenarios. |
| Grant workflow beyond a deadline list | U05, U06, U14, U15 | Connect application versions, approvals, restrictions, commitments and reporting deadlines. |
| Reusable reports from defined data | U07, U09, U13 | Preserve units, dates, denominators, sources and missingness; reports need traceable inputs. |
| A migration and adoption process | U08, U11, U19, U20 | Preview imports, reconcile totals, keep a rollback and train multiple administrators. |
| Controlled sensitive service records | U03, U09, U10 | Separate restricted case systems from general operations; specialist review precedes real service data. |
| Affordable modular operation | U01, U11, U12, U16, U19 | Publish total operating costs and allow one module to work with the organization’s existing tools. |
| Nonprofit language and offline inclusion | U12, U17, U18 | People without email must still be representable; a planning status must not imply payment settlement. |
These links identify evidence for investigation. They do not validate a finished solution.
Proposed first users are a small charity’s program lead, grant coordinator and operations administrator, plus a board reader and a community adviser. Pilot recruitment is still open. Seek three organizations with different contexts: a volunteer-led local service, a grant-funded program and a membership or advocacy organization. Include at least one team with low technical support and one low-bandwidth workflow. Staff size is not yet a product limit.
Before recruitment, agree on who owns hosting, support, privacy decisions and the recurring budget. Ask participants for consent to research their workflows. Use synthetic records for the architecture comparison. Do not request beneficiary histories in public issues or pull requests.
Do not ask only which features people want. Observe a workflow and test whether the proposed change removes work.
The list below preserves the ambition without pretending that every module belongs in the first release. “Connect” means evaluate an integration; it does not claim an existing connector.
| Module | Proposed scope | Initial approach |
|---|---|---|
| Organization and access | Organizations, teams, invitations, roles, scoped permissions, account recovery, administrator handover | Shared foundation |
| Mission and program design | System map, theory of change, stakeholders, optional depth hypotheses, assumptions and decision records | Build on current workspace |
| Projects and tasks | Owners, dependencies, recurring work, milestones, board/calendar views and review dates | Extend current workspace; compare an OpenProject connection |
| Grant seeking | Prospects, eligibility, deadlines, application text, attachments, approvals and immutable submission snapshots | First shared workflow |
| Grant delivery | Agreements, restrictions, budget lines, commitments, reporting periods, amendments and renewals | Second workflow; accountant review |
| Finance planning | Budgets, scenarios, currency, allocation factors, capped proposed allocations and budget-to-actual reconciliation | Planning plus ledger integration |
| Accounting and payroll | General ledger, bank reconciliation, statutory accounts, tax and payroll | Connect to specialist systems; no replacement claim |
| Contacts and relationships | Organizations, people, households, multiple roles, deduplication, preferences and interaction history | Evaluate CiviCRM integration before a new CRM |
| Giving and fundraising | Campaigns, pledges, recurring gifts, acknowledgments, restricted gifts and reconciliation | Connect to fundraising/payment systems |
| Memberships | Types, renewal windows, dues, chapters, offline members and member directories by explicit choice | Evaluate CiviCRM or association tooling |
| Volunteers | Interests, skills, onboarding, training, availability, capacity, shift exchanges and hours | Dedicated pilot after shared core |
| Events and learning | Sessions, capacity, registration, access needs, calendar export, attendance and follow-up | Connect or build a narrow scheduling module |
| Communications | Consent by purpose, templates, approvals, suppression, double opt-in, delivery events and unsubscribe | Use established mail delivery |
| Forms and intake | Validated forms, versions, consent, accessible alternatives and optional offline capture | Evaluate KoboToolbox for field collection |
| Service delivery and casework | Referrals, requests, restricted notes, approvals, appointments and service records | Separate specialist integration and review gate |
| Evidence and outcomes | Indicator definitions, periods, units, denominators, sources, missing data, harms and interpretation | Charitology learning layer |
| Community feedback | Accessible feedback routes, consent, anonymous options, response ownership and published changes | Co-design before launch |
| Evaluation and learning | Review questions, evidence grades, counterfactual assumptions, experiment protocols and decision follow-up | Connect existing Charitology instruments |
| Reporting | Funder templates, board packs, reporting periods, frozen outputs and source-to-cell traceability | Reusable reports before visual polish |
| Governance | Board meetings, decisions, conflicts, approval policies, delegation and public transparency exports | Restricted governance workspace |
| Documents and knowledge | Versioned files, retention classes, program handbooks, search and handover guides | Integrate document storage; no public uploads by default |
| People and safeguarding | Training and screening completion references, responsibility and escalation routes | Restricted status records; specialist systems retain reports |
| Assets and supplies | Equipment, stock, in-kind contributions, procurement and program use | Later connector or module |
| Resource discovery | Tools, nonprofit benefits, eligibility review dates and renewal reminders | Connect existing Charitology directories |
| Data and integrations | Mapping, import previews, exports, API scopes, signed webhooks, deduplication and synchronization jobs | Required from the first shared release |
| Administration and reliability | Audit events, support, backup/restore, incident response, accessibility, localization and cost limits | Release requirements, not optional extras |
The research matrix is the inventory for the decision. A broad marketing feature list is not enough to select a foundation. Test exact import, permission, export and restore scenarios in a supported version.
Run two bounded architecture spikes before committing to a platform:
Evaluate KoboToolbox as a field-data source and OpenProject as a project source. Evaluate a specialized case system only when a pilot actually needs casework and can meet its operating requirements. Association tools and existing donation platforms may remain the system of record in their domains.
The spike comparison uses the same records, roles and report. Record installation steps, supported versions, hosting needs, export completeness, duplicate handling, permission behavior, administrator time and an upgrade rehearsal. Select a foundation only after the comparison. License compatibility requires repository- and file-level review; a product appearing in the matrix is not permission to copy it.
The implemented foundation uses a separate Node service, Postgres and Better Auth, with a constrained database role and row-level security. The public Astro site stays on its current static host. Put the shared application and API behind a separate deployment so private data cannot enter the public build, search index, feeds or static API.
Use a relational store for relationships and transactions, a private object store for files and a durable job queue for notifications and connectors. Exact providers remain undecided pending the spikes and operating budget. Use managed identity rather than building password security. Enforce organization scope on the server and database, not only through hidden buttons.
Every private record has an organization identifier, stable opaque ID, creation/update metadata and a revision. Proposed entities are Organization, Membership, RoleGrant, Program, Task, GrantOpportunity, ApplicationVersion, GrantAgreement, Restriction, BudgetLine, Commitment, MetricDefinition, Observation, EvidenceSource, Decision, FeedbackCase, DocumentVersion, Consent, Connector, SyncRun, Notification and AuditEvent. Contact and FinancialTransaction are references when another system owns them.
Store money in integer minor units with an explicit currency and supported currency precision. Do not sum unlike currencies. Store dates as dates and actual instants with time zones. A grant’s deadline has a named time zone. Unknown measurements stay null; zero is a measured value. Observations retain value, unit, denominator, period, geography, source, collection method, evidence status and known limitations. A source-linked observation is not proof of causation.
Track who owns each field in a connector. An external update must not overwrite a locally reviewed value silently. Conflicts go into a queue with a source and proposed resolution. Repeat deliveries are idempotent. Imports have a preview, row-level failures, duplicate choices and reconciliation totals before commit. Keep an export and an import journal so rollback is possible.
Proposed roles are owner, administrator, program lead, grants lead, finance reviewer, contributor, board reader and external reviewer. Permissions are further scoped by program and data category. A volunteer should see their own assignments without receiving the donor database. A board reader receives approved reports rather than unrestricted case access. Export and public publication require distinct permissions.
Keep audit history for invitations, role changes, record changes, approvals, exports, integration activity and deletion actions. Store the minimum information needed to explain an event; do not place secret tokens or sensitive case text in logs. Corrections append a reason and preserve the prior approved version. Retention and deletion rules must account for both privacy needs and an organization’s actual obligations, with human review where necessary.
Phases are ordered by dependency, not promised dates. Each ships a complete workflow with a way to leave. Detailed implementation estimates follow the spikes.
Create two synthetic organizations. Invite a lead, finance reviewer, contributor and board reader. Add a program with an optional depth hypothesis. Import a spreadsheet containing a duplicate, a malformed date and an unknown measurement. Resolve the duplicate and reject invalid rows without losing accepted records.
Create a grant with two deadlines in a named time zone, an application approval and a submitted snapshot. Record an award separately from its receipt. Link a restricted budget and proposed allocation. Correct an observation with a reason. Produce a report showing the value, denominator, period, source and unmeasured fields. Verify the board reader cannot open restricted files.
Schedule a partial volunteer shift crossing midnight, cancel it and reassign it without double-counting attendance. Revoke a user and test the old session. Repeat a notification webhook and an import to confirm no duplicate effect. Simulate a provider outage and recover the job. Export the organization, restore it in a fresh environment and reconcile record counts, relationships, attachments and money. Verify no private data appeared in the public site or logs.
Agree the target with pilots after measuring a baseline. Track time per grant/report cycle, repeated data entry, missed handoffs, corrections needed, restore success, access incidents, adoption by role and total operating cost. Ask staff whether workload shifted to an unpaid administrator. Ask community advisers whether they can challenge a decision and see a response. Publish only consented aggregate findings. A favorable software metric is not evidence of improved social outcomes.
Budget for hosting, identity, database, files, backups, mail, monitoring, connector limits and specialist support. Also budget for migration, training, accessibility, security review and upgrades. Current provider prices in the research matrix are snapshots; calculate a pilot’s actual users, contacts, records, files and mail volumes before approving spending. Set usage alerts and a ceiling where supported. Do not call self-hosted software cost-free merely because its license has no fee.
Before a shared pilot, name a technical maintainer and an organization administrator, document an incident contact route, set recovery targets and rehearse backup restoration. Review whether a second person can upgrade or restore the system. A system that only one volunteer understands has not finished its handover.
Recovery and manual task recurrence do not close the original mega list or all OS phases. The following priorities identify concrete software follow-ups; they do not supply operating partners, reviewed findings or provider authority. Each needs its own bounded design and acceptance record.
Cause Census, Atlas and Gap Map also need genuinely sourced cause/geography funding and comparable-need observations with compatible periods, units and visible coverage. The published observation layer provides country context and a bounded historical financial slice, not global allocation. Selecting definitions, collecting sources and reviewing classifications remain research work alongside any software expansion. Independent source/security/accessibility review, real organizational pilots, actual provider contracts and outstanding native-file acceptance retain their separate gates.
The shared implementation is available for controlled evaluation. Continue the uncompleted pilot, provider-connection, broader participation/communications and independent-review gates above, including real organizational intake use and comprehensive accessibility acceptance. The bounded booking and delivery follow-ups do not complete phases 3–5 or establish adoption, human approval or charitable outcomes.
Suggest a workflow or challenge the plan
Please describe workflows with fictional or redacted examples. Public issues are not a place for personal service records.