Remove Charcoal references from the code for now

This commit is contained in:
Keavon Chambers 2022-01-12 03:56:28 -08:00
parent 7dfabcedfc
commit cbb4feba45
8 changed files with 6 additions and 40 deletions

View file

@ -4,13 +4,12 @@ This is a great place to start learning about the Graphite codebase and its arch
## Core libraries
Graphite's core rust codebase is split into three reusable libraries:
Graphite's core rust codebase is split into two reusable libraries:
- Editor
- Graphene
- Charcoal
Each depends on its successor in the list. These are used internally but also intended for usage by third parties through Rust or linked by a project in C, C++, or another language.
The Editor depends on Graphene, but Graphene can also be used alone. These are used internally but also intended for usage by third parties through Rust or linked by a project in C, C++, or another language.
## Code structure
@ -25,6 +24,4 @@ The main modules of the project architecture are outlined below. Some parts desc
- **Graphite Editor (Backend)**: `/editor/`
Used by a frontend editor client to maintain GUI state and dispatch user events. The official Graphite editor is the primary user, but others software like game engines could embed their own customized editor implementations. Depends on Graphene.
- **Graphene (Document Graph Engine)**: `/graphene/`
A stateless library for updating Graphite design document (GDD) files. The official Graphite CLI and editor client backend are the primary users, but this library is intended to be useful to any application that wants to link the library for the purpose of updating GDD files by sending edit operations. Optionally depends on Charcoal if rendering is required.
- **Charcoal (Asset Render Engine)**: `/charcoal/`
A stateless library (with the help of in-memory and/or on-disk caches for performance) for rendering Graphite's asset graph (GDA) files. The official Graphite CLI and Graphene are the primary users, but this library is intended to be useful to any application that wants to link the library for the purpose of rendering Graphite's asset graphs. For example, games can link the library and render procedural textures with customizable parametric input values.
A stateless library for updating Graphite design document (GDD) files. The official Graphite CLI and editor client backend are the primary users, but this library is intended to be useful to any application that wants to link the library for the purpose of updating GDD files by sending edit operations. This also serves as the 2D render engine and this is intended to be useful to any application that wants to link the Graphene library for the purpose of rendering Graphite graphs. For example, games can link the library and render procedural textures with customizable parametric input values.