TypeCellOS/TypeCell

TypeScript

543

632 commits

updated May 22, 2024

See the code

See what people are saying

SourceMessageScoreDate

Congrats OP on launching this, looking forward to dive further in! It's great to see people experimenting in the Reactive + Live Programming space as like you mention, I think it can bring a lot of improvements to how we build software. Did you run into any limitations adopting this model? > A…

on Show HN: Marimo – an open-source reactive notebook for Python

0

Jan 13, 2024

>https://www.typecell.org I took a look at the landing page out of curiosity, just an FYI but at first glance there's nothing that indicates to me that this is not a regular SaaS app. Specifically, unless I'm missing something, nothing in the text jumped out at me indicating the app satisfies this…

on Local-first software: You own your data, in spite of the cloud (2019)

0

Oct 3, 2023

This article has been quite the inspiration for many projects and progress on this front. I think we're seeing more and more developments around CRDTs and local-first frameworks / applications. I'm working on a few projects in this area: - https://www.typecell.org - Notion meets Notebook-style live…

on Local-first software: You own your data, in spite of the cloud (2019)

0

Oct 3, 2023

If you're interested in this hybrid of docs and live coding, I'm building something similar for the Typescript / Javascript / React ecosystem @ https://www.typecell.org (open source). See https://twitter.com/YousefED/status/1677342430545301504 for a preview of the next version which will be more…

on Elixir Livebook is a secret weapon for documentation

0

Aug 7, 2023

I don't seem to be clever enough to figure out importing from NPM. The docs indicate that you don't need to do anything special, but all of my attempts yield "Error: couldn't resolve module [module name]". I can however import from other notebooks, and that's very cool:…

on TypeCell, open source TypeScript notebooks live programming environment

0

Jun 14, 2023

TypeCell, open source TypeScript notebooks live programming environment

120

Jun 13, 2023

What makes me most excited about this is that it uses LLMs in a way that the result (a computer program) is still understandable and editable (hackable). Instead of having an AI model output some kind of "black-box conclusion" on a data set / question, it can output code that we can inspect,…

on Let's Talk about ChatGPT with Code Interpreter and Microsoft Copilot

0

May 23, 2023

Hi HN! I've been working on a "notebook"-style live programming environment called TypeCell (https://www.typecell.org). It mixes TypeScript, Monaco (vscode) and full NPM support into a as-you-type live programming experience. After being amazed by ChatGPT last week, I gave it a go to integrate it…

on Show HN: ChatGPT live codes in my notebook REPL

0

Dec 5, 2022

I’m working on an open source notebook with built-in support for React and Typescript. It also comes with a built-in reactivity model and evaluate-as-you-type. To be open sourced soon, but preview version already available at https://www.typecell.org

on Observable transitions to paid plan for private notebooks

0

Oct 13, 2022

README

TypeCell

Welcome to TypeCell, where Notion meets Jupyter Notebooks - all open source. TypeCell is a fresh take on what documents and software can look like. Together, we want to make it a lot easier to build software, and ultimately to understand, build and share knowledge.

Discord

TypeCell demo

Features

  • Open Source Notion-style workspaces and documents (powered by BlockNote)
  • Local-First architecture built using Yjs, with support for live multi-user collaboration
  • Code Blocks for a live, as-you-type coding experience enabling End-User Programming
  • Same, powerful editing experience as VS Code
  • Full TypeScript and React support! (no weird custom language constructs)
  • The Reactive Runtime makes sure code blocks automatically re-evaluate when their dependencies update (learn more)
  • Import NPM packages + types just by writing a regular import statement

» Create your free workspace to get started!

Documentation 📖

Read the docs and complete the interactive tutorial to get familiar with TypeCell:

» Check out the docs and Live Coding Tutorial

Feedback 🙋‍♂️🙋‍♀️

We'd love to hear your thoughts and see your experiments, so come and say hi on Discord.

Contributing 🙌

See CONTRIBUTING.md for more info and guidance on how to run the project (TLDR: just use npm start).

TypeCell is organised as a monorepo containing several packages. Directory structure:

typecell
├── packages
│   ├── editor        - The main React application
│   ├── engine        - The live-code execution engine and Reactive Runtime
│   ├── frame         - sandboxed iframe where end-user code evaluates
│   ├── packager      - Tool to bundle TypeCell notebook apps (WIP)
│   ├── parsers       - Helpers to convert to / from TypeCell documents
│   ├── server        - HocusPocus + Supabase server for storing documents
│   ├── shared        - TypeCell specific models shared across the codebase
│   ├── shared-test   - Helper functions shared across the codebase for unit tests
│   ├── util          - Generic helper functions
│   └── y-penpal      - yjs transport for crossdomain / crossframe communication
├── patches           - patch-package patches
└── test-util         - Data for unit tests

The codebase is automatically tested using Vitest and Playwright.

Credits ❤️

We build on top of some really great technologies:

  • Monaco: the open source editor that also powers VS Code
  • Yjs: CRDT for multi-user collaboration
  • MobX: for our Reactive Runtime
  • ESM.sh: for dynamic ESM imports from NPM
  • Typescript: for our compiler and language toolkit

TypeCell is proudly sponsored by the renowned NLNet foundation who are on a mission to support an open internet, and protect the privacy and security of internet users. Check them out!

NLNet

TypeCellOS/TypeCell

TypeScript

543

632 commits

updated May 22, 2024

See the code

See what people are saying

