Go to file
Brandon Thomas a4bb8fe763
About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#3)
* About: contributors compiled in from contributors.json (grab bag + table, sortable, name toggle)

Adds the craftrules standard (standards/contributors.md) to DeckCraft's About window:
tabs About · Contributors · Models. contributors/contributors.json is generated by
craftrules/scripts/contributors.py and baked into the binary by crates/ui-egui/build.rs as
static tables. Each contributor line: @username, opt-in display/real name, PRs, commits,
lines +/−/Δ, binary assets +/−, first/last commit. Sortable by every column; alphabetical
ignores case and the leading @. The control channel's ui.dialog.open now honours its
documented `fields` param (e.g. About {"tab": "contributors"}).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Contributors: self-submitted names in contributors/people.toml; AGENTS.md credit-yourself section

build.rs reads contributors/people.toml next to the generated contributors.json and shows a name only
for entries the generator verified as written by that person (craftrules standards/contributors.md).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Contributors: regenerate (verified people.toml entries)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 21:16:38 -04:00
.cargo xtask (ci, assets, layers, wasm, parity, version, ico), PowerPoint parity catalog, ROADMAP 2026-10-06 00:17:57 -04:00
.github/workflows Release: ALSA build/runtime deps (Linux, FreeBSD, deb/rpm); vendor Flatpak crate sources on a plain runner 2026-10-06 02:28:20 -04:00
apps Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
assets/app-icon Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
contributors About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#3) 2026-10-07 21:16:38 -04:00
crates About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#3) 2026-10-07 21:16:38 -04:00
docs About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#3) 2026-10-07 21:16:38 -04:00
packaging Release: ALSA build/runtime deps (Linux, FreeBSD, deb/rpm); vendor Flatpak crate sources on a plain runner 2026-10-06 02:28:20 -04:00
xtask Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
.gitignore Web build and release CI: slidecraft-web, packaging, release workflow 2026-10-06 00:53:58 -04:00
AGENTS.md About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#3) 2026-10-07 21:16:38 -04:00
ATTRIBUTION.md README: screenshots, feature overview and alpha/parity summary; docs use control port 7990 2026-10-06 02:01:34 -04:00
CLAUDE.md README: screenshots, feature overview and alpha/parity summary; docs use control port 7990 2026-10-06 02:01:34 -04:00
Cargo.lock About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#3) 2026-10-07 21:16:38 -04:00
Cargo.toml Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
LICENSE-APACHE M0: workspace, model, geometry, fonts, text, renderer, engine, MCP and CLI 2026-10-05 23:27:20 -04:00
LICENSE-MIT Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
NOTICE Rename SlideCraft to DeckCraft: crates, apps, binaries, app id, file extension (.deckcraft; .slidecraft files still open), packaging, docs; ROADMAP alpha and parity estimates 2026-10-06 01:46:40 -04:00
README.md Rename PrintCraft to PdfCraft (storytold/pdfcraft) (#1) 2026-10-07 14:45:28 -04:00
ROADMAP.md ROADMAP: v0.1.0 released (signed, notarized) 2026-10-07 20:23:52 -04:00
clippy.toml M0: workspace, model, geometry, fonts, text, renderer, engine, MCP and CLI 2026-10-05 23:27:20 -04:00
rustfmt.toml M0: workspace, model, geometry, fonts, text, renderer, engine, MCP and CLI 2026-10-05 23:27:20 -04:00

README.md

ArtCraft

DeckCraft

Presentations and slide shows; an open-source, clean-room reimplementation of Microsoft PowerPoint, rebuilt in pure Rust.

Build decks with themes, layouts, shapes, pictures, tables, charts, transitions and animations, open and save PowerPoint files, and present them full screen. Native on macOS, Windows, Linux and FreeBSD, and in the browser. Every button is also a command that the CLI and AI agents (through MCP) can drive.

Status: early development License: MIT OR Apache-2.0 Written in Rust Platforms

Join the ArtCraft community on Discord

DeckCraft on getartcraft.com · ArtCraft · All Crafting Apps

[!NOTE] ArtCraft is a community of artists from all walks of life. Painters, photographers, filmmakers, illustrators, designers, animators, hobbyists, and people who picked up a pencil last week. If you make things, you're one of us. Come say hi on Discord.

DeckCraft editing a slide: ribbon, slide thumbnails with sections, a process diagram on the canvas, notes and status bar

What works · Getting started · Agents, CLI and MCP · Roadmap · The Crafting Apps · License

What works today

DeckCraft is in early development, heading for its first alpha (see the roadmap). Today it can:

  • Make decks: slide masters and eleven layouts with placeholders that inherit position and formatting, eight original themes with colour and font schemes, sections, notes, comments, headers and footers, custom slide sizes.
  • Draw: 150+ preset shapes with adjust handles, connectors that stay glued to shapes, freeform, curve and scribble tools, merge shapes (union, combine, fragment, intersect, subtract), gradient, picture and pattern fills, outlines with dashes and arrowheads, shadows, glow, soft edges and reflections.
  • Write: in-place text editing with full font and paragraph formatting, bullets and numbering, columns, autofit, vertical text, fields and hyperlinks.
  • Add content: pictures with crop and corrections, tables with styles, charts, SmartArt basics, audio and video (MP3, AAC, FLAC, ALAC, Ogg, Opus, WAV, AIFF; H.264, HEVC, VP9, AV1).
  • Present: transitions (including Morph), entrance/emphasis/exit and motion-path animations, by-paragraph builds, full-screen slide show, presenter view, pen, rehearse timings, media playback.
  • Exchange files: open and save PowerPoint .pptx, export PDF (slides, notes pages, handouts with selectable text), PNG/JPEG and outlines. Unsaved work is kept by AutoRecover.
  • Automate: 200+ commands with undo, all scriptable from the CLI, a JSON control channel and an MCP server for AI agents.
A selected shape with the Shape Format tab
Shape Format contextual tab and selection handles
The Format Shape pane editing a gradient fill
Format Shape pane: gradient type, direction and stops
Slide Sorter view with transitions under each slide
Slide Sorter with each slide's transition
DeckCraft in dark mode showing a chart slide
Dark mode, with a native chart

All eight slides of the Northern Lights sample deck
The built-in sample deck, rendered by deckcraft-cli render --sample --all

Getting started

git clone https://github.com/storytold/deckcraft
cd deckcraft
cargo run --release -p deckcraft-cli -- render --sample --all --scale 1 out/

Fonts come from craft-fonts: clone it next to this repo (../craft-fonts) and local builds pick it up automatically; without it DeckCraft uses your system fonts.

Agents, CLI and MCP

Every action in DeckCraft is a command with a stable id, so people, scripts and AI agents use the same verbs:

deckcraft-cli commands format.          # list commands
deckcraft-cli run --sample --cmd 'slide.new={"layout":"titleOnly","title":"Hello"}' --save hello.deckcraft
deckcraft-cli mcp                       # MCP server over stdio (headless)
deckcraft-cli mcp --connect 7990        # drive the running app (deckcraft --control 7990)

Roadmap

DeckCraft covers about 79% of PowerPoint's features by breadth (93% of the core ones) and is roughly 80% of the way to a first alpha. See ROADMAP.md for the alpha checklist, parity estimates and what's next, and docs/parity.md for the feature-by-feature scorecard.

The Crafting Apps

DeckCraft is one of the Crafting Apps: free, open-source creative tools from the ArtCraft team, each written from scratch in Rust and each able to stand on its own.

App What it's for Code Learn more
PhotoCraft Image editing: layers, masks, type and real PSD files GitHub Website
VectorCraft Vector illustration GitHub Website
FilmCraft Video editing, color and sound GitHub Website
LightCraft Photo library and raw development GitHub Website
PdfCraft Reading, organizing and protecting PDFs GitHub Website
EffectCraft Motion graphics and visual effects GitHub Website
DesignCraft Page layout and publishing GitHub Website
DeckCraft Presentations and slide shows · you are here GitHub Website

And ArtCraft itself, our AI image and video studio for artists who want real control.


Join the ArtCraft community on Discord

Come make things with us

Our Discord is where artists of every kind hang out: people who paint, shoot, draw, cut film, set type, and people still figuring out what they like to make. Share what you're working on, ask for help, tell us what's broken, or tell us what you wish these tools could do. Whatever your medium and however long you've been at it, you're welcome here.

discord.gg/artcraft · getartcraft.com · The Crafting Apps · DeckCraft

License and credits

DeckCraft is dual-licensed under MIT or Apache-2.0, at your option. Copyright (c) 2026 ArtCraft Team and the DeckCraft contributors. Required notices are in NOTICE.

Bundled fonts, icons, images and other assets keep their own open licenses; each one is listed with its author, source and license in ATTRIBUTION.md.

DeckCraft's themes, layouts, shape geometry, icons and sample decks are original work, drawn or generated in code; no Microsoft artwork, fonts, themes or templates are used.

The ArtCraft name, wordmark and logos in docs/brand/ are trademarks of the ArtCraft Team and are not covered by this license. They may be used only unmodified, and only as part of this repository and DeckCraft, under docs/brand/LICENSE-brand.txt. Forks and modified versions must remove them.

Microsoft and PowerPoint are trademarks of the Microsoft group of companies. Adobe, Photoshop, Illustrator, Premiere Pro, Lightroom, Acrobat, After Effects and InDesign are trademarks or registered trademarks of Adobe Inc. in the United States and/or other countries. DeckCraft is an independent, open-source project and is not affiliated with, sponsored by or endorsed by Microsoft Corporation or Adobe Inc.; these names are used only to describe the workflows it is compatible with.

ArtCraft
Made by the ArtCraft team and community.