After part-time development for an entire year I'm very excited and proud to announce the launch of Data-Forge Notebook version 1.
Thanks so much to all my early supporters for helping me achieve this milestone.
Data-Forge Notebook is a notebook-style desktop application for Windows, MacOS and Linux.
It's a friendly and interactive environment for coding with zero configuration and contains everything you need to get started. Just install Data-Forge Notebook and start coding.
Visualize your output and data while you code to check that your code works as planned.
Because Data-Forge Notebook is a desktop app and not a hosted web application, it puts your privacy found and center. You store all your code and data on your on your local PC and you don't have to submit them to someone's hosted service in the cloud.
Data-Forge Notebook comes with an embedded portable version of Node.js. Any code that you can run under Data-Forge Notebook you can also run under Node.js.
When working in Data-Forge Notebook you have the world of npm modules at your fingertips, npm modules are automatically installed for you as you code. No more manual installation and configuration of your package file! Using npm modules gives you access to almost unlimited functionality and data formats.
Data-Forge Notebook supports multiple export formats. You can export your notebooks as PNG, PDF, HTML or markdown. You can also export runable code: either as a single code file or as a complete Node.js project.
Data-Forge Notebook also supports TypeScript and it even does the TypeScript configuration for you. In addition it automatically creates your build script. On top of all that it automatically installs npm peer dependencies and TypeScript type definitions.
Data-Forge Notebook comes with a heap of example notebooks and cheat sheets to help you get started and understand how to complete various tasks.
It evaluates code on an embedded portable version of Node.js that it runs as a separate process to the Electron application. Evaluating user code in a proper Node.js instance serves two purposes:
- It ensures that code that runs in Data-Forge Notebook will most definitely run in Node.js.
- Having code evaluation separate from the Electron process means that problems in user code can't bring down the notebook editor.
Data-Forge Notebook creates two Electron browser windows, one to host the notebook editor and a hidden window that is used to run background jobs so as not to lock up the UI.
The main process communicates with the evaluation engine and the hidden window using interprocess communication (IPC).
Data-Forge Notebook is packaged for distribution using electron-builder.
I'll talk more in a future blog post about how Data-Forge Notebook works and more generally about building desktop apps with Electron. So please stay tuned!
Data-Forge Notebook doesn't stop with version 1! I'll continue moving it forward and there's more features coming.
One big feature coming soon is the ability to visualize maps and geo data.
To get a taste for current features please see the landing page.
To understand where Data-Forge Notebook is heading please see the road map.
There's so many other features that would be awesome in Data-Forge Notebook so please get in touch and tell me what you think would be useful.
Data-Forge Notebook version 1 is available now at www.data-forge-notebook.com.