status: WIP
- ruby
- roda
- parity
- launchpad swarm setup
- postgres
The code style of the project is RubyJS
(RJS for the most intimates - :D)
The core principles are:
- use arrow functions (lambdas)
- use exports
- use brackets (
()
and.()
) when defining and calling methods - use modules not classes
- use
{}
instead of where you commonly use thedo
--end
coding style commonly used for multiline blocks
function -> { }
module Something
SomeFunction = -> {
# ...
}
end
Exports.default = Something
see more infos about RJS: https://github.com/makevoid/rjs
And remember to use RSpec and request specs
Rspec.describe do |r|
r.specify("") {
value.should == '123'
# get("/"); body.should =~ /foobar/
}
end
- search (dm ferret or elasticsearch)
- datamapper to datamapper2 (ROM)
- op_return integration and explorer
- ipfs
- tendermint
Deploy an ethereum contract and call it
require_relative 'env'
contract = Ethereum::Contract.create file: "store.sol", client: CLIENT
address = contract.deploy_and_wait
puts "new contract: #{address}"
5.times do
contract.transact.set "rand-#{rand 10}"
value = contract.call.get
puts "got value: #{value}"
end
serverless/docker-compose.yml
services:
app:
image: me/my-launchpad-function1
environment:
- RACK_ENV=production
- PARITY_HOST=xxx
depends_on:
- parity
# ports:
# - 9292:9292
parity:
image: appliedblockchain/parity-solo
environment:
- NETWORK=mainnet
#- NETWORK=kovan
docker pull me/my-launchpad-function1
docker stack deploy -c docker-compose.yml my-launchpad-stack --orchestrator=kubernetes