• Client

    Private

  • Duration

    almost 3 years

  • Categories
    web-app open source
  • Technologies

    React, Redux, Dexie, WASM, websockets, webRTC, vite, Electron, docker, Playwright

Combination of a spreadsheet visual interface with a language operating on actual cells and tables.

Like functions in Excel without code duplication, like programming language without abstract logic.

Research project on a concept of a new programming language.

I was actively participating in product development, built an Integrated Development Environment for the language and an experimental platform for end-users to create web apps and publish them.

Planarly is a language

Drawing inspiration from programming concepts in tools like Matlab and Numpy, it is built around the table-as-data-structure and designed to be a superior alternative to Excel.

Client had this idea for a long time and made it in as a backend core in C++.

Documentation
Youtube channel with tutorials.

Planarly is a spreadsheet

Familiar table UI capable of intuitive functional programming

Performance was crucial because of several factors causing higher load

  • 2d table space is unlimited – user freedom
  • html is chosen instead of a canvas – for rapid prototyping
  • backend is compiled from C++ to WASM module executed in the browser
  • offline capability
  • multi-user collaboration is happening in the host browser – for serverless setup

Technologies used in frontend

  • React and Material UI
  • Redux and toolkit for state management
  • redux-saga for side-effects management
  • protobuf for backend communication
  • websockets for realtime server communication
  • webRTC for p2p connectivity
  • webpack and later vite build system
  • dexie for local cache database
  • web workers for WASM module execution
  • service worker for offline app capabilities
  • linaria for fast css-in-js solution
  • playwright and jest for testing
  • Github Actions for CI / CD
  • DigitalOcean for deployment
  • Electron to package for a desktop application

As a team lead I led the implementation of central server approach with the following stack

  • Go lang for services
  • Kafka as a message broker
  • Foundation DB for backend core state persistence
  • MySQL for user and cloud storage
  • every service in docker container for future scalability

Planarly is a platform

The first use case for the language was selected to be a web app builder. One sheet holds data acting as a database, another sheet executes the business logic and a third one enables styling, similar to Webflow‘s styling panel. Click publish – and you have a fully functional web app.
Multiple iterations were tried to build a prototype.

See also

web-app data visualization
Cloud Services Monitoring

Volterra.io, now acquired by F5 Networks, S&P 500 member is a platform for distributed cloud services, where user can deploy, connect and operate applications.

web-app open source data visualization
City Weather Comparison

A beautiful weather visualization app lets you compare how it feels in different places around the world throughout the year

open source data visualization
Charts Library V1

General purpose open-source charts library tailored for networking industry. With a config-first design approach it offers broad customization.