Pasal.id
Origins
Pasal.id started from a simple need: read regulations without getting lost in PDFs.
The first version was built during the Claude Code Hackathon, then grew into a public product for searching Indonesian regulations.
Claude Code Hackathon
The first version of Pasal.id was built during the Claude Code Hackathon. The repository linked on this page is the early prototype from that phase.
Public launch
The first public version opened so people could search Indonesian regulations without reading PDFs one by one.
Featured by Kompas
In March 2026, Kompas wrote about how Pasal.id used AI to make access to tens of thousands of regulations easier.
Workflow
This is how legal data moves from source documents into Pasal.id.
The data sources, verification flow, and origin story behind Pasal.id.
Official Sources
We collect regulations from official government publications and state legal documentation sources.
- The authoritative source remains the official document, not a third-party transcription.
- Each regulation page links back to the original source or PDF whenever available.
- Legal status, amendment relationships, and regulation metadata are tracked alongside the primary text.
Parsing Pipeline
Source documents are processed through our internal parser pipeline to extract meaningful legal structure.
- PDFs are converted into structured nodes such as chapters, sections, articles, clauses, explanations, and closing blocks.
- The parser uses heuristics tailored to Indonesian legal documents, including amendment laws and nested structures.
- Parsed output is stored as structured data so each article can be searched, linked, and rendered independently.
Verification & QA
Not all data is treated as final without additional checks.
- Pasal.id distinguishes between automatically parsed output and content that has been verified.
- For golden tests, parser output is compared directly against the source PDF page by page.
- Structural corrections go through audited workflows so updates do not silently alter the document tree.
Legal Status & Amendments
We aim to show legal context, not just raw text.
- Each regulation includes status such as in force, amended, or revoked when relationship data is available.
- Regulation-to-regulation links are used to show amendment history and help readers understand the current legal context.
- For amendment laws, Pasal.id attempts to preserve numbered amendment instructions, embedded articles, and related explanations.
What You Can Check
Each page keeps the source trail, legal status, and correction path visible.
On regulation pages, we try to show not just the text, but also the source basis and context behind it.
Corrections & Updates
If you spot an issue, Pasal.id includes a correction workflow.
- Users can submit correction suggestions directly from article pages.
- Corrections are reviewed before they are applied so document structure stays intact.
- Revision history and structural corrections are preserved for auditability.
Transparency
The early repository, source documents, and correction path can all be inspected from this page.
- The GitHub repository linked here is the original Pasal.id prototype from the Claude Code Hackathon.
- We separate the official source document from the structured layer built by Pasal.id so readers can tell source from processing.
- Internal tests and correction workflows help keep metadata, sitemaps, parsing, and presentation consistent.
- For research and integrations, we also provide a public API and MCP server.
Contact
If you want to report a data issue, ask about methodology, or discuss an integration, email halo@pasal.id.
Email usStart here
Want to inspect an article, try the API, or send a correction?
Use search to read regulations, the API for integrations, or email for anything that needs review.