clone the project
git clone https://github.com/involvera/community-coin.git socialcoinrun the initialization script
cd socialcoin/
sh bash/init.shthen fill the two configuration files config.json and genesis.json. See below
When the config files are filled you can use:
Build the image:
sh bash/dockerfile.shThen start running your container
sh bash/docker-compose.shIs it working?
Run:
docker logs SOCIETY_NAMEthese should be the last 2 lines of logs:
Now listening on: http://0.0.0.0:8080
Application started. Press CTRL+C to shut down.
You could try the API by running a request:
curl http://localhost:PORT/societyBy just making sure goland and all dependencies are installed.
Then simply run:
go run main.gothese should be the last 2 lines of logs:
Now listening on: http://0.0.0.0:8080
Application started. Press CTRL+C to shut down.
You could try the API by running a request:
curl http://localhost:PORT/societyRegular configuration file to customize the work of the crypto currency software.
| Parameter | Type | Required | Description | Comment |
|---|---|---|---|---|
| address_fees | string[] | yes | List of current and previous addresses where the transactions fees are sent. | The current one in use is the first one. |
| protected_ips | string[] | no | A list of IP that you want to protect from wrong manipulation of critical actions. | Used for production servers |
| volume_path | string | yes | Absolute path of the folder where databases and logs are stored. | |
| production | boolean | yes | true if used in production mode |
|
| lugh_hours_utc | int[3] | yes | Array of 3 integers between 0 and 23, with 8 of difference between them. | It will define the time in UTC where the lugh transaction will occur every day |
| server_port | int | Default: 8080 | Port used by the API's server | |
| extra_logs | string | no | Print more logs than usual about internal processes | |
| dev | Object | no | Setup only used in rare occasion like when reseting the society in development mode. | See below for more about the parameters |
Example:
{
"address_fees": ["12qAmof1p2U4KzkEXKz6vhFKFmFuAspJwk"],
"protected_ips": ["120.12.139.72"],
"volume_path": "/Users/jordan/go/src/socialcoin/_",
"production": true,
"lugh_hours_utc": [3, 11, 19],
"server_port": 8080,
"extra_logs": true,
"dev": {
"offchain_root": "http://localhost:3020"
"admin_key": "ADMIN_KEY",
"society_id": 554,
"simulate_and_test": false
}
}Configuration of the default economical and social caracteristics of the society.
| Parameter | Type | Required | Description | Comment |
|---|---|---|---|---|
| constitution | object[] | no | List of object containing two key values: title and content, both string. |
List of laws for the society's members, it is the default constitution, it can be change later through a proposal. 10 laws maximum |
| costs | object | yes | Default costs of the communication functionalities (thread and proposal, both int). |
Can be changed later through an economic proposal. Remember a coin can be fragmented into 100 millions pieces, so multiply by 100,000,000 the price you want to set. |
| father_address | string | yes | Address where the funds of the first lugh transaction (or coinbase) will be sent. | |
| currency_symbol | string | yes | Society social coin currency symbol | Like btc for bitcoin, usd for american dollars. |
| name | string | yes | Name of the society | |
| path_name | string | yes | ID of the society, visible in urls. | alphanumeric, lowercase and _ instead of space |
| description | string | yes | Description of the society between 20 and 140 characters. | |
| domain | string | no | Domain of the website of the society if any. | |
| picture_url | string | no | Logo of the society |
Example:
{
"costs": {
"proposal": 1000000000000,
"thread": 100000000000
},
"constitution": [
{
"title": "No referral link, promotions and spamming.",
"content": ""
},
{
"title": "No duplicate thread",
"content": ""
},
],
"father_address": "1DHA8m54a1Vi3oR6LkqkkKYRBR9ZhPjZvC",
"currency_symbol": "inv",
"name": "Involvera",
"path_name": "involvera",
"description": "Empower communities to grow without a central authority through blockchain technology and melting economy principles.",
"domain": "involvera.com",
"logo_url": ""
}