{"id":26323174,"url":"https://github.com/traceypooh/blogtini","last_synced_at":"2025-10-13T15:38:56.490Z","repository":{"id":44829867,"uuid":"454200368","full_name":"traceypooh/blogtini","owner":"traceypooh","description":"Markdown + JS 100% client-side blogs \u0026 websites","archived":false,"fork":false,"pushed_at":"2025-03-11T07:30:47.000Z","size":52479,"stargazers_count":8,"open_issues_count":4,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-11T08:29:09.413Z","etag":null,"topics":["blog-theme","esmodules","github-pages","highlightjs","html","javascript","lunrjs","markdown","showdownjs","static-site"],"latest_commit_sha":null,"homepage":"https://blogtini.com","language":"JavaScript","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/traceypooh.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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}},"created_at":"2022-01-31T23:11:01.000Z","updated_at":"2025-03-11T07:30:50.000Z","dependencies_parsed_at":"2024-07-17T04:10:54.068Z","dependency_job_id":"d373d4da-f796-4bc1-bfd5-5fbdd81b2cf1","html_url":"https://github.com/traceypooh/blogtini","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traceypooh%2Fblogtini","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traceypooh%2Fblogtini/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traceypooh%2Fblogtini/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/traceypooh%2Fblogtini/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/traceypooh","download_url":"https://codeload.github.com/traceypooh/blogtini/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243762248,"owners_count":20343979,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-theme","esmodules","github-pages","highlightjs","html","javascript","lunrjs","markdown","showdownjs","static-site"],"created_at":"2025-03-15T17:16:46.069Z","updated_at":"2025-10-13T15:38:56.485Z","avatar_url":"https://github.com/traceypooh.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# blogtini\n\n## Slides / presentation\nhttps://tracey.archive.org/dweb-2022\n(tracey talk at https://dwebcamp.org)\n\nSite live at:\n- https://blogtini.com\n- https://traceypooh.github.io/blogtini/\n\n## Hooks\n- Whenever you create or delete a post, we want your `sitemap` updated.\n- Whenever someone comments on your site, we run a small script.\n\nThus, we suggest you use our \"pre commit\" and \"post merge\" `git` 'hooks' to automate the above \"housekeeping\".  You can set them up like this:\n```sh\ngit config --local core.hooksPath bin/\n```\n\n### RSS\nIf you'd like a RSS `index.xml` file generated with the [bin/sitemap](bin/sitemap) script,\nduring each \"pre commit\" hook (above), you'll need to have the\n[yq](https://github.com/mikefarah/yq#install) script installed on your machine.\n\n\n\n## Best two website/blog setup options\n### Blog source repository that uses markdown inside html markup files\n- /2022/01/i-baked-a-pie/\n- /2022/01/i-baked-a-pie/index.html\n  - start with front matter\n    - including `comment: \u003cscript src=\"../theme.js\" type=\"module\" charset=\"utf-8\"\u003e\u003c/script\u003e`\n  - you can then have the nice url `https://example.com/2022/01/i-baked-a-pie/` where the included JS transforms the markdown to markup\n- your `/sitemap.xml` can reference each of your directory urls\n- manage your `/sitemap.xml` manually or run the `/bin/sitemap` script any time you create or delete a post.\n  The [/bin/sitemap](https://github.com/traceypooh/blogtini/blob/main/bin/sitemap) script is on the blogtini website.\n- have `/theme.js` do an `import` of whatever theme you desire\n\n\n\n\n## Local development\n### Option 1\n`safari` is nice, you can run the site locally by just\n- Developer Tools enabled\n- `Develop` menu\n  - check `Disable Cross-Origin Restrictions` during development\n  - reload html page\n  - uncheck `Disable Cross-Origin Restrictions` when done\n- example: file:///Users/tracey/dev/blogtini/index.html\n\n### Option 2\n(any basic static file webserver will do):\n```bash\n( sleep 3; open http://localhost:8000 ) \u0026\npython3 -m http.server\n```\n\nYou can force a re-parse of posts \u0026 pages by adding optional CGI arg `?recache=1`\n\n## Example urls using GitHub or GitLab pages\nIf you use https://github.com or https://gitlab.com free 'Pages' integration, you will get urls you can like this:\n- https://traceypooh.github.io/blogtini/\n- https://traceypooh.gitlab.io/blogtini/\n\nYou can choose to use your own domain name (typically ~$20 USD/year) for a shorter/nicer url that points to the Pages deployment above (this is what https://blogtini.com does)\n\n\n## To Do / Fixmes\n- `git grep xxxxx` highest priorities\n- `git grep xxxx` medium priorities\n- `git grep xxx` priorities\n- staticman (reduced down) via netlify edge functions xxx\n- document `?contact` xxx\n- document github action xxx\n- dark mode search input not visible xxx\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftraceypooh%2Fblogtini","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftraceypooh%2Fblogtini","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftraceypooh%2Fblogtini/lists"}