{"id":31724931,"url":"https://github.com/upvalue/litsdoc","last_synced_at":"2026-02-17T18:33:05.165Z","repository":{"id":316483967,"uuid":"1063579169","full_name":"upvalue/litsdoc","owner":"upvalue","description":"literate programming tool using tree-sitter","archived":false,"fork":false,"pushed_at":"2025-09-24T21:18:26.000Z","size":139,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-09T05:16:23.608Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/upvalue.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-09-24T20:31:59.000Z","updated_at":"2025-09-24T21:18:32.000Z","dependencies_parsed_at":"2025-09-26T00:32:44.960Z","dependency_job_id":null,"html_url":"https://github.com/upvalue/litsdoc","commit_stats":null,"previous_names":["upvalue/litsdoc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/upvalue/litsdoc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upvalue%2Flitsdoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upvalue%2Flitsdoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upvalue%2Flitsdoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upvalue%2Flitsdoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/upvalue","download_url":"https://codeload.github.com/upvalue/litsdoc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upvalue%2Flitsdoc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29552795,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T18:16:07.221Z","status":"ssl_error","status_checked_at":"2026-02-17T18:16:04.782Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":[],"created_at":"2025-10-09T05:16:22.062Z","updated_at":"2026-02-17T18:33:00.153Z","avatar_url":"https://github.com/upvalue.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# litsdoc\n\nThis is a tool that allows you to generate literate programming documentation for your code. It uses\ntree-sitter to parse most source code and reliably find comments.\n\nIt's 99.9% vibe coded so approach with caution.\n\nIt's an inverted tool -\u003e You write markdown in comments in code files, invoke the tool with the\norder you want to process files in, and then you get an HTML file with markdown comments on the left\nand syntax highlighted code on the right. \n\nYou can see an example of the tool running on itself at\n[litsdoc.html](https://upvalue.github.io/litsdoc/litsdoc.html)\n\n# Supported languages\n\nThe `LANGUAGE_MAP` and `SHIKI_LANGUAGE_MAP` at the top control language support.\n\nCurrently supported languages:\n- C \n- .ld Linker scripts\n- JavaScript \u0026 TypeScript\n- Rust\n\n# How to invoke\n\n\u003e ./litsdoc.ts tests/c/hello-world.c tests/c/indentation-test.c -o docs.html\n\nThe files will be processed in the order given\n\nOne additional useful option is `--code-url` -- this will link source files with code-url as the\nprefix, so it can be set to e.g. a GitHub repository to view the source directly.\n\nSince you might want to use it over and over again, you can put these arguments into an argfile and\nthen invoke with `--argfile` to get the arguments from that file, ex:\n\n\u003e ./litsdoc.ts --argfile self-doc.argfile \n\nto generate `litsdoc.html`.\n\nUse\n\n\u003e ./litsdoc.ts --help\n\nTo see all the options.\n\n# How to \"install\"\n\nSince it's a Deno script, it just needs to be placed in a directory along with `deno.json` and\n`deno.lock` to handle dependencies. To \"install\", put it somewhere and then alias or symlink it to\nsomething memorable instead of `litsdoc.ts`. I use `,litsdoc`\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupvalue%2Flitsdoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fupvalue%2Flitsdoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupvalue%2Flitsdoc/lists"}