Skip to content

shift-editor/shift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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.

See docs/editor-integration.md for detailed architecture

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 © 2025 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

  •  
  •  
  •  
  •