Skip to content

Modular library for offline-first isomorphic JavaScript applications

License

Notifications You must be signed in to change notification settings

andykswong/mithic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b7a6ce0 · Feb 5, 2024

History

66 Commits
Jul 30, 2023
Jul 30, 2023
Jun 9, 2023
Feb 5, 2024
Oct 15, 2023
Apr 16, 2023
Jan 15, 2023
Feb 5, 2024
Feb 3, 2024
Feb 5, 2024
Feb 5, 2024
Feb 5, 2024
Feb 3, 2024
Feb 5, 2024
Feb 5, 2024
Feb 3, 2024
Apr 16, 2023
May 13, 2023

Repository files navigation

mithic

mithic npm docs license: MIT codecov build


Modular library for offline-first isomorphic JavaScript applications


Overview

mithic provides the building blocks for creating offline-first applications, using CQRS architecture with eventsourced CRDTs for storage and data replication. mithic is network agnostic and can be used in traditional client-server, decentralized, or local-only apps. Target use cases include business web apps, collaborative editing, multiplayer gaming, etc.

Documentation

See generated TypeDoc: https://andykswong.github.io/mithic/

Getting Started

To use the library, you can depend on the monorepo:

npm install --save mithic

Or select individual modular packages to use:

npm install --save @mithic/collections @mithic/cqrs @mithic/crdt

For detailed usages, see the following examples:

Packages

Core:

Package NPM Description
@mithic/collections npm Core collection interfaces and implementations
@mithic/commons npm Common utilities
@mithic/cqrs npm CQRS interface
@mithic/crdt npm Eventsourced CRDT library
@mithic/jsonr npm JSON intermediate representation for sandboxed scripting
@mithic/messaging npm Messaging interface

Plugins:

Package NPM Description
@mithic/denokv npm Deno KV adapters
@mithic/ipfs npm IPFS and libp2p adapters
@mithic/level npm abstract-level adapters
@mithic/redis npm Redis adapters

License

This repository and the code inside it is licensed under the MIT License. Read LICENSE for more information.