Skip to content

A cross-platform font editor built in Rust and TypeScript

License

Notifications You must be signed in to change notification settings

shift-editor/shift

Repository files navigation

Shift

A modern, cross-platform font editor built with TypeScript and Rust, focused on bringing contemporary technologies and design principles to type design.

image

Why Shift?

Shift aims to redefine font editing by combining the power of Rust for performance-critical tasks with the flexibility of web-based UI technologies. Whether you're a type designer or a developer, Shift offers a fresh approach to creating and editing fonts with a focus on speed, precision, and extensibility.

Important

Shift is in a pre-alpha state and is currently only suitable for developers interested in contributing to the project

Architecture

┌─────────────────────────────────────────────────────────┐
│                      Frontend                           │
│  React UI  ←→  Editor  ←→  Canvas 2D Renderer           │
└────────────────────────┬────────────────────────────────┘
                         │ IPC / NAPI
┌────────────────────────┴────────────────────────────────┐
│                       Backend                           │
│  shift-node (N-API bindings)  ←→  shift-core (Rust)     │
└─────────────────────────────────────────────────────────┘

The frontend handles UI and rendering via Electron, while all font data and editing operations live in Rust. Communication happens through native Node.js bindings, keeping performance-critical work off the main thread.

Getting Started

Prerequisites

Quick Start

git clone https://github.com/shift-editor/shift.git
cd shift

pnpm install
pnpm build:native
pnpm dev

Roadmap

See ROADMAP.md for current implementation status and planned features. We are planning to ship a production grade font editor.

License

GNU General Public License (GPL) v3.0

Copyright © 2026 Kostya Farber. All rights reserved.

About

A cross-platform font editor built in Rust and TypeScript

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •