Skip to content

tatey/JekyllStudio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JekyllStudio

A Mac-arsed app writing experience for Jekyll blogs.

JekyllStudio app icon

JekyllStudio is for people who love the Jekyll philosophy of content is king, but yearn for the polished writing experience of platforms such as Substack, Wordpress, or iA Writer. Now we can have both! 🎉

Key features:

  • Built-in markdown editor and integrated preview pane.
  • Drag and drop images with automatic optimisation and markdown insertion.
  • Create and edit posts without manual filename handling; YYYY-MM-DD-title.md is inferred.
  • Fully native macOS app that runs 100% locally.
  • Open source under MIT license.

Created with ❤️ and 🤖 by Tate Johnson.

Screenshots

Screenshot editing a blog post Screenshot of editing front matter with server log visible Screenshot editing a blog post in dark mode

Status

JekyllStudio is an experimental alpha and has been built with OpenCode and GPT 5.3 Codex.

  • Source-first release model: build from this repository.
  • Public releases are tracked by git tags, starting at v0.1.0.

Run at your own risk!

Building and running from source

There's no .xcodeproj here. The project is built using a fast and lean make-esque script.

Requirements

  • macOS 26+
  • Swift toolchain with Swift Package Manager
  • A local Jekyll blog repository with Ruby/Jekyll dependencies installed

Commands

  • ./swiftw dev builds and launches the debug app bundle from dist/JekyllStudio-debug.app.
  • ./swiftw bundle release produces a release .app bundle under dist/.
  • ./swiftw help prints all the available commands

Versioning

  • The marketing version is stored in VERSION.
  • Each local build increments .build_number automatically.
  • Public release identity comes from git tags, not the local build counter.

Trust model

JekyllStudio is for trusted local blogs only.

  • The preview server feature runs a user-provided local shell command.
  • Changed commands must be explicitly trusted before JekyllStudio will auto-start them.
  • The embedded preview only supports localhost-style targets such as localhost and 127.0.0.1.
  • If your Jekyll config or permalink points to a remote URL, JekyllStudio will block the in-app preview and let you open it in your browser instead.
  • Avoid embedding secrets directly in the preview command because it is stored in local preferences.

Roadmap

For product direction, scope, and architecture notes see PRODUCT.md.

License

JekyllStudio is released under the MIT License. See LICENSE.

About

A Mac-arsed app writing experience for Jekyll blogs

Topics

Resources

License

Stars

Watchers

Forks

Contributors