Giter VIP home page Giter VIP logo

typecell's Introduction

TypeCell

Welcome to TypeCell! An open source live programming environment. Together, we want to make it a lot easier to build software, and ultimately to understand, build and share knowledge.

Discord Matrix

TypeCell demo

Features

  • Open Source, cell-based notebook environment
  • Same, powerful editing experience as VS Code
  • Full TypeScript support! (no weird custom language constructs)
  • Reactive Runtime, cells automatically re-evaluate when their dependencies update (learn more)
  • Import NPM packages + types just by writing an import statement
  • Support for real-time collaboration (using Yjs)
  • Runs on top of Matrix using Matrix-CRDT.

Try the Tutorial to get started!

Documentation ๐Ÿ“–

Tutorial

Complete the tutorial to get familiar with TypeCell:

ยป Interactive introduction

Manual

We've written about the main functionality of TypeCell in the manual:

Demos

Another good way to learn is to check out some notebooks from our community:

ยป View demo notebooks

Feedback ๐Ÿ™‹โ€โ™‚๏ธ๐Ÿ™‹โ€โ™€๏ธ

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

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:

blocknote
โ”œโ”€โ”€ packages
โ”‚   โ”œโ”€โ”€ common          - Utility functions shared across the codebase
โ”‚   โ”œโ”€โ”€ editor          - The main React application
โ”‚   โ”œโ”€โ”€ engine          - The live-code execution engine
โ”‚   โ”œโ”€โ”€ packager        - Tool to bundle TypeCell notebook apps (WIP)
โ”‚   โ””โ”€โ”€ parsers         - Helpers to convert to / from TypeCell notebooks
โ”œโ”€โ”€ patches             - patch-package patches
โ””โ”€โ”€ test-util           - Server and 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
  • Matrix: the backend of TypeCell.org is a single Matrix instance, using Matrix-CRDT to store and collaborate on "documents as chat rooms"
  • 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

typecell's People

Contributors

yousefed avatar chong-zhao avatar pvunderink avatar emregca avatar niklaskors avatar matthewlipski avatar nzhlebinkov avatar github-actions[bot] avatar

Stargazers

Roman avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.