go

module
v0.0.0-...-e11dbd8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2022 License: Apache-2.0

README

FairX Golang Monorepo

Golang Monorepo for the FairX Project, projects and code supporting TBD's Web5 Protocol with some WASM extensions :)

Applications

Note: Nearly everything in this repository should be considered "pre-alpha" at this time

Building the fairx executable

The fairx executable from this monorepo is following the commander pattern for golang apps.

To build:


git clone https://github.com/fairxio/go
cd go
go mod download
cd go/applications/fairx
go build

Decentralized Web Node

The Decentralized Web Node attempts is an opinionated implementation of DIF Decentralized Web Nodes, an interesting approach to decentralized application development.

To run (after building the fairx executable):


./fairx dwn

Use Prebuilt Docker Image:

docker pull fairxio/dwn:latest
docker run -it -v "$(PWD):/etc/fairx" -p "8080:8080" fairxio/dwn

Build Docker Image:

git clone https://github.com/fairxio/go
cd go
make build-docker-dwn

FairX Authentication Service

Generally speaking, any authentication service can be plugged in here, however one wants to issue a valid JWT, using a shared key between services requiring authorization. This service automatically issues a JWT for any valid DID authentication flow where the DID presented was not on a blacklist, or is on a whitelist.

This implementation for now is extraordinarily simple, not even verifying a DID to resolution - that will be done in v0.2. For now, return a JWT.

To run (after building the fairx executable):


./fairx auth

Use Prebuilt Docker Image:

docker pull fairxio/auth:latest
docker run -it -v "$(PWD):/etc/fairx" -p "7080:8080" fairxio/auth:latest

Build Docker Image:

git clone https://github.com/fairxio/go
cd go
make build-docker-auth

FairX DID Service

The FairX DID Service is a loose implementation of a DID Registration and Resolution spec led by the identity.foundation, but using REST over TLS explicitly as the base underlying protocol.

To run (after building the fairx executable):


./fairx did

Use Prebuilt Docker Image:

docker pull fairxio/auth:latest
docker run -it -v "$(PWD):/etc/fairx" -p "6080:8080" fairxio/did:latest

Build Docker Image:

git clone https://github.com/fairxio/go
cd go
make build-docker-did

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL