Files snapshot from mithril-server-side-rendering
These markdown files are used to keep track of tasks like an issue tracker.
Right now I'm just using this space to brainstorm improvements to the repo. The goal is to eventually have extensive documentation here.
Note: to link to other pages, add a
.htmlto the end of the page you are linking to. When the site is rendered, markdown files get rendered at a URL likepath/to/file.md.html. So to link to that page, do[link text](./path/to/file.md.html).
deploy/**) instead of spelling out every branch name in full in their config filemithril-server-side-renderingfile.ts, files.ts, etc.wiki_and_tasks
will get changed to wiki-and-tasks (with hyphens instead of underscores)
for the URL. But underscores are valid for using in a URL, and also,
there could also be a folder called wiki-and-tasks with hyphens, and
they would both be able to exist in the repository.copyTo to have variable interpolation in it, for totally
custom directory pathsclone-earlylocation for the repo in the plugin config could be a remote URL.1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
db0aed Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
b3ebf3 Tucker McKnight
0be3b7 Tucker McKnight
0be3b7 Tucker McKnight
0be3b7 Tucker McKnight
0be3b7 Tucker McKnight
0be3b7 Tucker McKnight
0be3b7 Tucker McKnight
0be3b7 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
559029 Tucker McKnight
559029 Tucker McKnight
309a87 Tucker McKnight
309a87 Tucker McKnight
12ab86 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
b4dcf8 Tucker McKnight
# Wiki and Tasks
These markdown files are used to keep track of tasks like an issue tracker.
Right now I'm just using this space to brainstorm improvements to the repo.
The goal is to eventually have extensive documentation here.
> Note: to link to other pages, add a `.html` to the end of the page you
> are linking to. When the site is rendered, markdown files get rendered
> at a URL like `path/to/file.md.html`. So to link to that page, do
> `[link text](./path/to/file.md.html)`.
## Ideas and Works in Progress
- [ ] Branch Globs
- Goal: allow users to specify a glob pattern (like `deploy/**`) instead of spelling out every branch name in full in their config file
- [Project page](./projects/branch-globs.md.html)
- [ ] Better Template Readability
- git-branch: `mithril-server-side-rendering`
- Goal: Do not simply have a bunch of strings as the HTML for the default virtual
template. Maybe look into using mithril for server-side rendering?
- This will also make the code look much less "ewww" for possible new contributors.
- Also allows typescript to help out more.
- [ ] Tag snapshots
- Goal: have HTML pages generated for user-specified tags in the repo, not
just each branch head.
- [ ] Create links consistently with some kind of nav or link helper
- Goal: Links to various pages are being manually created with a hodgepodge
of splitting and slugifying strings. Create an easy and consistent way for
the virtual template to get a link to the other pages.
- Should be used in places like `file.ts`, `files.ts`, etc.
- Part of this task should also be to avoid slugifying parts of the link
that we don't need to. E.g. right now, a folder like `wiki_and_tasks`
will get changed to `wiki-and-tasks` (with hyphens instead of underscores)
for the URL. But underscores *are* valid for using in a URL, and also,
there could also be a folder called `wiki-and-tasks` with hyphens, and
they would both be able to exist in the repository.
- [ ] better separation of base features and default template
- make sure that buildSteps can copy things into directories that weren't
created as part of the site generation.
- Maybe allow `copyTo` to have variable interpolation in it, for totally
custom directory paths
- [ ] Make merged commits show up in the commits list and commit page.
- These don't show up as anything right now
- [ ] Create shortcodes that allow 11ty blog posts to reference commits
- Seems like this could work well for embedding code (specifying line ranges?) in
blog posts.
- Could also know which commits or files are referenced by blog posts, and show those
posts when browsing the code.
- [ ] Better file display if syntax highlighting plugin is not available
- Seems to print out all on one line right now.
- [ ] get rid of lodash
- lodash is one of the larger (largest?) dependencies right now. With mithril auto-escaping strings, it might not be necessary anymore. Look into which things actually need to be escaped (e.g. any user-input from commit messages) and see if we can just rely on mithril to escape those
- [ ] make the useDefaultTemplate option actually be used
### Completed
- [x] Clone repo at first, rather than at the end
- git branch: `clone-early`
- [Project page](./projects/clone-early.md.html)
- Goal: Clone the repo before site generation starts. Use this cloned repo for all repo actions.
- As a side benefit, this should allow users to clone from a remote repository (like on github) and use their static HTML site as a mirror of that. E.g. the `location` for the repo in the plugin config could be a remote URL.
- ==This might need to be done before branch globs and tags==