{"id":13601405,"url":"https://github.com/lepisma/pile","last_synced_at":"2026-01-02T15:13:25.407Z","repository":{"id":74308981,"uuid":"128497927","full_name":"lepisma/pile","owner":"lepisma","description":"Personal website generator based on Org mode","archived":false,"fork":false,"pushed_at":"2023-08-20T09:52:42.000Z","size":300,"stargazers_count":23,"open_issues_count":1,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-04-14T11:54:29.541Z","etag":null,"topics":["blog-engine","elisp","static-site-generator","wiki-engine"],"latest_commit_sha":null,"homepage":"","language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lepisma.png","metadata":{"files":{"readme":"README.org","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}},"created_at":"2018-04-07T05:02:06.000Z","updated_at":"2023-11-17T19:08:45.000Z","dependencies_parsed_at":"2024-01-13T17:10:00.279Z","dependency_job_id":"100b5590-eed2-407b-9215-53861f48ca5e","html_url":"https://github.com/lepisma/pile","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lepisma%2Fpile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lepisma%2Fpile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lepisma%2Fpile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lepisma%2Fpile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lepisma","download_url":"https://codeload.github.com/lepisma/pile/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243676777,"owners_count":20329434,"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-engine","elisp","static-site-generator","wiki-engine"],"created_at":"2024-08-01T18:01:02.327Z","updated_at":"2026-01-02T15:13:25.394Z","avatar_url":"https://github.com/lepisma.png","language":"Emacs Lisp","funding_links":[],"categories":["Emacs Lisp"],"sub_categories":[],"readme":"#+begin_quote\nDevelopment for this project has moved to sourcehut [[https://git.sr.ht/~lepisma/pile][here]]. This repository is now in a read-only state.\n#+end_quote\n\n#+TITLE: pile\n\n[[https://img.shields.io/github/workflow/status/lepisma/pile/test.svg?style=flat-square]] [[https://img.shields.io/github/v/tag/lepisma/pile.svg?style=flat-square]]\n\nSource code for my [[https://lepisma.xyz/][web site]] setup. ~pile~ wraps around ~org-publish~ and adds a few\nfunctions to improve the experience of generating static htmls.\n\nThe package lives on a /commit-on-need/ basis so might not be in good shape at any\npoint in time. The basic item here is a ~pile-project~ which can be of the /wiki/\ntype (focused on having updatable set of pages, like in a regular wiki) or a\n/blog/ type (a stream of posts, dated and tagged). These projects then define the\nkind of embellishments the pages get using a bunch of hooks and/or org level\nconfig using the ~org-export~ and ~org-publish~ infrastructure.\n\nOverall this setup is sometimes annoying and slow but works mostly okay for me.\n\n* Workflow Notes\n** Hooks\nThere are two hooks that work with the ~pile-publish-~ functions. See\n~./pile-hook.el~ for example functions.\n\n1. ~pile-pre-publish-hook~. Functions here are added to\n   ~org-export-before-parsing-hook~ and run in the /to-be-published/ Org mode\n   buffer.\n2. ~pile-post-publish-hook~. These are added to ~org-publish-after-publishing-hook~.\n\n** Configuration\nThe overall effect on my website is strongly tied to the following components:\n\n1. Org Export configuration [[https://github.com/lepisma/lepisma.github.io/blob/source/assets/export.setup][here]].\n2. The CSS theme for various HTML components on the page, kept [[https://github.com/lepisma/pile-theme][here]].\n3. Package configuration [[https://github.com/lepisma/rogue/blob/9eda54718029973e6b665cfcc98e50d1a9d2c424/packages.el#L206][here]].\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flepisma%2Fpile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flepisma%2Fpile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flepisma%2Fpile/lists"}