Nightsky Letter Slides

Make decks that read like a letter read aloud after dark, such as an observatory writing to its members, a founder looking back on a year or a night service reporting to its board: every page sits under one night sky with generated star layers, a lamp-coloured horizon glow, shooting-star streaks and a crescent on the cover, with large Cormorant Garamond headlines whose second line is a lamp-lit italic.

Nightsky Letter Slides

Bring the organisation, the audience, the story of the year or the ask, the figures to use exactly and the page count; your own photographs are optional. The Skill returns one offline HTML deck that edits in the browser and exports editable PowerPoint.

How it works

  1. Brief and sequence

    Your Agent asks for the topic, the audience, what should happen after the talk, the facts and numbers to use exactly and the page count, then gives every page one layout and picks one palette.

  2. Pictures and build

    Without your own photographs it lists the night landscapes in art.json and paints them with night-art.py. It writes plan.json and settings.json, then runs kit.py compose, make-deck.py and verify-deck.py to build one offline HTML file.

  3. Look and export

    It opens every page in a browser and checks wraps, overlaps and labels, tries edit, undo, save and present, then exports PowerPoint and runs verify-pptx.py against the deck.

Frequently asked questions

Is the PowerPoint really editable?

Yes. Every headline, paragraph, numeral, label, rule and dot is a native PowerPoint object with speaker notes, and each picture is its own image. The example decks have 95 and 80 text boxes. The page-sized images are the sky backgrounds and the panorama picture, and none of them contains text.

Where do the stars and pictures come from?

The star layers are generated from fixed seeds as plain CSS gradients that follow the palette, and each sky part can be deleted per page. Pictures are your own photographs first; otherwise the bundled night-art.py paints ridges, still water, meadows, rooftops with lit windows, conifer groves and an observatory dome. It uses only the Python standard library, calls no model or image service and refuses to paint the same picture twice.

Which fonts does it use?

Cormorant Garamond and Mulish under the SIL Open Font License. Install them on the presenting machine for matching line breaks; PowerPoint has regular and bold only, so the 500-weight serif exports as regular. Chinese, Japanese and Korean use the system face, with italics kept upright.

What are the known limits?

The sky exports to PowerPoint as background images, so recolouring there does not recolour it. PowerPoint and LibreOffice show old-style numerals on the figures page where the browser shows lining numerals. In LibreOffice Chinese headlines fall back to a sans face.

What was tested?

Both example decks were built from a fresh unzip of the package. Every page was inspected in Chrome and in a LibreOffice render of the exported PowerPoint, 31 of 31 browser interaction checks passed, with 25 error-path checks, and a long-text Chinese deck using every layout was also inspected, and python-pptx edits survived save and reopen. PowerPoint, Keynote and WPS were not opened.