- Model: классы модели
- Parsing: преобразование plain js-объектов в наборы диаграм
- Tape: полубесконечная лента, на которой будут работать диаграммы
- Execution: выполнение диаграмм по шагам, со стеком вызовов
- Serialization: преобразование набора диаграмм в plain'объекты для последующего превращения в строку с помощью
JSON.stringify - Наброски интерфейса
- UIModel: классы, парные для классов модели, обеспечивающие графическое представление диаграммы с помощью SVG-элементов
- Компонент
SVG-viewer, пригодный пока для просмотра SVG-диаграмм
Фичи, которые точно не будут реализованы в первой версии, но дальше за них можно взяться.
- Сетка привязки 8x8px в редакторе
- Отрисовка связей кривыми Безье
- Menu ring, как в QT-диаграммере, для быстрого построения диаграммы без постоянных кликов в тулбокс
- Наборы тестов с быстрой подстановкой в ленту диаграммера или история тестов
- Import/export отдельных диаграмм (или файлов целиком)
- Undo/redo в редакторе
- Просмотр истории выполнения с откатом всего выполнения для повторного вдумчивого прогона (например, кнопкой step back)
- Текстовые блоки-комментарии на диаграмме
- Редактирование диаграммы в процессе выполнения (сомнительно и, может, не нужно вовсе)