A blockchain-based land record management system, done as a Major project in SJCE, Mysuru.
Won the "Best project award" in 2019.
- BigChainDB (https://www.bigchaindb.com/) for blockchain-based data storage.
- Flask server.
- Docker and Docker-Compose for node emulation.
- MapBox for mapview.
- Clone the repo and
cd
to thedocker
folder docker-compose up
- BigChainDB -- The backend blockchain databse
- Government user -- The government user, runs at http://localhost:8000
- Surveyor -- The user who mesures the land, runs at http://localhost:8080
- User 1 -- Normal user who can buy and sell the land, runs at http://localhost:8088
- User 2 -- runs at http://localhot:8090
In the beging, all pages will show a signup prompt. Even if you sign-up there, we need approval of Government
user.
First, we shall create the Government user.
- Get the shell access to Government container --
docker exec -it <container-name> -- sh
cd
toapp
folder, runpython3 __create_government_user.py
and note down the public key of the government- Stop the containers started using
docker-compose
, then terminate them fully withdocker-compose rm
. - Edit
.env
file indocker
folder, replacingGOVERNMENT_PUBKEY
with the value you noted down in step 4. 5.Start containers again,docker-compose up
- You can now log in to the
localhost:8000
Government can
- Approve new users into the blockchain (before that, user has to request signup)
- Distribute land to the people (before that, land has to be surveyed)
- Settle land transfer requests (before that, user has to make a land transfer request)
Surveyor can just survey the land
- View their current holdings (First, they have to be given land by the government)
- Transact the land with other users
Guests can enter a survey number and view the land transfer history