Tucker McKnight <tmcknight@instructure.com> | Sat Aug 29 2026
Remove some TODOs, which are now in git-bug Also make the "make it only generate one page per commit" task as done, since it is done. And remove the "clean up template views, create components for rows and columns" task, which I've decided is probably just not the right thing to do.
49 50 51 52 53 54 55
window.currentRef = "${ref.name}";
window.currentRefType = "${data.currentRefType}";
`)),
// TODO: don't include prism.css if the user doesn't have the syntaxHighlight plugin
// also allow them to use a custom prism theme
m('link', {
rel: "stylesheet",
id: "prism-theme",49 50 51 52 53
window.currentRef = "${ref.name}";
window.currentRefType = "${data.currentRefType}";
`)),
m('link', {
rel: "stylesheet",
id: "prism-theme",15 16 17 18 19 20
const slugify = eleventyConfig.getFilter("slugify")
// TODO: use nav for baseUrl + /repos/ part below
return render([
m.trust('<?xml version="1.0" encoding="utf-8"?>'),
m('feed', {xmlns: "http://www.w3.org/2005/Atom"}, [15 16 17 18 19
const slugify = eleventyConfig.getFilter("slugify")
return render([
m.trust('<?xml version="1.0" encoding="utf-8"?>'),
m('feed', {xmlns: "http://www.w3.org/2005/Atom"}, [50 51 52 53 54 55
if (str.startsWith(' ')) { return str.replace(" ", "") }
}).join("\n")
// TODO: don't split on \n again here, do this earlier? More efficiently?
const changeObject = (lastHunkBefore.split('\n').length > 1000 || lastHunkAfter.split('\n').length > 1000)
? []
: Diff.diffWordsWithSpace(lastHunkBefore, lastHunkAfter)50 51 52 53 54
if (str.startsWith(' ')) { return str.replace(" ", "") }
}).join("\n")
const changeObject = (lastHunkBefore.split('\n').length > 1000 || lastHunkAfter.split('\n').length > 1000)
? []
: Diff.diffWordsWithSpace(lastHunkBefore, lastHunkAfter)43 44 45 46 47 48
const largestPercent = Math.max(...topLanguagePercentages.map(tuple => tuple[1]), otherLanguagePercent)
// TODO: make dark mode work here
const colors = reposConfig.defaultTemplate.colors.languageGraph
const colorAndPercentMap = {}43 44 45 46 47
const largestPercent = Math.max(...topLanguagePercentages.map(tuple => tuple[1]), otherLanguagePercent)
const colors = reposConfig.defaultTemplate.colors.languageGraph
const colorAndPercentMap = {}15 16 17 18 19 20
const flatPatches = await flatPatchesFunc(repos)
paginatedPatches = []
// TODO: allow customizing the number of commits per page
const patchesPerPage = 30
flatPatches.forEach((patch) => {15 16 17 18 19
const flatPatches = await flatPatchesFunc(repos)
paginatedPatches = []
const patchesPerPage = 30
flatPatches.forEach((patch) => {99 100 101 102 103 104
return !line.startsWith('Ignore-this: ')
}).join("\n").trim()
// TODO: this is very slow on commits that have a huge 20k line package-lock.json change
const diffs = getGitDiffsFromPatchText(currentPatch.slice(diffStart).join("\n"))
commits.set(hash, {
hash,99 100 101 102 103
return !line.startsWith('Ignore-this: ')
}).join("\n").trim()
const diffs = getGitDiffsFromPatchText(currentPatch.slice(diffStart).join("\n"))
commits.set(hash, {
hash,11 12 13 14 15 16 17
## Works in Progress
- [ ] Clean up the template views, create mithril components for rows and columns
- [ ] [Make it only generate one page per commit](./projects/one-page-per-commit.md.html)
## Ideas and Todos
11 12 13 14 15 16
## Works in Progress
- [ ] start using git-bug instead of this markdown file and TODO comments
## Ideas and Todos
90 91 92 93
- [x] Tag snapshots
- Goal: have HTML pages generated for user-specified tags in the repo, not
just each branch head.
90 91 92 93
- [x] Tag snapshots
- Goal: have HTML pages generated for user-specified tags in the repo, not
just each branch head.
- [x] [Make it only generate one page per commit](./projects/one-page-per-commit.md.html)