ChimeHQ / Chime

An editor for macOS
https://www.chimehq.com
BSD 3-Clause "New" or "Revised" License
300 stars 14 forks source link
extensionkit macos swift swiftui text-editor
[![Build Status][build status badge]][build status] [![Documentation][documentation badge]][documentation] [![Matrix][matrix badge]][matrix]

Chime

An editor for macOS

An alpha of 3.0 is available in releases. The more stable, but closed-source 2.x version is available on the website.

Goals:

Features:

Usage

To install Chime's Quick Look Preview extension and Shortcuts, you must do two things:

After that, you can quit and not touch it again. However, to get automatic updates, you must also re-launch the app from time to time. But that's, of course, totally optional.

Project State

Chime, as an editor, should be considered mostly non-functional right now. If you want to use it in that capacity, you can download the current stable version. However, the Quick Look Preview extension exists to help expose real, useful features of this project. You can check that out via releases.

Chime used to be commercial, but is now free. It built up some pretty significant cruft over time. In particular, the core UI application architecture is just in a bad state. It is also quite complex to build. So, I've opted to re-implement that core and pull in parts as appropriate. I'll be putting an emphasis on extracting components into packages as I go. A fitting rebirth, I would say.

Contributing

It is always a good idea to discuss before taking on a significant task. That said, I have a strong bias towards enthusiasm. If you are excited about doing something, I'll do my best to get out of your way.

The project is internally documented with DocC. The docs contains details about getting started, structure, and internal systems/behaviors. Both Matrix and Discord are available for live help, but GitHub issues/discussions is preferred.

There are a few areas that would make for excellent targets though, if you really feel so inclined.

By participating in this project you agree to abide by the Contributor Code of Conduct.

Building

Note: requires Xcode 15 and macOS 14

Why the submodules you ask? Chime embeds many of its extensions inside the application itself for ease of installation. However, because of limitations in how you can influence the linking process with SPM, I cannot figure out how to use SPM and also link against the included ChimeKit.framework.

Guidelines

Conventions

Significant Issues

Chime is a reasonably complex project. It's bound to run into bugs in Apple frameworks, Xcode, and other systems that present a real problem to its development. This is a list of the most serious issues, which have a major impact on either the user or developer experience.

Other Notable Projects