V2 is back :-) the overall goal is codebase modernization. Much of the code hasn't been worked on since 2010, so it's time to do an all-up scrub.
While most user scenarios and functionality will be the same as V1, the one main functionality improvement will be multi-project editing that will allow for cross-project copy/paste and merging fonts.
Website | glyphrstudio.com |
---|---|
[email protected] | |
App | glyphrstudio.com/v2/app |
Help & Docs | glyphrstudio.com/v2/help |
Blog | glyphrstudio.com/blog |
Mastodon | @[email protected] |
reddit.com/r/GlyphrStudio | |
@glyphrstudio | |
GitHub | github.com/glyphr-studio |
My rough road-map is to start refactoring the Glyph Element objects (the underlying data structures that describe glyphs), ensure we have good separation between data and the UI, then start working on the new UI layer.
Glyph Elements / Project Data stuff | |
---|---|
✅ | Modules (native) |
✅ | Change prototypes to classes |
✅ | Let / Const instead of Var |
✅ | Template strings instead of string concatenation |
✅ | Lint everything with Prettier |
✅ | JSDoc all the things |
✅ | Vitest tests for everything (basic coverage) |
🔜 | Vitest tests for everything (advanced coverage) |
UI Layer stuff | |
---|---|
✅ | Use Web Components to define atomic controls |
✅ | New top-level navigation / page view switching |
✅ | CSS3, mostly for Variables and Layout |
✅ | Let / Const instead of Var |
✅ | Template strings instead of string concatenation |
✅ | Lint everything with Prettier |
✅ | JSDoc all the things |
🔲 | Vitest tests for everything (basic coverage) |
🔲 | Investigation - Language switching for localization |
So, here at Glyphr Studio, we've always had a very strong DIY attitude - this means:
- The only external library we will use for the UI is OpenType.js, for importing and exporting OTF files
- This means no UI Frameworks like React or Vue, and no helper libraries like Paper.js
- The whole app will still concat down to HTML, CSS, and JavaScript files:
- Continuing the ability to run locally (or online) without a back-end
- Build process using Vite for modules
Preliminary investigations started in 2019... but Covid slowed things way down. Things have picked back up in 2021/2022. Alphas are being released in late 2022 / early 2023, with a goal of finishing in (the first half?) of 2023.
Bug fixes for V1 will still take precedence over V2.
Merging new ideas with old functionality is time consuming :-)
Copyright (C) 2010 - 2023 Matthew LaGrandeur, released under GPL 3.0
Matthew LaGrandeur |
matt[at]mattlag[dot]com |