Skip to content

onemenzel/collaborative-todo-mvc

Repository files navigation

Collaborative Todo MVC

This is a simple Todo MVC app with a twist: it's fully collaborative without the need for a server. This is realised using Yjs, an implementation of the CRDT data type concept.

As I see much potential in this technology, I wanted to have a try. Also, I wanted to play with the new Vue 3 release. So I made wrapper functions to integrate Yjs with Vue's new composition API. It works like a charm. I'd consider this the heart of this application. Go have a look at the utils file.

I also made some types for a nicer TypeScript integration of Yjs.

You can find a fully working installation statically hosted on my github pages.

Commands

# setup
yarn install

# Compiles and hot-reloads for development
yarn serve

# same but in the local network
yarn servenet

# Compiles and minifies for production
yarn build

# Lints and fixes files
yarn lint