You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Instead of piling up problems, it might be time to rewrite a large chunk of Topos. Here is a breakdown of the features I would like to implement and how I would do it. This refactoring is the base for some sort of Topos v.2.0 that aims to hit many birds with one stone:
General:
Switch to Svelte or some light reactive framework
Build the application around reusable components
Nail down testing and version numbering
Interface:
Conceptual distinction between SCRIPTS and PROJECTS.
Any script can be saved independently from PROJECT and reused.
A script can also be played independently from a PROJECT.
Basic CRUD interface for SCRIPTS and PROJECTS.
This can be done with or without a database. This can also be done on local file systems.
In order to do so, generic CRUD interface and modularize the behavior depending on runtime.
Modularize playback: small editor, playback only, etc. Facilitate sharing Topos projects.
Re-use the same canvas as much as possible instead of multiplying canvas
Baked-in collaboration tools using Yjs. Allow the creation of multiplayer projects / rooms
Documentation:
Documentation using MDSVex and custom components for code playback / demos
Documentation is written directly in the source and cascades to the docs.
Minimize human intervention in some/most parts of the documentation.
Sequencer / Engine:
Evaluation model refactoring: there should be only one evaluation routine instead of many.
You can't trust JS or the web browser to evaluate things in time, minimize evaluation.
Implement some Tidal-like query rate => how? Everything has failed so far.
The text was updated successfully, but these errors were encountered:
Instead of piling up problems, it might be time to rewrite a large chunk of Topos. Here is a breakdown of the features I would like to implement and how I would do it. This refactoring is the base for some sort of Topos v.2.0 that aims to hit many birds with one stone:
General:
Interface:
Documentation:
Sequencer / Engine:
The text was updated successfully, but these errors were encountered: