Skip to content

openmoney/om_development_roadmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 

Repository files navigation

This document is now obsolete, having been superceded by the page at https://openmoney.github.io/roadmap/, but has been left here because the URL has been published elsewhere.


openmoney development roadmap

Clarification of terms:

The term open money (all lower case) refers to the concept of user-created "monies". This is described in a number of writings many of which have been collected here

In this sense, open money is a particular case of open metrics.

The name openmoney refers to specific software used to implement open money or, more generally, open metrics.

The openmoney (OM) suite

The current implementation of the openmoney software was created by Dominique Legault and comprises (so far) four main components:

openmoney-api (OM API)

https://github.com/openmoney/openmoney-api (forked from https://github.com/deefactorial/openmoney-api)

This provides a REST API to a Couchbase DB in which recursively nested namespaces enclose stewards, currencies and accounts. This is intended as a component with an expanding collection of tools.

All users are responsible for the management of their own records so every user is termed a steward.

The stewards are self-registering and each can create currencies, accounts and namespaces where permitted

A currency is any value representable by a scalar. Therefore the term open money is unnecessarily restrictive. It is maintained partly for historical reasons, but also because monies of various type are important cases of currency in this sense.

openmoney-network

https://github.com/openmoney/openmoney-network (forked from https://github.com/deefactorial/openmoney-network)

This is a small client designed to access the OM API. Its display is sufficiently compact to make it usable on a smartphone or in an iFrame.

This is essentially a proof-of-concept prototype.

openmoney-gift-api

https://github.com/openmoney/openmoney-gift-api (forked from https://github.com/deefactorial/openmoney-gift-api)

An alternative API for the merchants' loyalty system (OM Gift). This shares some of the data from the OM API's Couchbase DB but also using an additional key-value DB.

openmoney-gift (OM gift)

https://github.com/openmoney/openmoney-gift (forked from https://github.com/deefactorial/openmoney-gift)

The user interface for the merchants' loyalty system. This version supports the design and printing of paper vouchers identifying the merchant, target account and payment to be recorded via a QR code.

Any smartphone can be used to scan the QR code, redirecting the payer to the OM Gift instance.

The current state of development

The OM suite described above is very much a work in progress, and is intended primarily as a proof-of-concept demonstration system. This version has been written for use only on Ubuntu (and possibly Debian) and runs Couchbase in a Docker container.

Although Couchbase scales well and can replicate very quickly if clustered, the user-centred design of the OM suite might make Holochain a more natural fit in due course.

Short-term development

The current test/demonstration suite

openmoney-api
  • extend and complete the test suite

  • API sequence diagram

  • document code

  • resolve lost password bug

  • update the code

openmoney-network
  • extend and complete the test suite

  • document code

  • resolve lost password bug

  • extend capabilities

  • update the code

openmoney-gift-api
  • extend and complete the test suite

  • update the code

openmoney-gift
  • extend and complete the test suite

  • update the code

In parallel ...

  • completion, extension and clarification of the specification (see https://openmoney.github.io/roadmap/)

  • preparation of OpenAPI 3.0 specification YAML file (extended from the existing Swagger 2.0 YAML definition)

  • bring stewards' private key storage back into client components (openmoney-network and openmoney-gift

Medium-term development

  • develop user feedback systems

  • complete Swagger-generated client libraries (Python initially)

  • develop a richer collection of clients

  • (perhaps) re-implement storage on Holochain (using Swagger generated Rust client)

  • design and develop simulation/modelling/visualization suite

Longer-term development

?

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •