IITK Coin is a reward-based pseudo-currency system for the IIT Kanpur campus junta.
Detailed vision and regulation rules of this currency are documented in the wiki here.
This repository holds the backend system, developed with Go and PostgreSQL.
The React Native application of IITK Coin is maintained at bhuvansingla/iitk-coin-native-app.
# Create the directories if they don't exist already.
cd $GOPATH/src/github.com/bhuvansingla/
# Clone the repository inside.
git clone git@github.com:bhuvansingla/iitk-coin.git
cd ./iitk-coin
# Build the project.
go build -o iitk-coin cmd/iitk-coin/main.go
# Update config.yml
# Run it.
./iitk-coin
# Pull the latest image from DockerHub.
docker pull bhuvansingla/iitk-coin:latest
# Update config.yml
# Run it on port 80 (or whichever you want).
docker run -p 80:8080 -d --name iitk_coin_backend bhuvansingla/iitk-coin
# To access the container shell:
docker exec -t -i iitk_coin_backend /bin/sh
# Ensure that the user, that you want to update the role for, exists.
# Give permissions to execute (if not present already)
chmod +x scripts/*.sh
# Execute the following interactive script to update the role:
bash ./scripts/update-user-role.sh
# To verify user that have a particular role:
bash ./scripts/list-users-by-role.sh
The project is open to contributions from the community. For bug fixes and feature requests, please refer to the CONTRIBUTING guide.