Convert Markdown notes into Instagram-ready images.
Write a short .md file, run noteframe post, get a PNG.
From crates.io:
cargo install noteframeOr build from source:
git clone https://github.com/nobeh/noteframe.git
cd noteframe
just build # cargo build --release
just install # puts noteframe in ~/.cargo/bin- Write a short
.mdnote with YAML frontmatter - Run
noteframe post notes/my-note.md - Get a PNG alongside your note, ready to post
---
title: "Your insight here"
layout: post # post (single image) | carousel (one image per ## section)
bg: "#FAFAF8" # background color
text: "#1A1A1A" # text color
accent: "#AAAAAA" # accent / hashtag color
hashtags:
- mindset
- design
---
Your post body goes here. Supports **bold**, *italic*, and ***bold italic***.| Field | Default | Description |
|---|---|---|
title |
— | Heading rendered at the top of the image |
layout |
post |
post (single image) or carousel (one image per ## section) |
bg |
#FFFFFF |
Background hex color |
text |
#1A1A1A |
Body text hex color |
accent |
#888888 |
Accent line and hashtag color |
hashtags |
[] |
List of tags rendered at the bottom (without #) |
noteframe post notes/my-note.md # generate PNG(s) from a note
noteframe new "My Post Title" # scaffold a new note
noteframe new "Title" --layout carousel # new carousel noteOr via just:
just post notes/my-note.md
just new "My Post Title"
just build
just installpost— single 1080×1080 PNG; title + body vertically centeredcarousel— one PNG per##heading; output namedstem-01.png,stem-02.png, …
Script is auto-detected from content — no configuration needed:
- Latin / English → Merriweather (regular/italic) + New York Large (bold)
- Persian / Arabic → Noto Sans Arabic UI; text is right-aligned
Font size auto-scales based on word count — shorter text renders larger.
Generated images are saved alongside the source .md file:
notes/my-note.md→notes/my-note.pngnotes/my-carousel.md→notes/my-carousel-01.png,notes/my-carousel-02.png, …
MIT