SourceMessageScoreDate

Congrats OP on launching this, looking forward to dive further in! It's great to see people experimenting in the Reactive + Live Programming space as like you mention, I think it can bring a lot of improvements to how we build software. Did you run into any limitations adopting this model? > A…

on Show HN: Marimo – an open-source reactive notebook for Python

0

Jan 13, 2024

>https://www.typecell.org I took a look at the landing page out of curiosity, just an FYI but at first glance there's nothing that indicates to me that this is not a regular SaaS app. Specifically, unless I'm missing something, nothing in the text jumped out at me indicating the app satisfies this…

on Local-first software: You own your data, in spite of the cloud (2019)

0

Oct 3, 2023

This article has been quite the inspiration for many projects and progress on this front. I think we're seeing more and more developments around CRDTs and local-first frameworks / applications. I'm working on a few projects in this area: - https://www.typecell.org - Notion meets Notebook-style live…

on Local-first software: You own your data, in spite of the cloud (2019)

0

Oct 3, 2023

If you're interested in this hybrid of docs and live coding, I'm building something similar for the Typescript / Javascript / React ecosystem @ https://www.typecell.org (open source). See https://twitter.com/YousefED/status/1677342430545301504 for a preview of the next version which will be more…

on Elixir Livebook is a secret weapon for documentation

0

Aug 7, 2023

I don't seem to be clever enough to figure out importing from NPM. The docs indicate that you don't need to do anything special, but all of my attempts yield "Error: couldn't resolve module [module name]". I can however import from other notebooks, and that's very cool:…

on TypeCell, open source TypeScript notebooks live programming environment

0

Jun 14, 2023

TypeCell, open source TypeScript notebooks live programming environment

120

Jun 13, 2023

What makes me most excited about this is that it uses LLMs in a way that the result (a computer program) is still understandable and editable (hackable). Instead of having an AI model output some kind of "black-box conclusion" on a data set / question, it can output code that we can inspect,…

on Let's Talk about ChatGPT with Code Interpreter and Microsoft Copilot

0

May 23, 2023

Hi HN! I've been working on a "notebook"-style live programming environment called TypeCell (https://www.typecell.org). It mixes TypeScript, Monaco (vscode) and full NPM support into a as-you-type live programming experience. After being amazed by ChatGPT last week, I gave it a go to integrate it…

on Show HN: ChatGPT live codes in my notebook REPL

0

Dec 5, 2022

I’m working on an open source notebook with built-in support for React and Typescript. It also comes with a built-in reactivity model and evaluate-as-you-type. To be open sourced soon, but preview version already available at https://www.typecell.org

on Observable transitions to paid plan for private notebooks

0

Oct 13, 2022

README

TypeCell

Welcome to TypeCell, where Notion meets Jupyter Notebooks - all open source. TypeCell is a fresh take on what documents and software can look like. Together, we want to make it a lot easier to build software, and ultimately to understand, build and share knowledge.

Discord

TypeCell demo

Features

  • Open Source Notion-style workspaces and documents (powered by BlockNote)
  • Local-First architecture built using Yjs, with support for live multi-user collaboration
  • Code Blocks for a live, as-you-type coding experience enabling End-User Programming
  • Same, powerful editing experience as VS Code
  • Full TypeScript and React support! (no weird custom language constructs)
  • The Reactive Runtime makes sure code blocks automatically re-evaluate when their dependencies update (learn more)
  • Import NPM packages + types just by writing a regular import statement

» Create your free workspace to get started!

Documentation 📖

Read the docs and complete the interactive tutorial to get familiar with TypeCell:

» Check out the docs and Live Coding Tutorial

Feedback 🙋‍♂️🙋‍♀️

We'd love to hear your thoughts and see your experiments, so come and say hi on Discord.

Contributing 🙌

See CONTRIBUTING.md for more info and guidance on how to run the project (TLDR: just use npm start).

TypeCell is organised as a monorepo containing several packages. Directory structure:

typecell
├── packages
│   ├── editor        - The main React application
│   ├── engine        - The live-code execution engine and Reactive Runtime
│   ├── frame         - sandboxed iframe where end-user code evaluates
│   ├── packager      - Tool to bundle TypeCell notebook apps (WIP)
│   ├── parsers       - Helpers to convert to / from TypeCell documents
│   ├── server        - HocusPocus + Supabase server for storing documents
│   ├── shared        - TypeCell specific models shared across the codebase
│   ├── shared-test   - Helper functions shared across the codebase for unit tests
│   ├── util          - Generic helper functions
│   └── y-penpal      - yjs transport for crossdomain / crossframe communication
├── patches           - patch-package patches
└── test-util         - Data for unit tests

The codebase is automatically tested using Vitest and Playwright.

Credits ❤️

We build on top of some really great technologies:

  • Monaco: the open source editor that also powers VS Code
  • Yjs: CRDT for multi-user collaboration
  • MobX: for our Reactive Runtime
  • ESM.sh: for dynamic ESM imports from NPM
  • Typescript: for our compiler and language toolkit

TypeCell is proudly sponsored by the renowned NLNet foundation who are on a mission to support an open internet, and protect the privacy and security of internet users. Check them out!

NLNet

Significant stargazers

Volker Mische

258 followers · starred Jun 2024

Peli de Halleux

604 followers · starred Nov 2025

stefnotch

116 followers · starred Nov 2023

Dan Marshall

279 followers · starred Nov 2025