Neptyne

Neptyne

We all love building stuff in spreadsheets. But despite the near-infinite possibilities they offer, we all know you can’t build a whole application on top of a spreadsheet. At some point, making formulas more complicated or adding unstable VBA macros just doesn’t scale. Neptyne does away with this limitation. By leveraging the power of the Python ecosystem and artificial intelligence, it turns the spreadsheet into a true app development platform.

Overview

  • Neptyne is a startup product that provides users with cloud-based programmable spreadsheets. While supporting the standard actions and shortcuts that users expect from spreadsheet software, it also allows you to write and run Python code.\
  • You can use all the power of Python coding by installing libraries, integrating third-party services and scheduling periodic tasks. Neptyne also provides interactivity through input widgets such as buttons, dropdowns, and checkboxes. By using them in combination with Python code, you can not only manage sheets, but also easily develop accessible applications for your needs.
alt text

Purpose and Need

  • I believe, Neptyne has a great potential in empowering spreadsheets with a programming language and AI-powered coding assistant. Regular spreadsheet users can do their work as usual and reduce their efforts by using artificial intelligence to import data or create visualizations.
  • The ability to write code in Neptyne allows you to automate your workflow even more, turning an ordinary spreadsheet into real-time stock market analytics, sports predictions, or even a tic-tac-toe game board! AI is also good at generating such code.
  • Neptyne is well suited for any business that relies on spreadsheets but feels the need to automate work and reduce effort. This also works for scientific work, as researchers tend to use Excel and Python/R a lot and are not always happy because they are different tools.
alt text

Workflow

  1. I worked as a full time contractor on a product, but Neptyne is a different case. In the course of this project, I have been integrated into a team managed by the owner. Task management was done on the side of the business owner, and I helped formalize the tasks.
  2. The business owner had a clear idea of what problems he wanted to solve with a particular feature, but the actual implementation of the features was a collaborative process. I’m confident that this not only helped deliver high-quality features on time and on budget, but also resulted in functionality that meets the highest industry UX standards.

Technology

  • Neptyne uses Python and heavily modified Jupyter Notebook on server-size and React.js on the client-side. Client-server communication is carried out in real time and implemented using websockets.
  • Another feature is virtualized user environments: users are able to utilize fully functional Python environments with third-party Python libraries, even with C++ dependencies. And while they can do whatever they want, they can’t “break” the main Python container that runs the app itself.
  • One of our challenges was to improve client-side performance and make sure it doesn’t get negated by successive regressions. To achieve this, we designed a tiny in-house library to measure a number of re-renders of React components. If new props we add are unstable, the tests will fail and the developer will have to deal with it before it affects the end user.

Structure and Features

  • Simple Migration Flow A sheet editor interface with familiar features and shortcuts. User can switch from any sheet editor they currently use.
  • Python Support The sheet content can be generated using Python expressions, including API calls and data preprocessing. alt text

Input Widgets

Buttons, scrollers and checkboxes that can run any Python code on interaction.

Output Widgets

Charts, images and maps filled with user data. alt text

AI Assistant

AI assistant for generating Python code, widgets or filling sheets with new data generated/fetched by the AI. All of this can be done using natural language, without any Python knowledge.

Templates

A vast selection of “plug and play” templates for different business needs and requirements - accounting, trading or sports events prediction. alt text

Real-time Collaborative Editing

All the changes are applied in real-time.

Embedded Code Editor

Using this in-app code editor, the user is able to write Python code making use of syntax highlighting, context-aware autocomplete and autoformatting. The user is able to write both persistent code in a file and one-time commands using REPL. alt text

Results

During our cooperation, I comprehensively refactored the client side, boosting its performance and fault tolerance. I also did a comprehensive product redesign, adding tools to introduce further changes (e.g. dark mode) more easily. While being presented on PyCon, Neptune is still a start-up in its pre-seed funding stage. However, it is fully accessible for free, with a soon-to-be-announced Pro tier with more features and resources. It is a flexible tool that could be used in many domains and we hope it will have a bright future! alt text