Modular Font Editor K (MFEK) is an open source (Apache 2.0 licensed) modular font editor. It attempts to apply the Unix adage that each program should “do one thing and do it well” to a GUI font editor.
MFEK is still alpha, and many parts are missing (including a good website!). You can help!
To see who wrote an MFEK module, check its AUTHORS file. The two main authors of MFEK are Fredrick R. Brennan (@ctrlcctrlv) and Matthew Blanchard (@MatthewBlanchard).
Current roadmap as of 2022-12-25
Roadmap key
Dotted line around module name — module not started.
Dashed line around module name — module started, yet far from completion.
No line around module name — module is still far from being begun, and may indeed be unnecessary and never be begun.
A bold black arrow represents a program calling a program.
A red arrow represents a program including a library.
A black arrow represents a library including a library.
All libraries and programs are assumed to be in Rust unless noted otherwise.
(We need this because Norad has no support for <lib> in .glif files, and due to how they went about implementing Norad, fixing that is trickier than having my own glyph parser. Furthermore, as I plan to support Spiro, B-Splines, etc., through UFO format extensions, I should have one anyway.)
icu-data.rlib (Unicode ICU data without C libicu, currently only encodings)
ipc.rlib (very basic inter-process communication functions)
math.rlib (implements algorithms for MFEKstroke: Pattern-Along-Path, Variable/Constant Width Stroke, etc.)
Planned
libskef (Port of @skef's «Expand Stroke» feature to a reusable C API. Will likely also require SplineSet type from FontForge.)
spiro-rs (Port of libspiro to Rust, probably will be done via bindgen)