Skip to content

(#76) Styling improvements for Lesson and Materials PDF/Google Doc exports - #80

Open
alexsdev91 wants to merge 2 commits into
72-pdf-via-gdocfrom
76-styling-lessons-materials
Open

(#76) Styling improvements for Lesson and Materials PDF/Google Doc exports#80
alexsdev91 wants to merge 2 commits into
72-pdf-via-gdocfrom
76-styling-lessons-materials

Conversation

@alexsdev91

Copy link
Copy Markdown
Contributor

Summary

Implements default styling for lesson, unit, and material exports across both PDF and Google Doc formats, plus a new plugin for exporting PDFs via the Google Docs API.

@alexsdev91
alexsdev91 requested a review from paranoicsan July 1, 2026 14:17
@alexsdev91
alexsdev91 force-pushed the 76-styling-lessons-materials branch from 2eacd10 to 215957c Compare July 17, 2026 15:27
- Apply shared design tokens across pdf.scss, pdf_plain.scss and gdoc.scss
- Rework lesson/unit/material headers and footers for PDF and Gdoc, moving
  logo, lesson type and estimated time into the running header
- Style the Gdoc footer by template placeholder so blank copyright/course
  lines no longer misstyle the unit/lesson line
- Render the Settings brandmark in the Gdoc header via Apps Script, passing
  it inline as base64 instead of a fetched URL
- Inline Gdoc CSS with premailer and emit headings as pure tags with styled
  inner spans so Google Docs maps them to native heading styles
- Render activities flat with a configurable activity-type mapping in Settings
- Add a client-configurable Lesson Type label map
- Resolve material tokens in Lesson Preparation and show material titles
  instead of identifiers
- Clear preview links on document (re)import so previews regenerate fresh
- Fix SeedPdfSettings migration hitting Solid Cache before its table exists
- Harden asset handling: external-asset URL escaping, image-id whitespace,
  SVG mime sniffing, material-token N+1, non-expiring S3 URLs
- Add specs for headers, presenters, callout tags and the HTML sanitizer

Signed-off-by: Sergei Alekseenko <alekseenkoss@gmail.com>
@alexsdev91
alexsdev91 force-pushed the 76-styling-lessons-materials branch from 1cd4d2b to f932058 Compare July 27, 2026 15:31
@alexsdev91
alexsdev91 force-pushed the 76-styling-lessons-materials branch from fcf8ef9 to 19ea37e Compare August 11, 2026 18:00
@alexsdev91
alexsdev91 force-pushed the 76-styling-lessons-materials branch from 19ea37e to 6c8f002 Compare August 13, 2026 16:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant