Roadmap

In Progress

Planned

  • Cross datum search

  • Notion import

  • Data export (Markdown, CSV, JSON)

  • Note linking, embedding, and images

  • Undo/redo levels

  • Collaboration groups

  • Mobile apps

  • Custom types

  • Keyframe animations

  • Local filesystem database

  • E2E encryption

  • Oauth login

Development Updates

Early Access v0.25

38 days ago

Version 25 is the largest CoCube release so far. CoCube now runs as a native desktop app on macOS, Windows, and Linux. Notes gain flashcards with spaced repetition, tables, task lists, nested quotes, in-note find, and embeddable components. A rebuilt landing page tour shows each of these live.

CoCube is now a native desktop app

The full CoCube runtime now ships as a desktop app for macOS, Windows, and Linux, downloadable from the landing page. Your data persists to a SQLite database on your own disk, in your platform's standard data directory. If cocube.com goes dark, the app keeps working. The native app signs in through a GPU-rendered account page, keeps your session across restarts, and opens external links in your system browser. When a newer version ships, a dismissible banner offers the download. Releases are unified: every web release publishes matching native builds, and the server serves version-matched binaries from the download links.

Remember what matters: flashcards with spaced repetition

Any block in a note can become a flashcard. Select text and choose Remember from the context menu, or type /remember, and a capture popup pre-fills the card from the block you were reading. Cards are private root datums linked back to their source block, and a gutter marker shows which blocks carry cards. Reviews run on the FSRS spaced-repetition scheduler. A due badge in the explorer opens a full-screen study surface, and a study deck component can be slash-inserted into any note. Card fronts and backs are full Notes with live editors, so a card can hold formatting, lists, and embedded components like any other note.

Tables

Table is a first-class CoCube type with stable-ID columns and rows, typed columns, and CRDT persistence, so concurrent edits from collaborators merge cleanly. The table component renders an editable grid: rename headers, edit cells with type-checked editors, insert and remove rows and columns, resize columns, and scroll. Tables insert into notes from the slash menu.

The Note editor grows up

Task lists: type a bracket pair after a list marker for a to-do item with a working checkbox, or use the To-do slash entry. Block quotes nest, with depth editing gestures and quote bars that survive copy and paste. Code and quote blocks pick up visual styling. Find: Cmd+F opens a find bar that searches the note, highlights matches, scrolls to them, and cycles with Enter and Shift+Enter. The query is remembered across find sessions. The new slash menu is keyboard-first and context-aware: a filtered list with a live preview pane, block templates for headings, lists, quotes, code, and dividers, and component insertion with an Inline or Block placement choice. Components inserted as blocks fill the note's width and size themselves to their content — a bar chart, a table, or a study deck live directly between paragraphs.

Performance

The reactive evaluator now skips re-evaluation of cells whose inputs did not change, and structural updates reconcile in batched waves instead of one cascade per change. Signals fire with path precision on note edits, so a keystroke in one block no longer wakes readers of every other block. Edge-autoscroll during drag selection and cross-block cursor scrolling round out the editing feel.

A new landing page tour

The landing page walks through real use cases — rich private notes, a client database, live collaboration, a metrics dashboard, and study — each backed by a real CoCube console running in the page.

Notes for updating:

  • Workspace creation is removed. Notes are now the primary document type; existing Workspaces still open.

  • macOS native builds are not yet notarized. Gatekeeper requires an explicit override until code signing lands in an upcoming release.

  • Native clients older than the server's minimum supported version keep local editing but pause sync until updated.

All updates:

  • Shipped the native desktop app: SQLite persistence to the platform data directory, GPU-rendered sign-in, session persistence across restarts, window icon and title, and system-browser link handling.

  • Added the update-available banner, a public /client_version endpoint, and a minimum-client-version gate that pauses sync (not editing) for outdated native clients.

  • Added a downloads section to the landing page with stable per-platform /download routes serving version-matched binaries.

  • Unified the release pipeline: every release builds web and all three native platforms together, gated on all platforms passing tests.

  • Added Memorize: select-to-capture and /remember flashcard creation pre-filled from the source block, with cards linked to the block that made them.

  • Added per-block gutter markers with an anchored popup to suspend, unlink, or delete a block's cards.

  • Added FSRS spaced-repetition scheduling with a full-screen study surface, card browser, explorer due badge, and a slash-insertable study deck component.

  • Made card fronts and backs full Notes with live editors.

  • Added the Table type: stable-ID typed columns and rows with CRDT persistence and clean concurrent merges.

  • Added the table component: editable type-checked cells, header rename, row/column insert and remove, column resize and type display, zebra striping, and scrolling.

  • Added table query builtins: table_from_datums, table_column_values, and zip_with.

  • Added task list items with working checkboxes, typed task shortcuts, and a To-do slash entry.

  • Added nested block quotes with depth gestures, quote bars, and copy/paste depth preservation.

  • Added in-note find: Cmd+F find bar, match highlighting, scroll-to-match, Enter/Shift+Enter cycling, and remembered queries.

  • Rebuilt the slash menu: keyboard-first filtered list with live preview, block templates, and Inline/Block component placement.

  • Added components as note blocks: block components fill the note width, size to content, and include the new bar_chart builtin.

  • Added visual styling for quote and code blocks, and centered inline components within their line.

  • Added change-gated topological evaluation: cells with unchanged inputs skip re-evaluation.

  • Added batched reconciliation: one wave per structural change, rounding to quiescence.

  • Added path-precise signals on note edits so keystrokes wake only readers of the edited block.

  • Added edge-autoscroll during drag selection and scroll-to-cursor on cross-block caret movement.

  • Rebuilt the landing page as a use-case tour with real consoles: notes, client database, live collaboration with pause/resume sync, metrics dashboard, and study.

  • Added demo sync groups: seeded in-memory repos per landing demo, isolated from the server.

  • Added viewport-driven console attach/suspend so landing pages stay light.

  • Added a resizable backing-box frame with edge grips in the component editor.

  • Added edge-aware scroll capture: scrollable components release scrolls at their edges so the page keeps scrolling.

  • Removed Workspace creation and de-documented Workspaces in favor of Notes.

  • Moved the client version to a commit-count scheme; the changelog version is editorial.

  • Fixed focus loss so it unselects and clears the text cursor like a click on empty canvas.

Blog

Notes on local-first software, CRDTs, reactive programming, and the engineering behind CoCube.

Previous Development Updates

Early Access v0.24

122 days ago

Version 24 turns the Note editor into a markdown-compatible block editor, adds spell check, gives desktop trackpads proper pinch-to-zoom, and surfaces invalid datums explicitly in the workspace explorer.

The Note editor is now block-aware

A Note is a sequence of blocks — paragraphs, headings, list items, block quotes, code blocks, thematic breaks — and the editor understands transitions between them. Enter starts a new block. Backspace at the start of a block merges it into the block above. Tab indents list items. Arrow keys navigate between blocks, and Arrow Left/Right cross block boundaries. Selection spans blocks too. Drag across blocks to pick a range, then type or toggle a mark to apply it across every selected block at once. Copy and paste round-trip through markdown, so pasting markdown from outside CoCube pastes blocks instead of one flat paragraph.

Markdown shortcuts and inline marks

Inline marks ship with the editor. Bold, italic, and strikethrough toggle with Cmd+B, Cmd+I, and Cmd+Shift+X. Strikethrough renders as a horizontal stroke through the text. Link marks render in the theme blue with an underline. The console above is a real Note running through the new editor. Edit it, change the formatting, add blocks — the source markdown describes how each shortcut works.

Desktop pinch-to-zoom and softer wheel zoom

Desktop trackpads now zoom with pinch gestures on macOS and with Ctrl+wheel everywhere else, matching the two-finger pinch added on mobile last release. Wheel zoom sensitivity is dialed back so a single scroll wheel notch no longer overshoots.

Function editor and invalid datum visibility

The function picker in the expression editor shows full function signatures and supports fuzzy filtering. Swapping to a new function preserves the arguments the old one used where they line up by name, so changing your mind about which function to call no longer means re-entering every argument. Datums that fail to parse no longer disappear from the workspace explorer. They appear with an explicit Invalid marker, hovering surfaces the underlying parse error, and the bytes propagate between peers so collaborators see the same broken state and can recover together.

Notes for updating:

  • Pasting markdown into a Note now produces structured blocks instead of one paragraph. Plain-text paste is unchanged.

  • Right-click no longer opens the cell expression editor by default; it opens the spell-check suggestion popup when the cursor is on a misspelled word.

All updates:

  • Rewrote the Note editor as a block-aware editor over Paragraph, Heading, ListItem, BlockQuote, CodeBlock, and ThematicBreak blocks.

  • Added Enter, Backspace-at-start, and Tab handling for block transitions and list indentation.

  • Added Arrow Up/Down at top/bottom rows and Arrow Left/Right at boundaries to cross block edges with the cursor.

  • Added cross-block selection via drag, with cross-block range replace, backspace, copy, and paste.

  • Added Bold, Italic, and Strikethrough mark toggles via Cmd+B, Cmd+I, and Cmd+Shift+X, applied across cross-block selections.

  • Added rendering for Strikethrough (horizontal stroke) and Link (theme blue with underline) marks.

  • Added markdown round-trip: pasted markdown parses to Note blocks, copied selections serialize back to markdown.

  • Migrated the workspace editor to use the new Note type.

  • Added click-on-backing to select the Note and place the cursor at the end.

  • Added spell check: misspelled words get a wavy red underline; right-click opens a suggestion popup.

  • Added desktop trackpad pinch-to-zoom on macOS and Ctrl+wheel zoom everywhere.

  • Reduced wheel-zoom sensitivity to 75 percent of the previous value.

  • Added function signatures and fuzzy filtering to the function picker, with argument preservation across function swaps.

  • Made array-component insertion and subcomponent removal work consistently across maps and arrays.

  • Made invalid datums visible in the workspace explorer with hover-revealed parse errors.

  • Added an accessible_datum_info builtin returning a Map of datum metadata, and a ValidOnly filter on the datum list.

  • Added bounded Number arithmetic that no longer panics on overflow and reduces oversized rationals.

  • Fixed stretched frames and jitter during browser window resizes.

  • Fixed virtual keyboard flicker on mobile touch devices.

  • Suppressed hover events during latched touch scroll gestures.

  • Fixed the cell expression editor failing to follow modifications on editable component previews.

  • Fixed the view editor click-away closing behavior and centered the console layout with a reserved tutorial gutter.

  • Rewrote the What is a CRDT blog post and added markdown code-block support in blog rendering.

Early Access v0.23

165 days ago

Version 23 introduces rich text editing and inline components, making CoCube much smoother to edit in, especially for text-heavy workspaces and touch devices.

Rich text editing and inline components change what you can build directly inside a workspace. Text can now carry formatting, wrap cleanly, and work with undo and redo. Slash-command insertion, better cursor placement, cleaner selection behavior, and more polished inline editing make writing and structure editing feel less janky. Touch devices improved a lot in this release too. Phones and tablets can now pan, zoom, long-press, and bring up the virtual keyboard in ways that make the editor much more usable. Popups, gutter interactions, and a lot of the smaller text-edit details also got cleaned up along the way. Collaboration features were updated too. Shared datums can now inherit parents, permissions, and sync peers. Collaborators are identified by username. The website changed a lot during this release too. There is now a richer blog, tool pages, and updated landing and learning content.

Notes for updating:

  • Collaborators are now identified by username instead of email.

  • Free plans now allow 1 collaborator, while paid plans allow unlimited collaborators.

All updates:

  • Added undo/redo support.

  • Added rich text formatting in TextEdit, including bold/italic keyboard shortcuts.

  • Implemented word wrapping and improved text cursor, highlight, sizing, and reflow behavior.

  • Added inline components in text, plus slash-command insertion with fuzzy filtering.

  • Added datum picker improvements for selecting and inserting workspace data.

  • Improved workspace editor and popup behavior across text blocks, cell editors, and inline editing.

  • Added double-click word selection and better gutter interactions in text editing.

  • Added virtual keyboard support for mobile/tablet devices.

  • Added mobile gesture support including pan, tap, zoom, and long-press.

  • Added parent/child datum hierarchies with inherited permissions and sync peers.

  • Moved collaboration identity from email addresses to usernames.

  • Updated the landing page, learn content, and interactive splash experience.

  • Added a new blog system with richer post formatting, related posts, and share/copy controls.

  • Expanded the website with structured metadata, sitemap generation, and tool pages including a bar graph maker.

Early Access v0.22

198 days ago

Version 22 moves from Automerge to Loro for persistence and allows CoCube to run in multiple windows.

This update primarily focuses on updating the local persistence backend for CoCube and introducing multi-window support. The move to Loro will enable smoother update migrations in the future and provide better support for the type of data access CoCube needs. Multi-window support means that the landing page and learning documentation can be updated to include inline, interactive examples. These documents will be completely reworked in future versions.

Notes for updating:

  • Components from previous versions will need to be rebuilt.

All updates:

  • Moved to Loro for persistence.

  • Made CoCube runtime work across multiple windows.

  • Changed AlignFrom attribute cell to Origin.

  • Interactive splash component on landing page.

  • Updated Learn pages and documentation.

  • Updated Data Persistence documentation.

Early Access v0.21

244 days ago

Version 21 enables creating, persisting, sharing, and collaborating in workspaces using custom components.

Before this update, only custom components could be created. Now, using component inputs and the new Workspace editor, you can create full workspaces. This update makes CoCube usable for its intended purpose: creating useful tools.

The update required a complete rewrite of the persistence system. Now, instead of only storing Components, data of any type can be persisted. This makes CoCube a sort of extensible local/collaborative database.

Notes for updating:

  • Components created in previous versions will need to be recreated.

All updates:

  • Full refactor of the persistence system to allow any data type to be stored.

  • Created note type and the note editor.

  • Component cells can now be marked as inputs.

  • Updated learning material formatting for better mobile readability.

  • Added tutorial for creating a custom bar chart component.

  • Added documentation on component persistence.

  • Fixed function selection not updating when changing a function on a nested component.

  • Changed cell override OnClickEmit to EmitData for button component.

  • Added Icon shapes.

  • Fixed window focus loss resetting mouse drag.

  • Changed TextEdit to emit TextModified instead of EventTagTextModified event.

  • Renamed ToggleSwitchEmitter built-in component to ToggleSwitch.

  • Replaced Var function with Matched function for event handlers.

  • Updated function reference with descriptions.

  • Fixed Atan2 argument order.

  • Fixed component explorer delete popup behavior when clicking backing box.

  • Increased text edit component performance by ~2x during typing.

  • Built-in components now have input cells.

  • Added IsHovered fn.

  • OverrideableCells function.

  • DocumentTitle, DocumentValue, and DocumentType functions.

  • Type is now a literal.

  • ComponentRef type is renamed to View.

  • Internal updates improving site load times.

  • You can now star documents so they appear at the top of the document explorer.

  • Implemented cut/copy/paste in the TextEdit component.

  • Improved TextEdit component performance with lots of text.

Early Access v0.20

626 days ago

This change introduces a new literal type to CoCube - Component.

Previously, components were represented as Maps, where the map key indicated the name of a Cell, and the value indicated the cell's expression. This was done to keep the number of types low and to keep things simple, but had some drawbacks:

  • Determining if a Map was being used as a Component, a set of subcomponents, or just regular data became difficult.

  • The Map type had to follow cell invariants (only indexed by Text).

  • The Map type had to follow subcomponents invariants (only indexed by Text, ordering representing layers).

By creating the new component type, much of this complexity has been reduced. This allows users to edit this data more easily in expressions without having to keep track of what they are representing. This also moves the tool one step closer to freeing up the Map type to use more than just Text as keys.

Notes for updating components:

The Children cell has been renamed to Components. Existing components must have this cell redefined for their subcomponents to be visible. The Components cell now expects a Map of Component/ComponentRef values. Defining a subcomponent using a Map no longer works. This release also ships with many updates to the UI/UX as well as various fixes, some of which are mentioned below.

All updates:

  • Added the Component literal type.

  • Renamed Children Idx to Components (breaking).

  • Expect children components to be defined as Component literals (breaking).

  • Updated quick start documentation with more info and better formatting.

  • Fixed UI spacing on subcomponents panel.

  • Fixed scroll area being scrollable outside of content bound.

  • Fixed time since last development update.

  • Fixed crash on removing Array items via expr editor.

Early Access v0.19

660 days ago

This is the first of many development updates meant to go into more detail about how CoCube is being created. This post covers covers the update to version 0.19.

Long term persistence.

Custom components should behave the same way through any change or feature update that CoCube goes through. This problem is simple and obvious to state but is challenging to solve. How do you ensure that if a function is removed, components that used that function are successfully migrated to a new function (or an expression) that does the same thing? What about when an attribute is updated with new functionality or even the type of data it expects to receive needs to be changed? These kinds of problems often come up when building software, and while there are solutions in many cases, sometimes the only way forward is to force the user to update their existing work. Most of the changes in v0.19 are to give attribute cells more information about the data they are storing so that future updates do not break existing components. Unfortunately, these updates have the side effect of breaking existing components, but they bring CoCube one step closer to preventing these kinds of breakages in the future.

More data types.

Open expression editor with all types.

Before, expressions were limited to Bool, Number, Text, Map, Array, Component, and Function types. This update introduces multiple new data types: Angle, FixPoint, Anchor, Color, EventHandler, and Shape. These types each have their own editors in the expression editor, making them easier than ever to work with.

Removing the sidebar.

With the updated types and their associated expression editors, the left-hand sidebar is no longer needed. Now, all changes are made via the Node panel.

All updates:

  • Added Color type.

  • Added EventHandler type.

  • Added FixPoint type.

  • Added Angle type.

  • Added Anchor type.

  • Added Shape type.

  • Can now edit all fields of event handler arguments.

  • Reactivity panel now directly displays event handler function.

  • Added ScrollArea builtin component.

  • Removed left sidebar in node editor.

  • Fixed editor not always showing computed value of function calls.

  • Updated home navigation button appearance.

  • No longer require a username.

  • Fixed issue with backspace not always registering on text edit.

Early Access v0.18

690 days ago

  • Added Ref/Expr indicator for node children.

  • Fixed Reactivity panel issue when using SetCell with a referenced cell.

  • Fixed render order issue on refs.

  • Added ScreenHeight and ScreenWidth functions.

  • Scale node editor to screen size.

  • Set NodeRef overrides when editing a ref node.

  • See overrideable cells (inputs) when editing a ref node.

Early Access v0.17

716 days ago

  • Node editor UX.

  • UX for publishing, sharing, and adding collaborators.

  • Url driven navigation.

  • Faster incremental updating.

  • CubeRef type.

  • Stable persistance format so future changes do not break existing cube definitions.

  • Various bugfixes.

Early Access v0.16

747 days ago

  • Updated landing page.

  • Implemented subscription management via Stripe from account page.

  • Show current plan on pricing page.

  • Updated pricing page layout.

  • Updated account page layout.

  • Fixed login delay on console.

  • Scrollable cube now takes max height.

  • Better validation on login and create account screens.

  • Updated nav bar.

  • Cubes are now owned locally.

Early Access v0.15

760 days ago

  • Implemented delete support for remote cubes.

  • Replace nav bar buttons in console with single account button with icon.

  • Clicking user account info in console navigates to user account page.

  • Fix error when navigating from console back to landing page.

  • Console is now started when the page is visited, so it is much faster to open.

  • Navigating away from the console does not cause it to unload.

  • Updated roadmap to reflect 2024 vision document.

  • Fix issue with text cursor not always appearing when clicking.

  • Remove text highlight when changing cursor position.

  • Fix vertical text alignment to be more centered on all rendered text.

  • Fix vertical alignment on icons.

  • Update console navigation bar layout to be more consistently sized.

  • Wrote and posted CoCube Vision for 2024.

