Skip to content

Horizon is the module that allows users to track user-emitted and system evens, fetch info about the current state of the system and build transactions to send to target networks

License

Notifications You must be signed in to change notification settings

rarimo/horizon-svc

Repository files navigation

horizon-svc

Description

Horizon is the module that allows users to track user-emitted and system events, fetch info about the current state of the system and build transactions to send to target networks

Install

git clone github.com/rarimo/horizon-svc
cd horizon-svc
go build main.go
export KV_VIPER_FILE=./config.yaml
./main migrate up
./main run service

Documentation

We do use openapi:json standard for API. We use swagger for documenting our API.

To open online documentation, go to swagger editor here is how you can start it

  cd docs
  npm install
  npm start

To build documentation use npm run build command, that will create open-api documentation in web_deploy folder.

To generate resources for Go models run ./generate.sh script in root folder. use ./generate.sh --help to see all available options.

Running from docker

Make sure that docker installed. {%_ if (handleHTTP) { _%} use docker run with -p 8080:80 to expose port 80 to 8080

{%_ } _%}

```bash
docker build -t github.com/rarimo/horizon-svc .
docker run -e KV_VIPER_FILE=/config.yaml github.com/rarimo/horizon-svc
```

Running from Source

  • Set up environment value with config file path KV_VIPER_FILE=./config.yaml
  • Provide valid config file
  • Launch the service with migrate up command to create database schema
  • Launch the service with run service command

Database

For services, we do use PostgresSQL database. You can install it locally or use docker image.

Third-party services

Contact

Responsible hp The primary contact for this project is iamhp0

License

MIT

About

Horizon is the module that allows users to track user-emitted and system evens, fetch info about the current state of the system and build transactions to send to target networks

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published