{"id":21831767,"url":"https://github.com/wuespace/delegis","last_synced_at":"2026-02-06T01:38:39.926Z","repository":{"id":227868697,"uuid":"772552924","full_name":"wuespace/delegis","owner":"wuespace","description":"A Typst package and template for drafting legislative content in a German-style structuring, such as for bylaws, etc.","archived":false,"fork":false,"pushed_at":"2025-10-03T10:26:07.000Z","size":1058,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-10-03T12:09:41.780Z","etag":null,"topics":["bylaws","contract","geschaeftsordnung","jura","law","legislation","legislature","satzung","statue","template","typst","typst-package","typst-template"],"latest_commit_sha":null,"homepage":"https://typst.app/universe/package/delegis/","language":"Typst","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wuespace.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-03-15T12:23:28.000Z","updated_at":"2025-10-03T10:25:27.000Z","dependencies_parsed_at":"2024-03-15T15:04:43.579Z","dependency_job_id":"93011faf-1aa7-4374-aa05-d2e14235f59a","html_url":"https://github.com/wuespace/delegis","commit_stats":null,"previous_names":["wuespace/delegis"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/wuespace/delegis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wuespace%2Fdelegis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wuespace%2Fdelegis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wuespace%2Fdelegis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wuespace%2Fdelegis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wuespace","download_url":"https://codeload.github.com/wuespace/delegis/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wuespace%2Fdelegis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29143904,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T01:13:33.096Z","status":"ssl_error","status_checked_at":"2026-02-06T01:11:47.313Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bylaws","contract","geschaeftsordnung","jura","law","legislation","legislature","satzung","statue","template","typst","typst-package","typst-template"],"created_at":"2024-11-27T19:15:29.004Z","updated_at":"2026-02-06T01:38:39.896Z","avatar_url":"https://github.com/wuespace.png","language":"Typst","funding_links":[],"categories":[],"sub_categories":[],"readme":"# delegis\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003cimg src=\"demo-1.png\" alt=\"Page containing a logo at the top-right and a geric (example) title\"\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cimg src=\"demo-2.png\" alt=\"Page containing an outline\"\u003e\u003c/td\u003e\n\u003ctd\u003e\u003cimg src=\"demo-3.png\" alt=\"Page containing a German-style legislative content including a preamble, division titles, sections, paragraph and sentence numbering, etc.\"\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\nA package and template for drafting legislative content in a German-style structuring, such as for bylaws, etc.\n\nWhile the template is designed to be used in German documents, all strings are customizable. You can have a look at the `delegis.typ` to see all available parameters.\n\n## General Usage\n\nWhile this `README.md` gives you a brief overview of the package's usage, we recommend that you use the template (in the `template` folder) as a starting point instead.\n\n### Importing the Package\n\n```typst\n#import \"@preview/delegis:0.4.0\": *\n```\n\n### Initializing the template\n\n```typst\n#show: delegis.with(\n  // Metadata\n  title: \"Vereinsordnung zu ABCDEF\", // title of the law/bylaw/...\n  abbreviation: \"ABCDEFVO\", // abbreviation of the law/bylaw/... (can be none)\n  resolution: \"3. Beschluss des Vorstands vom 24.01.2024\", // resolution number and date\n  in-effect: \"24.01.2024\", // date when it comes into effect\n  draft: false, // whether this is a draft\n  // Template\n  logo: image(\"wuespace.jpg\", alt: \"WüSpace e. V.\"), // logo of the organization, shown on the first page\n)\n```\n\n### Sections\n\nSections are auto-detected as long as they follow the pattern `§ 1 ...` or `§ 1a ...` in its own paragraph:\n\n```typst\n§ 1 Geltungsbereich\n\n(1) \nDiese Ordnung gilt für alle Mitglieder des Vereins.\n\n(2) \nSie regelt die Mitgliedschaft im Verein.\n\n§ 2 Mitgliedschaft\n\n(1) \nDie Mitgliedschaft im Verein ist freiwillig.\n\n(2) \nSie kann jederzeit gekündigt werden.\n\n§ 2a Ehrenmitgliedschaft\n\n(1) \nDie Ehrenmitgliedschaft wird durch den Vorstand verliehen.\n```\n\nAlternatively (or if you want to use special characters otherwise not supported, such as `*`), you can also use the `#section[number][title]` function:\n\n```typst\n#section[§ 3][Administrator*innen]\n```\n\n### Hierarchical Divisions\n\nIf you want to add more structure to your sections, you can use normal Typst headings. Note that only the level 6 headings are reserved for the section numbers:\n\n```typst\n= Allgemeine Bestimmungen\n\n§ 1 ABC\n\n§ 2 DEF\n\n= Besondere Bestimmungen\n\n§ 3 GHI\n\n§ 4 JKL\n```\n\nDelegis will automatically use a numbering scheme for the divisions that is in line with the \"Handbuch der Rechtsförmlichkeit\", Rn. 379 f. If you want to customize the division titles, you can do so by setting the `division-prefixes` parameter in the `delegis` function:\n\n```typst\n#show: delegis.with(\n  division-prefixes: (\"Teil\", \"Kapitel\", \"Abschnitt\", \"Unterabschnitt\")\n)\n```\n\n### Sentence Numbering\n\nIf a paragraph contains multiple sentences, you can number them by adding a `#s~` at the beginning of the sentences:\n\n```typst\n§ 3 Mitgliedsbeiträge\n\n#s~Die Mitgliedsbeiträge sind monatlich zu entrichten.\n#s~Sie sind bis zum 5. des Folgemonats zu zahlen.\n```\n\nThis automatically adds corresponding sentence numbers in superscript.\n\n### Referencing other Sections\n\nReferencing works manually by specifying the section number. While automations would be feasible, we have found that in practice, they're not as useful as they might seem for legislative documents.\n\nIn some cases, referencing sections using `§ X` could be mis-interpreted as a new section. To avoid this, use the non-breaking space character `~` between the `§` and the number:\n\n```typst\n§ 5 Inkrafttreten\n\nDiese Ordnung tritt am 24.01.2024 in Kraft. §~4 bleibt unberührt.\n```\n\n## Changelog\n\n### v0.4.0\n\n#### Features\n\n- Improve heading levels to follow accessibility best practices (no longer skipping levels)\n- Make the `abbreviation` metadata field optional (can be `none` now)\n\n#### Bug Fixes\n\n- Fix sentence numbering for newer Typst versions (that require `context` for the numbering to work properly)\n\n### v0.3.0\n\n#### Features\n\n- Adjust numbered list / enumeration numbering to be in line with \"Handbuch der Rechtsförmlichkeit\", Rn. 374\n- Make division titles (e.g., \"Part\", \"Chapter\", \"Division\") customizable and conform to the \"Handbuch der Rechtsförmlichkeit\", Rn. 379 f.\n\n### v0.2.0\n\n#### Features\n\n- Add `#metadata` fields for usage with `typst query`. You can now use `typst query file.typ \"\u003cfield\u003e\" --field value --one` with `\u003cfield\u003e` being one of the following to query metadata fields in the command line:\n  - `\u003ctitle\u003e`\n  - `\u003cabbreviation\u003e`\n  - `\u003cresolution\u003e`\n  - `\u003cin-effect\u003e`\n- Add `#section[§ 1][ABC]` function to enable previously unsupported special chars (such as `*`) in section headings. Note that this was previously possible using `#unnumbered[§ 1\\ ABC]`, but the new function adds a semantically better-fitting alternative to this fix.\n- Improve heading style rules. This also fixes an incompatibility with `pandoc`, meaning it's now possible to use `pandoc` to convert delegis documents to HTML, etc.\n- Set the footnote numbering to `[1]` to not collide with sentence numbers.\n\n#### Bug Fixes\n\n- Fix a typo in the `str-draft` variable name that lead to draft documents resulting in a syntax error.\n- Fix hyphenation issues with the abbreviation on the title page (hyphenation between the parentheses and the abbreviation itself)\n\n### v0.1.0\n\nInitial Release\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwuespace%2Fdelegis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwuespace%2Fdelegis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwuespace%2Fdelegis/lists"}