Early Access v0.14

766 days ago

  • Canonicalized domain name across all api calls.

  • Automatically redirect to canonicalized domain with www prefix.

  • Fix CORS issue in safari when using non-canonicalized domain name.

  • Updated landing page copy.

  • Prevent multiple POST requests on sign in and create account form submissions.

  • Update mobile navigation menu styling.

  • Update roadmap feature request form styling.

  • Moved to non-icon font for faster page load.

  • Moved to using SVG for icons.

  • Added CSP headers.

  • Updated quick start copy.

Early Access v0.13

770 days ago

  • Implemented account information page.

  • Fixed sign in and create user flows on unsupported platforms, will no longer freeze.

  • Prevent auto-zoom on input forms on iOS by using larger font.

  • Updated UI for sign in and create account forms.

  • Added Terms and Conditions and Privacy Policy links to create account form.

  • Added current payment plan display to user account page.

  • Added logout button to user account page.

  • Added hints to login and create account page inputs.

  • Updated logo on html page to show version.

  • Fixed issue when logging in where response was incorrectly seen as error.

Early Access v0.12

774 days ago

  • Added support for deleting cubes from local SQLite database.

  • Updated cells panel per-cell button interface to be more readable.

  • Simplified event handlers to have only one type of cell update (breaking change).

  • Changed navigation to HTML login/create account pages.

  • Implemented remove buttons for MatchOn statements and for Actions in the reactivity panel.

  • Updated error messages during login and account creation to be more informative.

  • Fixed login failure issue.

Early Access v0.11

791 days ago

  • Implemented first version of Learn and Reference pages.

  • Updated website styling across all pages.

  • Restructured top level site navigation to focus on Roadmap and Learn pages.

  • Implemented better error diagnostics for clients during crashes.

  • Fixed log in forms setting URL parameters.

Early Access v0.10

795 days ago

  • Updated cube name displays on the cube explorer.

  • Fixed freeze when unable to persist local doc due to worker thread channel being full.

  • Updated cube explorer and cube insert panels to use scrollable lists.

  • Updated insert cube panel to allow filtering by User / Common cubes.

  • Added static notification to home page for non-WebGPU and mobile browsers.

  • Fixed number editors not displaying target cell value after modification.

  • Added vertical scroll to nodes panel.

  • Decluttered cells panel. Expressions and type info are only shown on hover now.

  • Implemented better UX for mobile website.

Early Release v0.9

801 days ago

  • Fix incorrect text length on non-ascii UTF8 strings.

  • Updated menu drop down layout.

  • Mouse and key events now support matching on specific button state changes.

  • Fix display mode shown as map on drop down in Display panel of the node editor.

  • Fix user account info sometimes not being received on login.

Early Release v0.8

805 days ago

  • Rendering is now smoother and has less delay.

  • Clip masks are implemented allowing for things like scroll bars.

  • Layers implemented, allowing a component to pop itself out of a clip mask.

  • Updated cells panel to take advantage of clip masks and layers with a new scroll window.

  • Landing page animation and formatting updates.

  • Navigate to /console to start interactive editor.

Early Release v0.7

815 days ago

  • Implemented server side rendering for HTML home page.

  • Animation and navigation added to HTML site.

  • Updated pricing page.

  • Starting the editor is now dependent on user having WebGPU and clicking a button.

  • Geared landing page more towards showing how the reactive cell system works.

  • User can log in using HTML site.

Early Release v0.6

826 days ago

  • Clients may request gzipped versions of files, lowering startup time.

  • Web workers now moved to module syntax.

  • Fix scrolling getting too slow with page zoom.

  • Fix hover over letters firing whenever mouse is to the left of the letter.

  • Move layout to CPU. Updated rendering engine.

Early Release v0.5

846 days ago

  • Better performance via an updated execution model looks-ahead to minimize re-evals.

  • Better performance from compilation optimizations.

  • Nodes can now listen to mouse scroll events.

  • Smaller binary size. 7mb -> 5mb.

Early Release v0.4

859 days ago

  • Better error messages when logging in.

  • Fixed issue with expr edit staying open when navigating nodes.

  • Reactivity panel formatting.

  • Fixed bumpy rendering for rounded rectangle.

  • Updated Nodes and Cells panels display.

  • V1 blog implementation.

Early Release v0.3

863 days ago

  • Added RemoveCell to reactivity panel builder.

  • Added Var function for accessing matched value from event handlers.

Early Release v0.2

869 days ago

  • Return to only evaluating Children cell with eval_container.

Early Release v0.1

874 days ago

  • Removed automatic application of eval_container function to Children cell.

  • Fixed anti-aliasing on text and corners causing blurring.

  • Added initial auto-completion to cells panel.

  • Learning track updates.

  • Fixed document parsing crash on failure.

Alpha Release v13

879 days ago

  • Landing page wording updates. Focusing on generality instead of targeted notes.

  • Eval model updates.

Alpha Release v12

901 days ago

  • Improved performance in general by 15%.

  • Fixed nested expression evaluation when using EvalContainer function.

  • Updated menu selection UI.

  • Updated landing page spacing and content.

  • Updated table formatting and added some functionality for creating rows and columns.

  • Note template now allows inserting of additional blocks, currently Text and Table.

  • Reduced startup time by about 30%.

  • Fixed text-box cursors causing issues when accessed from non-focused roots.

Alpha Release v11

908 days ago

  • Implemented initial functionality for local persistence using sqlite.

Alpha Release v10

915 days ago

  • Added click-and-drag events. Nodes may now react to being dragged across the screen.

  • Added support for highlighting text. Text may now be selected and removed via highlight.

  • Added functions for tracking the position of a cursor in a text cell.

  • - Cursor positions are updated when changes are made locally and non-locally, i.e. when collaborating.

Alpha Release v9

922 days ago

  • Updated the UI to be less pointy.

  • Added rounded rectangle and circle sector display modes.

  • Once logged in, the component explorer no longer (confusingly) shows built-in components.

  • Updated the text edit component to behave more like what you would expect from an editable text component.

  • - Scrolling horizontally and moving the cursor now works correctly.

  • Added a "new note" template to quickly create a new note.

Alpha Release v8

929 days ago

  • Persistence and collaboration features are now functional and usable.

  • All changes you make to components you own or are a collaborator on are saved to the server.

  • If you have added collaborators to a component, they will see your changes in real-time (and vice versa).

Alpha Release v7

936 days ago

  • Work on persistence and collaboration features.

  • Landing page updates.

Alpha Release v6

943 days ago

  • Page load time is reduced by ~50%.

  • General performance improved by ~4%.

  • Work towards releasing collaborative editing and persistence.

  • - The local component database has been moved to a separate node tree, allowing for more incremental dependencies on edited components and providing a more straightforward user experience since it is no longer editable.

  • - Modifications to collaborative components only trigger updates to associated cells in the database.

  • New insert component panel. Note: Needs more work on usability.

  • New display panel. Better color selection. Note: RGBA editors will be fixed in a follow-up update.

  • Text and EditText are now insertable / included as built-in components.

  • The base font size increased for better legibility, resulting in minor UI updates across the app.

Alpha Release v5

950 days ago

  • Increased overall performance by ~16 percent.

  • Separated 'Application' tree to simplify UX, event handling, and collaborative editing.

  • Children cell now accepts expressions on each index.

  • Updated changelog formatting.

  • Updated some learning path steps.

  • Updated landing page wording and nav bar formatting.

  • Learn and changelog pages keep the nav bar when they are navigated to.

  • Updated internal rendering pipeline dependencies.

  • Fixed browser events (zoom, reload) sometimes being captured unintentionally.

Alpha Release v4

958 days ago

  • Added learning/tutorial cube with navigation from landing page.

  • Display panel of node editor can be used individually.

  • Added beta sign up flow.

  • Updated page for non-webgpu enabled browsers.

Alpha Release v3

965 days ago

  • Added ChangeLog page.

  • Landing page updates.

  • Quote function.

  • Updated Button component to use EmitTag.

  • Cubes are now editable in expr editor.

  • Can now set cell overrides on children Cubes.