A public-source accountability intelligence system designed to make sexual violence harder to hide.
RapistOps connects publicly available reports, records, evidence, people, cases, and institutions so information that might otherwise disappear can be found, connected, and tracked.
RapistOps is being developed to organize information about sexual violence across publicly available and otherwise lawfully accessible sources.
The system is designed to preserve the distinction between:
- A report being made
- An investigation occurring
- A person being charged
- A case being dismissed
- An acquittal
- A conviction
- Other documented outcomes
A lack of conviction does not mean a report or record never existed. RapistOps is intended to preserve those distinctions rather than reducing every case to a simple convicted/not-convicted classification.
How can we preserve, connect, and analyze fragmented information about sexual violence so that survivors are not dependent on a single institutional outcome for their experiences to remain visible, traceable, and accountable?
How can a software system transform fragmented, heterogeneous, and changing records into a traceable network of evidence, entities, relationships, and outcomes without collapsing uncertainty or documented claims into unsupported conclusions?
How can we engineer an accountability system that preserves survivors' documented experiences, connects fragmented records, and makes the resulting evidence and institutional history traceable over time?
The long-term system is intended to support:
- Public-source data collection
- Evidence and record preservation
- Source provenance
- People and entity records
- Case and event records
- Institutional records
- Relationship mapping
- Status and case-history tracking
- Temporal change tracking
- Search and analysis
- APIs
- Web-based access
- Automated source monitoring
Volume 1 focuses on building the first complete working version of the core system.
The initial pipeline is:
- Public Source
- Import
- Preserve
- Structure
- Connect
- Store
- Search
- Display
Volume 1 will establish the foundation needed for the larger RapistOps system without attempting to implement the entire long-term vision at once.
Initial technology stack:
- Python 3.12
- PostgreSQL
- FastAPI
- Pydantic
- httpx
- BeautifulSoup
- pytest
- Docker
- Git
- React
- TypeScript
Additional technologies may be introduced when the project's requirements justify them.
RapistOps is being developed incrementally.
The project follows a roadmap-driven approach:
- Define the complete system in the Master Roadmap.
- Define the bounded Volume 1 scope.
- Build and test one phase at a time.
- Expand only when the requirements call for it.
Version: 0.1.0 Development status: Early development
RapistOps/ src/ tests/ data/ docs/ notes/ README.md .gitignore pyproject.toml
RapistOps is intended to work with publicly available or otherwise lawfully accessible information.
The system should preserve source provenance, distinguish documented facts from allegations or claims, and avoid presenting unverified information as established fact.
Information should be represented with enough context to understand where it came from, what it documents, and what its recorded status is.
See LICENSE.
RapistOps is intended for lawful public-source research, documentation, and accountability work.
The project is designed around the following principles:
- Use publicly available or otherwise lawfully accessible information.
- Preserve source provenance and context.
- Clearly distinguish allegations, reports, claims, investigations, charges, and adjudicated outcomes.
- Do not present unverified claims as established facts.
- Collect only information necessary for the system's documented purpose.
- Avoid exposing unnecessary sensitive personal information.
- Use the least precise geographic information necessary for a given purpose.
- Do not use RapistOps to facilitate harassment, threats, stalking, doxxing, or retaliation.
- Build appropriate access controls, auditing, and abuse-prevention measures as the system develops.
- Respect applicable laws, regulations, source terms, and access restrictions.
Safety and privacy requirements are part of the system architecture and will evolve alongside the project.