Write, calculate and present
by Wagner Brahm, with Claude
- Free software
- Made for GNOME
- In development
Apps in the suite
-
Desk Writer
Word processing and page layout, from your term paper to the bakery's flyer.
-
Desk Tables
Spreadsheets with many free-floating tables on one sheet, formulas and good-looking charts.
-
Desk Slides
Presentations with transitions and builds that make the audience forget to check their phones.
About
I used Linux in college. But life kept sending me Microsoft Office files and asking for things in Photoshop, so around 2008 I gave in and moved to the Mac. That is where I met iWork, which came with the computer. It was love at first sight: before long I had dropped Microsoft Office for good.
Years went by, Apple rewrote iWork for 64 bits, and the new version shipped without many useful features that never came back. I missed iWork '09, and I still do.
Now Linux is my main system again, and I decided to build for it the iWork equivalent I wished I had. LibreOffice is an admirable project, but it was never for me: it has a lot I don't use, and it doesn't look at home in GNOME, my favorite desktop. Desk is my attempt to bring both together: the simplicity of iWork '09 and the look and feel of a real GNOME app.
Some things you can expect:
- The three apps share one document model, so a table, a chart or a block of text behaves the same in all of them.
- Built with Rust, GTK 4 and Libadwaita, following the GNOME Human Interface Guidelines.
- Documents are saved as OpenDocument (ODF), and your old iWork '09 files will open too.
- The document engine is separate from the interface, in libraries that other projects can use. There is already a command-line converter that runs with no graphical interface at all.
- And if the community asks really nicely, we will port it to Plasma. :)
Desk is being built by me together with Claude, Anthropic's AI. That is no excuse for shortcuts: every feature of Pages, Numbers and Keynote '09 became a row in a parity matrix (585 of them), every change goes through review and a CI that checks formatting, lints, tests and licenses, and the output is compared, pixel by pixel, with PDFs made by the real iWork 9.3 in a virtual machine.
What comes next
We are starting with Desk Writer, because the text engine is the hardest part and the other two apps depend on it. Its first five stages are done, and you can already try it in beta. More will follow bit by bit as each stage is done.
-
Foundation done
Code layout, CI, licenses, icons, and a virtual machine with iWork 9.3 that makes the reference documents.
-
Text core done
Document model, text engine and pagination, reading and writing ODT and making PDFs from the command line.
-
iWork reader done
Opening your old .pages files, and measuring, feature by feature, how close we are to the original.
-
Minimal editor and test version done
Opening, editing and saving formatted text in Desk Writer, with a screen reader too, shipped as a nightly Flatpak.
-
Styles, lists and document structure beta
Styles, lists, spelling and grammar, sections, columns, headers and footers, footnotes, tables of contents, page thumbnails and the outline, released as the first beta.
-
Objects, tables, formulas and charts
Images, shapes and effects, and the table and chart engine that Desk Slides and Desk Tables build on.
-
Review, templates, printing and formats
Change tracking, comments, templates, mail merge, and export to PDF, Word, RTF and ePub.
-
Desk Writer 1.0, then Slides and Tables
Parity with Pages '09 and version 1.0. Desk Slides and Desk Tables start as soon as the object and table engines are ready.
Install
Desk Writer is in beta, as a Flatpak from Desk's own repository. Add the repository and install the app:
flatpak remote-add --if-not-exists desk https://brahm.github.io/desk/desk.flatpakrepo
flatpak install desk br.com.brahm.Desk.Writer//beta
Or open desk-writer-beta.flatpakref to install it with GNOME Software. It is a test version: keep a copy of the documents you open with it. For the version built every night from the latest code, use //nightly or desk-writer-nightly.flatpakref. You can also build Desk from the source code.
Get involved
Desk is free software and still young, so every bit of help counts. We are one person and one AI: please be patient with us, and thank you in advance.
- Report an issueFound a bug? Tell us what happened and how to repeat it.
- Request a featureMissing something from iWork '09? Just ask.
- Send old iWork documentsPages, Numbers and Keynote '09 files help us test compatibility.
- Contribute codeThe code is on GitHub, in Rust, with CI running every check before each merge.
- TranslateThe interface is in English and Brazilian Portuguese. Add your language with a PO editor such as Gtranslator or Poedit.
Details
- VersionDesk Writer beta, with nightly builds
- LicenseApps under GPL-3.0-or-later, file format libraries under MPL-2.0
- Built withRust, GTK 4 and Libadwaita
- PlatformGNOME 51, shipped as a Flatpak
- FormatsOpenDocument (ODF), and reading iWork '09
- Developed byWagner Brahm, with Claude