Skip to content
Guide · Updated Oct 6, 2026

Vesper documentation

An editorial magazine for evening culture: a newspaper masthead, a cover story with a top five, an agenda with big dates and a sunset line through every page.

Installation

  1. Download vesper.zip from your purchase email or your purchases library. Do not unzip it.
  2. In Ghost Admin, open Settings → Design & branding → Change theme.
  3. Click Upload theme, select the zip, then Activate.

Vesper requires Ghost 6 (self-hosted, or a Ghost(Pro) plan that allows custom themes).

Updating

Upload the new zip the same way and confirm the overwrite. Your content, navigation and theme settings are kept.

Import the demo content

The download includes vesper-demo.zip: posts, pages, tags, navigation and images.

  1. Use a new or empty site: importing over existing content creates duplicates. On a fresh Ghost, first delete the default content in Settings → Advanced → Danger zone → Delete all content.
  2. Open Settings → Advanced → Import/Export and import the zip (not just the JSON, or the images will be missing).
  3. Theme settings are not part of an import: set them in Design & branding (see the table below).

Homepage sections

SectionContent comes from
Headline bandThe 8 latest posts (hidden under 3), with the Ticker label.
MastheadThe site title in large italics (shrunk to fit one line) and the site description. A Ghost logo replaces the title.
Cover storyThe latest post marked Featured, or the latest post. Removed from the latest stories.
Top fivePosts tagged #ranking, or the latest posts.
AgendaPosts tagged #agenda, 4 at most.
Topic in three columnsThe 3 latest posts of the tag whose slug you enter (Topic section tag).
QuoteThe excerpt of the latest post tagged #quote.
Latest storiesThree columns, the first card wider, Load more. Keep 8 posts per page.
💡
Internal tags start with # (type #picks in the Tags field of a post). Readers never see them and they have no public page; the theme uses them to pick content.
💡
Agenda dates. Start the post’s excerpt with the date, a dash and the venue: 18 Oct — Théâtre des Saules, Paris. 18–20 Oct and Fri 18 Oct work too. Without a date, the publication date is shown. Remove #agenda from past events.

Appearance

Paper (default), Cassis (dark) or Auto, and an optional Logo for dark mode. Duotone images tints story images in light cassis and topaze, back to full colour on hover (photos stay in colour on touch screens; images inside posts are never changed). Accent tip: #FF5C34. Fonts: DM Serif Display, Instrument Serif and Libre Franklin.

All settings

SettingTabDefaultWhat it does
Color schemeSite-wideLightDefault color scheme: Light (paper) or Dark (cassis). Readers can switch.
Logo for dark modeSite-wide—Optional logo used on the dark (cassis) scheme
Duotone imagesSite-wideOnStory images in cassis & topaze duotone, back to full color on hover
Other social linksSite-wide—Extra social profile URLs, comma-separated (Pinterest, WhatsApp, GitHub...)
Show newsletterSite-wideOnSubscription block (sunset gradient) at the bottom of every page
Newsletter headingSite-wideYour evenings, sorted every FridayHeading of the subscription block
Newsletter textSite-wideFilms, concerts, plays and tables worth going out for — in one letter before the weekend.Text of the subscription block
Show tickerHomepageOnScrolling band of the latest headlines above the masthead
Ticker labelHomepageTonightLabel at the start of the scrolling band
Show cover storyHomepageOnCover story: the latest post marked as Featured (or the latest post)
Show rankingHomepageOnNumbered top five next to the cover story: posts tagged #ranking (or the latest posts)
Ranking titleHomepageThe week's fiveHeading of the top five
Show agendaHomepageOnAgenda of posts tagged #agenda. Start the excerpt with the date: "18 Oct — Venue"
Agenda titleHomepageTonight & this weekHeading of the agenda
Show topic sectionHomepageOnThree latest posts of one tag, in three columns
Topic section tagHomepagecinemaSlug of the tag shown in three columns (e.g. cinema)
Show quote sectionHomepageOnFull-width quote: excerpt of the latest post tagged #quote
Show latestHomepageOnGrid of the latest posts with Load more
Table of contentsPostOnShow a table of contents on posts with three or more headings

Posts per page: 8 (set by the theme). Settings are in Settings → Design & branding → Customize, in the Site-wide, Homepage and Post tabs.

  • Dropdowns: in Settings → Navigation, start a label with a dash (-About) to put it in a dropdown under the item above. That parent item only opens the dropdown; its URL is not used.
  • Social accounts: X, Facebook, LinkedIn, Bluesky, Threads, Mastodon, TikTok, YouTube and Instagram come from Settings → General → Social accounts. Add any other profile in the Other social links setting (comma-separated URLs): Pinterest, WhatsApp, Telegram, Discord, GitHub, Dribbble, Behance, Spotify, Twitch, Snapchat, Reddit and Medium get their icon, any other URL gets a link icon.
  • The RSS icon is added automatically.

Posts & pages

  • Table of contents: added automatically to posts with three or more H2 headings (setting Table of contents).
  • Full width page template: choose it in the page settings for landing pages.
  • The page option Show title and feature image is respected.
  • Every editor card is styled, including wide and full-width images, galleries, toggles, callouts, buttons and bookmarks.

Members & newsletter

The subscription block uses Ghost’s native members. It is hidden for signed-in members, and when sign-ups are off or invite-only (Settings → Membership).

Translation

Every text of the theme goes through Ghost’s translation system. Copy locales/en.json inside the theme to locales/fr.json (or your language code), translate the values, zip the theme again and upload it. Then set the language in Settings → General → Publication language.

FAQ

Why does the top five not show my most read posts?

Ghost does not count page views. The top five is an editorial choice: tag the posts you want with #ranking.

A section of the homepage does not appear.

Check its switch in Design & branding, then its content: every section hides itself when it has nothing to show (no Featured post, no post with the internal tag, an empty tag…).

Can I change the fonts?

Yes: the fonts chosen in Design & branding → Typography replace the theme’s heading and body fonts.

The newsletter

Be the first to see the next release.

New products, updates and the occasional guide. No spam, unsubscribe anytime.

Great! Check your inbox and click the link to confirm your subscription.