Read markdown, write HTML and Atom feed, doing exactly what is needed for a minimalist style of blog.
Considerations
When reading files, we have to consider:
the metadata inside files
the directory structure
the special files
_index.md (text before the listing; at a minimum it contains site-wide metadata)
_header.md (text before every post)
_footer.md (text after every post)
_-prefixed files (excluded from the listing)
Subfolders have no special meaning and merely separate posts.
Headers and footers apply to the whole site.
(caveat: translated posts would use the original text for header and footers too)
translation is a complication that doesn't apply to tan, but does apply to lonami. would be nice to integrate a neat solution for it in mainline pagong, but an alternative is a patch kind of thing
i'm okay with having posts excluded from the listing that still generate a page and I can manually link to
For simplicity there will be no templating.
Unresolved questions
How do we reliable handle linking to other posts?
How do we handle additional assets?
What heuristics to follow when generating the output path? (Is every simple post a new folder with index.html sitting alone inside?)
What metadata is needed?
What is the best way to embed metadata in the posts?
The atom feed needs an absolute URL to the blog, along with other details. What's the best place for this information?
perhaps _index metadata would apply site-wide by default (author, url, etc.)
https://github.com/expectocode/pagong/issues/8
Should site-wide metadata show in all children posts (e.g. author)?
What happens if someone wants to use multiple CSS files? Can they specify them somewhere? Can they be configured per-post with metadata?
Is it pagong's job to minify the output files (CSS, compress images into JPG and automatically link to the original-size version…)?
Perhaps there can be metadata to override the header/footer on a per-post basis?
Pagong design
Main goal
Read markdown, write HTML and Atom feed, doing exactly what is needed for a minimalist style of blog.
Considerations
When reading files, we have to consider:
Subfolders have no special meaning and merely separate posts.
Headers and footers apply to the whole site. (caveat: translated posts would use the original text for header and footers too)
translation is a complication that doesn't apply to tan, but does apply to lonami. would be nice to integrate a neat solution for it in mainline pagong, but an alternative is a patch kind of thing i'm okay with having posts excluded from the listing that still generate a page and I can manually link to
For simplicity there will be no templating.
Unresolved questions
How do we reliable handle linking to other posts?
How do we handle additional assets?
What heuristics to follow when generating the output path? (Is every simple post a new folder with index.html sitting alone inside?)
What metadata is needed?
What is the best way to embed metadata in the posts?
The atom feed needs an absolute URL to the blog, along with other details. What's the best place for this information? perhaps _index metadata would apply site-wide by default (author, url, etc.) https://github.com/expectocode/pagong/issues/8
Should site-wide metadata show in all children posts (e.g. author)?
What happens if someone wants to use multiple CSS files? Can they specify them somewhere? Can they be configured per-post with metadata?
Is it pagong's job to minify the output files (CSS, compress images into JPG and automatically link to the original-size version…)?
Perhaps there can be metadata to override the header/footer on a per-post basis?
Example sites