gitssg/README.md
2024-06-30 12:09:40 +02:00

42 lines
1.8 KiB
Markdown

# GitSSG
Simple CLI tool to generate webpages from git repositories.
Project heavily inspired by the amazing
[stagit](https://codemadness.org/stagit.html).
## Roadmap
- [X] Embed templates mechanism.
- [ ] Embed style.css
- [X] Correctly manage relative links.
- [ ] Add a base url to avoid relative links if provided.
- [X] Generate the index html file for the `index` subcommand.
- [X] Generate the log html file for a repository.
- [ ] Detect and link README, LICENSE and CONTRIBUTING files.
- [X] Generate the files html file and file structure.
- [ ] Generate the refs html file.
- [X] Add a proper CLI parsing and subcommands.
- [ ] Add a sample CSS file for the default templates.
- [ ] Add a subcommand to dump the embedded templates so they can be
modified.
- [ ] Take binary files into account.
- [ ] Limit the output for large diffs. Add a "X commits remaining"
message if necessary.
- [ ] Generate files in temporal directory and replace the final one
when everything is ready.
- [X] Allow to anchor lines.
- [ ] Check if the templates exist on a location and use them if
so. Allow to change that location through CLI flags or env vars.
- [ ] Optimize tree generation, it is currently very time consuming.
- [ ] Optimize repository generation through a cache.
- [ ] Add a flag to regenerate in case a `push -f` comes in.
- [ ] Optimize output generation through the use of smaller templates
instead of having all the structs in memory when executing one
template (for large repos).
- [ ] Add an atom feed for the repositories.
- [ ] Add a flag for raw file generation for HEAD.
- [ ] Add a flag for syntax highlighting through Chroma.
- [ ] Add a flag for markdown to HTML.
- [ ] Investigate the viability of generating tarballs for certain
refs.