sanchezcarlosjr / evanotebook

EvaNotebook - A P2P Browser-Based Computational Notebook for Real Systems with IA.

Home Page:https://notebook.sanchezcarlosjr.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

EvaNotebook

EvaNotebook is a computational notebook specifically designed to operate solely within a browser environment, without the need for a client-server architecture. Its design lends itself to the development of prototypes, experimental processes, and system scenarios with a main emphasis on multilingual programming for event-driven architectures. It achieves this with the assistance of a decentralized database and incorporates various application protocols, including WebRTC, WebSockets, and MQTT, providing a higher level of abstraction.

EvaNotebook

🌐 Demo Link:

🔥 Key Features:

  • User-friendly WYSIWYG interface inspired by Notion (EditorJS)

  • Since real applications are reactive ones rather than static ones, so it offers simplified APIs for MQTT, WebRTC, HTTP, and WebSocket protocols based on RxJS.

  • Independent web workers for enhanced performance and stability

  • Secure P2P collaboration with custom replication (RxDB and libp2p) but offline first

  • Reactive elements like reactive charts, forms, and notebook itself. You can use them with LangChain.

🗺️ Roadmap:

  • Implement Bluetooth, gRPC, GraphQL and SSH protocols. Call your operating system from a browser should be possible securely.
  • Bypass transparently CORS restrictions.
  • Integrate Langchain to control whatever environment you want (including the notebook itself) in real-time using the different protocols and languages provided by libp2p. Integrate offline large models such as WebGPT.
  • Built-in open source alternatives to commercial AI products.
  • Jupyter Notebook format complaint.

Why?

webGPT Credits WebGPT.

Alternatives

ObservableHQ

Starboard notebook

JSNB

Dnotebook

Kajero

Jbook

Runkit

Jupyter Lite

Mirrors

Contribuitors

This project was generated with Angular CLI version 15.1.5.

Development server

Run npm run start for a dev server. Navigate to http://localhost:4200/. The application will automatically reload if you change any of the source files.

CodeBlock scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI Overview and Command Reference page.

Acknowledgements

"Archivo:Edit icon (the Noun Project 30184).svg - Wikipedia, la enciclopedia libre." 15 Mar. 2023, es.m.wikipedia.org/wiki/Archivo:Edit_icon_%28the_Noun_Project_30184%29.svg. Based on these projects. https://github.com/alangpierce/sucrase https://github.com/binji/wasm-clang https://babeljs.io/docs/en/babel-standalone https://infinitexyy.github.io/playcode/

About

EvaNotebook - A P2P Browser-Based Computational Notebook for Real Systems with IA.

https://notebook.sanchezcarlosjr.com/

License:MIT License


Languages

Language:TypeScript 64.2%Language:JavaScript 29.5%Language:CSS 4.3%Language:HTML 2.0%