Project Sidebar Content Cheat Sheet
Sidebar
AI ยท Project Sidebar Content Cheat Sheet
The four kinds of Sidebar page and how each is built. From rules/sidebar_rules.md (SB1-SB11, LN, MT) and rules/cheat_sheet_series.md. Everything lives under content/sidebar/<subject>/.
The four types
Links/links <topic>. Wrapper .links-chapter, sky-blue #38bdf8. No PDF. File links_<topic>.html.My Tools/my-tools <name>. Interactive tool from a YAML spec. No PDF. File <name>.html.Sidebar lessonsidebar: <topic>. Wrapper .sidebar-lesson, amber #d97706 / #fbbf24. File sidebar_<topic>.html.Cheat sheetcheat sheet <topic>. Wrapper .cheat-sheet, emerald #059669 / #6ee7b7. File cheat_sheet_<topic>.html.Subjects and banner (SB1, SB2)
subject foldersai, drinks, football, history, linux, operating-systems, programming, web-development. The folders are the mapping.no fitReuse a subject from the content tree; ask only if genuinely ambiguous.browsing pagesGenerated automatically. Never hand-write a subject index.Category: SidebarAlways. Then Subcategory: (subject), Chapter: (page title), File: and the date line.Topic: lineIncluded only for Sidebar lessons.Sidebar lesson (SB3)
generated directlyNo outline, no numbering, no link to other lessons.researchSearch rather than recall for anything current, a named person's claim, or a product.structureCourse-name and breadcrumb lead-in, intro on why it merits a lesson, body sections, honest cross-references, typically 3 hands-on exercises, closing Quick Reference box.exercise solutionssolutions/sidebar_<topic>_exercise<N>.txt.PDFpy scripts/python/build_sidebar_lesson_pdf.py <Subject> <file.html> "<Title>"Cheat sheet (SB6-SB8)
framingA 1-2 sentence line, no full intro.category cardsA 2-3 column grid; each card is a short heading plus command - one-line description rows. Cards never split when printed.no extrasNo exercises, no Quick Reference, no copy buttons. At most one closing tip for a real gotcha.verifyAnything version-specific or dated is checked by search or by running it. The sheet says what was and was not verified.PDFpy scripts/python/build_cheat_sheet_pdf.py <Subject> <file.html> "<Title>"Cheat sheet batches (SB9)
cheat-sheet-<series>_1-4Builds sheets 1 to 4 of the named series, in order, then gives one combined report.cheat-sheet-<series>_5A single number builds one sheet.series filerules/cheat_sheet_series.md: topic, scope and a done date for each sheet.batch sizeAbout 4-5 sheets. New topics go at the end so numbers stay stable.range too longIf the range runs past the list or a topic is unclear, Claude stops and asks.Links (LN)
modes/links <topic> creates; update adds links. If a page exists and no mode is given, Claude asks. It never overwrites silently.every runClaude asks whether you have a file of extra links for the topic.Links.mdScanned read-only for relevant entries. Shortened lnkd.in links are resolved to find the real title.real links onlyFound by search and confirmed by fetching. A URL is never constructed.sections, in orderDocumentation, Downloads, Free Online Courses, LinkedIn Learning. Empty ones are omitted.LinkedIn titlesTaken from the URL slug, hyphens to spaces, title case. A /paths/ URL gets the prefix "Learning Path: ".update modeOnly genuinely new links, de-duplicated by URL. Nothing removed or reordered.My Tools (MT)
specmy-tools/<name>.yaml is the only input. name and description are required; example is optional.no specClaude says so and asks you to create one (by hand or with tool-builder.html). It never guesses.fragmentNo <!DOCTYPE>, <html>, <head>, <body>, <meta> or <title>; a <script> is fine.CSS scopingEvery rule under the tool's own wrapper class. Never a bare element selector or *.paletteBackground #0f1117, surfaces #1a1d27 / #161b22, borders #30363d, text #c9d1d9.Load ExampleA button wherever the tool has inputs, inferred from the description if there is no example.updatesNo incremental mode: a tool is regenerated wholesale from a revised YAML.Tracking (SB11)
sidebar-pages.mdOne shared log: one entry per page with type, subject, file path, created date and every update.whenUpdated in the same step as generating or updating any Sidebar page.howAppend or edit the one entry. Never read the whole file; search it.Snapshot
Snapshot of the rule files as at 2026-11-08, summarised by reading them. Nothing was run to test it. If this sheet and a rule file ever disagree, the rule file wins, and the sheet needs regenerating.