Skip to content

NoshonNetworks/landver

Repository files navigation

LandVer - Land Verification System

All Contributors

LandVer is a decentralized land registration and verification protocol, utilizing blockchain technology to provide a secure, transparent, and immutable system for managing land records. The protocol facilitates land transactions and ownership verification on the Starknet blockchain.

While initially built on Starknet, LandVer is designed to be cross-chain compatible, allowing land transactions and records to be securely managed across multiple blockchains. LandVer is one of the many products of Noshon Networks, which aims to bring innovation to the world of real estate.

Project Structure

The monorepo is organized into the following components:

  • app/: Contains the main application code:
  • Frontend client application
  • Backend server implementation
  • docs/: Project documentation, including setup guides and API references
  • land-registry-backend/: Core backend service for land registry operations
  • land-registry-indexer/: Blockchain indexer service for tracking land registry events
  • land_registry/: Smart contract implementation for the land registry system
  • landing_page/: Website and landing page
  • scripts/: Utility scripts for development and deployment
  • sdk/: JavaScript SDK for interacting with LandVer protocols
  • tools/: Development and maintenance tools
  • .github/: GitHub workflows and configuration files

Prerequisites

Before you begin, ensure you have the following installed.

  • scarb: Smart contract development tool

  • snfoundry: Smart contract testing framework

  • install npm: JavaScript runtime and package manager

  • install rust: Required for some development tools

Development Setup

Steps to build and run LandVer locally.

How to Run the Code

Running the Client and Server

Navigate to the client directory, install the packages, and start the client

cd app/client
 pnpm install 
 pnpm run dev

In a separate terminal, navigate to the server directory, install the packages, and start the server

cd app/server
npm install
npm run dev

Running the Land Registry Contracts

Navigate to the land_registry directory, build the contracts

cd land_registry
scarb build

To run tests on the contract

cd land_registry
scarb test

Backend Services

Start the land registry backend:

cd land-registry-backend
npm install
npm run dev

Start the indexer service:

cd land-registry-indexer
npm install
npm start

Build for production:

npm run build

Project Flow Chart

Landver as a decentralized land registration and verification protocol has a very easy navigation system as illustrated below.

  • Once the project is set up on your device as illustrated above,

  • You can navigate through the protocol .

  • Connect a Starknet compatible wallet. This sends a transaction to the starknet blockchain.

  • This navigates to a Landing page that gives an option of the users; a Land owner or a Land Inspector. This sends another transaction to the starknet blockchain.

  • On the Land owner's dashboard, a user can register a land with details like Longitude, Latitude, Area and the type of Land use. On submission, another successful transaction when the required tokens are available in the connected wallet. Other side bar links on the dashboard includes the Market store, Collection, Favorites, Notification, Wallet and the Log out button. An NFT is rewarded to a Landowner user on successful registration.

  • On the Land Inspector's dashboard, Available side bar action links include Land, verify user, Transfer ownership, Reports & Logs, Notifications and Log out button.

  • All onchain transactions are fetched on the Starknet blockchain while the offchain data are fetched the Land Registery backend.

FlowChart

Contributors

Fishon Amos
Fishon Amos

💻 👀
Solomonsolomonsolomon
Solomonsolomonsolomon

💻 🚇
Stephanie Nwankwo
Stephanie Nwankwo

💻
RAJI ABDUL
RAJI ABDUL

📖
Yusuf Habib
Yusuf Habib

💻
Akinshola
Akinshola

💻
Sagar Rana
Sagar Rana

💻
saimeunt
saimeunt

💻
Echefula Ndukwe
Echefula Ndukwe

💻
Poulav Bhowmick
Poulav Bhowmick

💻
Asher
Asher

💻
Santiago Villarreal Arley
Santiago Villarreal Arley

💻
Abdulsamad sadiq
Abdulsamad sadiq

💻
Caleb
Caleb

🎨 📖
Oshioke Salaki
Oshioke Salaki

💻

License

This project is licensed under the MIT License. See LICENSE.txt for more information.

Contact

X-profile - @Landver -

Github: Landver