Dinu-Senal / actium

🚢 A decentralized web application for handling vessel maintenance. Implemented using Solana Blockchain.

Home Page:https://actium.netlify.app/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Actium

License: MIT

Actium is a Decentralized Application (DApp) built upon the Solana Blockchain for its higher transaction speed, lower gas fees, and elevate the data integrity.

Due to existing incompetent centralized vessel maintenance systems, vessels are prone to get distressed and shipwrecked. Port authorities and other stakeholders have difficulty deciding the vessel's seaworthiness because data is not trustworthy and traceable. Actium provides a solution for the above drawbacks by integrating decentralization concept for vessel maintenance system, further increasing the capability of tracing, data immutability, transparency, and security.

Explore Live Version

*Note: You need to have phantom wallet extention to login to the web application

Actium Website

Actium User Manual

Project Tools for this project

*Note: most of the libraries and frameworks used in this project doesn't run/is not available/not compatible in the windows environment

Node - the node package manager was used to maintain packages of the solana application + the client application.

Rust Programming Language - the programming language which has been used to develop the DApp.

Solana Tool Suite - provides the environment for building Solana based DApps.

Phantom Wallet - wallet for SOL transactions.

Anchor Framework - anchor is a framework for solana's sealevel runtime providing several convenient developer tools.

React JS - the frontend/client-side was developed using React JS library.

Setup Project

  1. clone the repository and go into the project directory
git clone https://github.com/Dinu-Senal/actium.git
cd actium
  1. download the dependencies for the anchor-based Solana DApp
yarn install
  1. Change cluster pointer to localhost and run solana-test-validator from the root directory
solana config set --url http://localhost:8899 
cd ~
solana-test-validator 
  1. Build and Deploy DApp
anchor build
anchor deploy
  1. Get the program id generated from the anchor deploy and replace it on the
  • Anchor.toml actium key's value
[programs.localnet]
actium = "HoVPS3s5fbgFfbXAuGg6hfL8CKMYjLBhPHdtfqBgLNMG"
  • programs/actium/lib.rs program id
declare_id!("HoVPS3s5fbgFfbXAuGg6hfL8CKMYjLBhPHdtfqBgLNMG");
  1. Go into the \app directory and install dependencies
cd app
npm install
  1. Run the client application
npm start
  1. Now you can access the DApp via http:\\localhost:3000\ from your browser!

Usages

You can run the test cases in the root directory of the project (not in /app)

*Note: stop solana-test-validator if it's already running in the background to avoid data duplication/addition to the blockchain while running tests which may cause the tests to fail

anchor test

If doing changes to the business logic (the solana program), make sure to synchronize the IDL file generated in the solana program with the IDL file in the /app after a successful deployment.

anchor run sync-idl

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

About

🚢 A decentralized web application for handling vessel maintenance. Implemented using Solana Blockchain.

https://actium.netlify.app/


Languages

Language:JavaScript 71.6%Language:Rust 13.3%Language:TypeScript 11.0%Language:CSS 3.5%Language:HTML 0.7%