Skip to content

dream-num/univer

Repository files navigation

Univer

codecov

English | 简体中文

Introduction

Univer is an open source collaborative solution that aims to empower the collaboration capability into all systems. With Univer, users can synchronously edit the file content, making files flowing smoothly within different types of systems and avoid downloading and uploading Microsoft Office files anymore.

We provide JavaScript part of code in the repository, including a canvas-based framework for building documents, spreadsheets, slides.

⚠️ This project is still in heavy development.

Demo

Packages

Name Description Version
base-doc - npm version
base-formula-engine - npm version
base-numfmt-engine - npm version
base-render - npm version
base-sheets - npm version
base-ui - npm version
core - npm version
design - npm version
rpc - npm version
sheets-plugin-formula - npm version
sheets-plugin-formula-ui - npm version
sheets-plugin-numfmt - npm version
ui-plugin-docs - npm version
ui-plugin-sheets - npm version

Contribution

Please refer to Contribution Guide.

Community

Welcome to join our Discord community.

Issues

Please file an issue at Issues.

Stargazers

Stargazers repo roster for @dream-num/univer

Architecture

Univer is written in typescript and designed according to the plugin architecture. The functions outside the core are developed in the form of plugins.

image

Rendering engine

Univer sheet, document, and slide adopt the same rendering engine architecture, which abstracts the application into text flow, table, canvas, and core part triggers rendering, and object is the renderer. image

  1. Achieve the nesting and operation between applications.
  2. Sheet cells support embedding doc text
  3. Support inserting sheet, doc, slide in slide
slide 10-layer embedding Sheet in slide and doc in cell wrap text around a picture
image image image

Formula engine

Univer formula engine, supports asynchronous calculation, lambda function and range naming

image


Copyright DreamNum Inc. 2023-present