All Projects → bhuvansingla → iitk-coin

bhuvansingla / iitk-coin

Licence: MIT license
A reward-based pseudo-currency system built exclusively for IIT Kanpur campus junta.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to iitk-coin

ml19-20w
CS 771A: Introduction to Machine Learning, IIT Kanpur, 2019-20-winter offering
Stars: ✭ 100 (+270.37%)
Mutual labels:  iitk
esc101-18-19-a
ESC 101A: Fundamentals of Computing (C Programming Course), IIT Kanpur, 2018-19-autumn offering
Stars: ✭ 23 (-14.81%)
Mutual labels:  iitk

IITK Coin

made-with-Go Go version Docker Cloud Build Status Go Build License GitHub Repo stars

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 :octocat: bhuvansingla/iitk-coin-native-app.

Build and Run

From Source

# Create the directories if they don't exist already.
cd $GOPATH/src/github.com/bhuvansingla/

# Clone the repository inside.
git clone [email protected]: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

From Docker

# 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

Update and Verify User Roles

# 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

Contributing

The project is open to contributions from the community. For bug fixes and feature requests, please refer to the CONTRIBUTING guide.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].