{"id":21202901,"url":"https://github.com/ylxdzsw/nattoppet","last_synced_at":"2026-02-24T12:04:49.912Z","repository":{"id":57308905,"uuid":"48170069","full_name":"ylxdzsw/nattoppet","owner":"ylxdzsw","description":"A tiny macro-based markup language for blogging","archived":false,"fork":false,"pushed_at":"2026-02-09T15:19:26.000Z","size":2533,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-02-09T21:49:01.185Z","etag":null,"topics":["blog","deno","static-site-generator","yet-another-markup-language"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/ylxdzsw.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}},"created_at":"2015-12-17T11:15:02.000Z","updated_at":"2026-02-09T15:19:28.000Z","dependencies_parsed_at":"2023-12-02T19:22:28.761Z","dependency_job_id":"c8b2e4fc-2782-4692-971c-9b652d27fe20","html_url":"https://github.com/ylxdzsw/nattoppet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ylxdzsw/nattoppet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ylxdzsw%2Fnattoppet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ylxdzsw%2Fnattoppet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ylxdzsw%2Fnattoppet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ylxdzsw%2Fnattoppet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ylxdzsw","download_url":"https://codeload.github.com/ylxdzsw/nattoppet/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ylxdzsw%2Fnattoppet/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29781269,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T10:45:18.109Z","status":"ssl_error","status_checked_at":"2026-02-24T10:45:09.911Z","response_time":75,"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":["blog","deno","static-site-generator","yet-another-markup-language"],"created_at":"2024-11-20T20:19:29.128Z","updated_at":"2026-02-24T12:04:49.907Z","avatar_url":"https://github.com/ylxdzsw.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"nattoppet\n=========\n\nA tiny markup language and themes for making documents, slides, or web apps as single-file bundled html or executables.\n\n### Usage\n\nCompile a nattoppet file:\n\n```bash\nbun run nattoppet.ts in.ymd \u003e out.html\n```\n\nCompile a nattoppet file but don't minimize (for debugging):\n\n```bash\nbun run nattoppet.ts in.ymd --dev \u003e out.html\n```\n\nOpen a browser to preview a nattoppet file; rebuild every time the page is refreshed:\n\n```bash\nbun run nattoppet-dev.ts in.ymd\n```\n\nInitialize a new project:\n\n```bash\nbun run nattoppet-init.ts form\n```\n\nBuild a double-clickable executable for the page:\n\n```bash\nbun run nattoppet-native.ts init\n# (edit the metadata as needed)\nbun run nattoppet-native.ts build in.ymd\n```\n\n\n### History\n\n- 1.0: This project started as an experiment of co.js to replicate gulp.js, when async/await was not a thing and wind.js was the cool guy that everyone was talking about.\n- 2.0: Later I decided to build ymd.js, a custom LaTeX-style macro-based markup language for blogging, and turned nattoppet a bundler. Promise landed on JavaScript, and async/await became available with babel.\n- 3.0: I became a minimalist and stripped down all dependencies, merged ymd.js and nattoppet, and flattened the directory. I have also migrated to Deno to further remove the nodejs clutters.\n- 4.0: AI came. As an experimental project, nattoppet was put to test AI. Kimi 2.5 successfully ported it from Deno to Bun in half an hour, with all posts on my blog builds without error. It made me feel empty, but I have to embrace it. This project will be fully vibed from now on.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fylxdzsw%2Fnattoppet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fylxdzsw%2Fnattoppet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fylxdzsw%2Fnattoppet/lists"}