MioQuispe / js-uprtcl

Libraries, tools and modules to create _Prtcl web apps

Home Page:http://www.uprtcl.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

_Prtcl infrastructure monorepo

CircleCI

This repo contains a set of tools and libraries to help develop _Prtcl compatible web-applications. It does so by implementing a full blown micro-frontend architecture, with pluggable and composable modules to build whole SPAs from simple slices of functionality.

Important: these packages are under heavy development, with alpha release. Expect breaking changes.

Documentation

To learn about _Prtcl and how to use the packages in this repository, visit our specification and our documentation site (it's WIP, so contribution and feedback are much appreciated).

Setup for development

Usage

Clone the project, and run:

npm install
npm run bootstrap

Build all packages

To build all packages, run:

npm run build

Run tests

To run the tests from all packages, run:

npm test

Run demo

To run the demo from demo/simple-editor:

  1. Run the ethereum provider in the background.
  2. Run the http provider in the background.
  3. Run npm run dev in the root folder of this repository.

And go to http://localhost:8080. Refer to simple-editor for more advanced instructions.

Packages

Orchestrates micro modules in one single web application, following the micro-frontend pattern. Manages the dependencies between modules.

Base modules that make up the Cortex framework, its building blocks and controllers.

Implements services, apollo directives and interfaces that allow your application to consume data from different (de)centralized technologies.

Implements a basic Cortex rendering engine to reinterpret the data together with Cortex patterns.

Provides modules to integrate ApolloClient in your _Prtcl applications.

Provides modules to integrate redux in your _Prtcl applications.

Providers

These packages provide convenience classes and wrappers around different (de)centralized web technologies so that micro modules can consume them easily.

These services include standard funcionality like a retry mechanism, or a ready() function to wait for them to be ready.

_Prtcl provider wrappers around @holochain/hc-web-client.

_Prtcl provider wrappers around ipfs-http-client.

_Prtcl provider wrappers around web3.

_Prtcl provider wrappers around the native fetch API.

Modules

These are application modules compatible with micro-orchestrator that define patterns, lenses and services that can work together to create, interpret and share different kind of objects.

Implements version control for any kind of content addressable object, with different perspectives (branches in git), and proposals to update those perspectives.

Implements documents and folders that can be updated with evees and rendered with cortex.

Implements wikis that can be updated with evees and rendered with cortex.

About

Libraries, tools and modules to create _Prtcl web apps

http://www.uprtcl.io/

License:MIT License


Languages

Language:TypeScript 97.8%Language:JavaScript 2.2%