Giter Site home page Giter Site logo

ubiq / shokku Goto Github PK

View Code? Open in Web Editor NEW
38.0 11.0 8.0 998 KB

An open source scalable blockchain infrastructure for Ubiq, Ethereum, POA and IPFS that runs on Kubernetes

Home Page: https://api.shokku.com

License: Apache License 2.0

JavaScript 74.43% Shell 5.78% HCL 13.84% RAML 5.95%
ehtereum ubiq infura metamask-plugin docker sparrow-plugin kubernetes docker-swarm

shokku's Introduction

⚡⚡⚡ An open source scalable blockchain infrastructure for Ubiq, Ethereum and IPFS ⚡⚡⚡

shokku-logo

Shokku

Note: Until further notice, this project is in heavy development mode (don't expect everything to work out of the box, also the documentation is lacking and many more)!

Description

Shokku provides you with a complete way of having your own infrastructure for Ubiq and Ethereum (soon) nodes (pretty much like Infura does), exposing them with a nice JSON API, allowing you to have full control on the whole process.

If you want, you can try the live service hosted in https://api.shokku.com (to be deployed soon).

Motivation

If you're asking why the existence of this project, I recommend you to read this Medium article (to be released soon) where I explain the reasoning in more detail.

Development Setup

Please see DEVELOPMENT for more information.

Deployment

Please see DEPLOYMENT for more details and options.

TODO

Towards releasing version 1.0.0, there are several tasks that need attention. We're using Waffle.io to track everything.

A couple of tasks that would be awesome to have help would be:

  • Configure services like travis, waffle...
  • Finish properly tests.
  • Increase code coverage.
  • Finish Docker DigitalOcean provisioner.
  • Finish Docker Vultr provisioner.
  • Add complete support to IPFS nodes.
  • Provide a better way to backup blockchain data (in case of Gubiq instances) to spin up quickly more instances without downloading the whole blockchain.
  • Create Terraform provisioner for setting up a Kubernetes cluster tailored for Shokku.
  • Create a set of Helm recipes for spining Shokku inside a Kubernetes cluster.
  • Add support to Ethereum nodes. Improve API to allow having Ubiq and Ethereum options (or to spin one or another depending on needs).
  • Add rate limiting usage to the API.
  • Add permissions to use the API with proper JWT sessions (have a better control access).
  • Improve session API stickiness with Traefik (at least for Docker Swarm).
  • Prepare the code to scale and support heavy load.

Contributing

Please see CONTRIBUTING for details.

Backers

These are super hero members that have contributed in a meaningful way to the project (with a donation, with code, with documentation, with coffee...):

  • Don't be shy and help! You'r name will be here ;)

Donations

Donations are very important to us as it will help to keep this project moving! ❤❤❤

Ubiq Address: 0x83B07FC91522e64Dac623a49Da5967d433aD1a4B | View address on ubiqscan

Acknowledgements

  • Thanks to Pablo (@ataliano) for creating this awesome logo!

Support

  • Join the #shokku channel in our public Discord group. Sign up at https://discord.gg/HF6vEGF.
  • File an issue on GitHub (double check that there's no duplicates).
  • Tweet to or DM @aldoborrero.

License

Everything is licensed with the Apache License 2.0 (Apache).

Please see License File for more information.

shokku's People

Contributors

spencerhorn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shokku's Issues

Finish vultr docker provisioner

In order to deploy a cluster of Docker Swarm that can handle properly Shokku, we need to finish the code found in provisioners/terraform/cluster/docker/vultr

Finish digital ocean docker provisioner

In order to deploy a cluster of Docker Swarm that can handle properly Shokku, we need to finish the code found in provisioners/terraform/cluster/docker/digitalocean

Add support to IPFS nodes

In order to improve the usage of Shokku, we should add support to IPFS nodes (with a restricted set of options).

This task should be divided in smaller tasks to be better handled.

If you decide to contribute on it, just update this task to start discussion the best approach.

Improve documentation

In order to have a better experience for newcomers we need to improve the documentation.

Add support to Ethereum nodes

In order Shokku to be really helpful, it would be awesome to have Ethereum as another provider.

This task should be decomposed in smaller tasks, so if you want to contribute to it, just write here and we can start discussing about best approaches.

Finish ticker.controller tests

In order to have a good coverage and better confidence in the code, we should have proper testing on ticker.controller tests

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.