项目作者: m-ld

项目描述 :
Platform-independent m-ld specification
高级语言: JavaScript
项目地址: git://github.com/m-ld/m-ld-spec.git
创建时间: 2020-04-12T12:08:14Z
项目社区:https://github.com/m-ld/m-ld-spec

开源协议:MIT License

下载


  1.  

m-ld

  1.  

Project Status: Active – The project has reached a stable, usable state and is being actively developed.
Gitter
GitHub Discussions

m-ld specification

m-ld is a decentralised live information sharing component with a JSON-based
API.

This repository defines the platform-independent specification for m-ld.

website

The documentation is built using typedoc, and delivered to the
specification documentation website at https://spec.m-ld.org/.

types

The engine API is partially specified as types using
Typescript as an abstract specification language. Note that these types are not
used directly by engine implementations, because they are intentionally
high-level and agnostic to platform details, such as threading model. Instead,
engines use types in their native language.

compliance tests

The compliance folder defines a set of Jasmine integration tests
to check the compliance of a clone engine to specification. These tests require
orchestration components to be provided by the engine project.

work in progress

  • Specification work in progress can be found on the repository Wiki tab.
  • Issues relating to the abstract specification are logged on the Issues tab.
  • Contributions are welcome! Contributed work is governed according to a
    CAA, the GitHub Community
    Guidelines,
    and the privacy policy.

scripts

Scripts are run with npm.

  • The test script is not intended to be run from this project. See the
    compliance folder README for details.
  • The build script is used to generate the website.
  • The doc-dev script can be used after build to create a local web server
    watching for documentation changes.

publishing

This project uses semantic versioning. There are two main branches.

  • The edge branch is for pre-releases. It is delivered to edge.spec.m-ld.org.
    A merge into edge should be immediately followed by a pre-release if it
    affects versioned components.
  • The master branch is for releases. It is delivered to spec.m-ld.org. A merge
    into master should be immediately followed by a release if it affects
    versioned components.

npx publish.sh ≪newversion≫ (from
m-ld-io-js-build) builds the
project, increments the version as specified (e.g. patch), pushes the code and
publishes the package. Ensure the repo is up-to-date and on master (release)
or
edge (pre-release).