Skip to content
This repository was archived by the owner on Oct 7, 2025. It is now read-only.

involvera/community-coin

Repository files navigation

Get started

clone the project

git clone https://github.com/involvera/community-coin.git socialcoin

run the initialization script

cd socialcoin/
sh bash/init.sh

then fill the two configuration files config.json and genesis.json. See below


Then

When the config files are filled you can use:

Docker

Build the image:

sh bash/dockerfile.sh

Then start running your container

sh bash/docker-compose.sh
Is it working?

Run:

docker logs SOCIETY_NAME

these 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/society

Your machine

By just making sure goland and all dependencies are installed.

Then simply run:

go run main.go

these 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/society

Configuration

config.json

Regular 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
    }
}

genesis.json

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": ""
}

About

Expiring currency of Involvera Community.

Resources

Stars

Watchers

Forks

Packages

No packages published