Back to search
Daviste Linkedin · Posted yesterday

2D Programming Language Research

United Kingdom

Linkedin
Continue to application Add your email once, then Caio opens the original posting.

Indexed description

  • 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.

Free. 20 seconds. No password. See every match in this search.

Create a free Caio profile to unlock more results and save your role and location preferences.

Unlock free search
Want help applying to roles like this? Search Caio for free. If repetitive applications get heavy, Managed Job Search adds supervised execution for $99/month.
View Managed Job Search