Use this readme to get started with this project
Blog
·
Report Issues
·
Request Feature
Table of Contents
2023-07-10.14-09-13_Trim.mp4
- Tamper-Resistant Data: In centralized systems, the data is vulnerable to easy tampering and modification since there is a single entity or central authority controlling it. This poses a significant risk to the integrity of the data. By adopting a decentralized approach, we can leverage blockchain technology to ensure that data remains tamper-resistant and immutable.
- Transparency in Tendering: The current process of calling for tenders is often lengthy, manual, and lacks transparency, leaving ample room for corruption. By developing a bidding platform, we aim to bring transparency to the forefront of the tendering process. Through digitalization and automation, we can streamline the process, promote fairness, and minimize opportunities for corruption.
Infrastructure development projects, such as road construction, public transportation systems, or utility network expansion, often involve substantial budgets and require transparent tendering processes. However, the current centralized systems lack transparency and can be prone to corruption. By building a bidding platform for government tenders, we aim to bring transparency and accountability to infrastructure development projects. The platform will enable fair competition among contractors, ensure equal access to tender information, and provide an audit trail of the entire bidding process, minimizing the risk of corruption and favoritism.
Blockchain (one of the ways to implement decentralization) steps into the picture to solve our problems.
- The project addresses the challenge of inefficient and biased tender processes, particularly in the public and government sectors.
- The DAPP (Decentralized Application) powered by FLOW blockchain provides a transparent and efficient auction system for tendering.
- By utilizing the power of blockchain technology and NFTs (Non-Fungible Tokens), the project ensures a fair and unbiased distribution of tenders not only based on offering but also experience and qualifications.
- The use of NFTs as a means of generating and storing agreements guarantees immutability and prevents any manipulation or favoritism.
- With the implementation of this system, corruption and favoritism are eliminated, creating a level playing field for all participants in the tendering process.
- By promoting transparency and accountability, the project fosters trust and transparency among stakeholders and ensures that tenders are awarded based on merit and expertise rather than biased decision-making.
- On the landing page, See the listing of tenders posted by the government.
- After clicking a specific tender participants can participate in an auction bid using the bidding portal.
- After clicking the Register button, the user can log in using the Blockto wallet.
- then they can bid on a tender using a flow
- Upon the end of the Auction the bidding will be settled and the lowest bidder will be awarded an NFT that signifies the ownership of the tender
- On the New Ledger page, users can create their custom fields and data and upload files.
- On the admin panel government can create new bids and assign its metadata, which will be listed on the site
- Admin can select the duration of the bid and upon end of Auction, the tender will be automatically awarded to the winner
- Since blockchain is a fairly new technology, we faced difficulties in finding solutions for bugs due to a smaller community.
- Cadence was pretty hard for us to learn and implement on that large scale, Resources was scarce too
- Flow Testnet was crashing sometimes
- Insufficient quota in our cloud account prevented us from creating a VPC network in GCP, causing problem in establishing a seamless connection between the Cloud SQL and VM instance.
- Faced timeout errors with the Google Cloud Auth proxy, impacting the authentication process and causing disruptions in the project workflow.
- Faces issue during private IP exposure and adjusting firewall settings were necessary steps to establish a successful connection between the two cloud services.
- Restructuring the view vid and auction section for better readability and organization.
- Optimization and minor bug fixes.
To set up your project locally, follow these simple steps.
You must have NPM (Node Package Manager), Flow CLI, and Docker installed in your system. If you don't, we've got you covered.
Follow the steps below to set up the project:
-
Clone the repo
git clone https://github.com/bishakhne0gi/TenderFloww.git
-
Configure Client
cd client npm install
-
Install all the NPM packages
npm install
-
Configure
.env
file with the required settingsComing Soon
-
Initialize Flow: Navigate to the client folder
Flow init
-
Install and Configure Flow CLI, create and add an account so that we can deploy contracts on the testnet
flow accounts create \ --key <your Public key from flow Cli>\ --host access.devnet.nodes.onflow.org:9000 \ --signer my-testnet-account
For more information, refer to the testnet deployment guide.
-
Deploy the project on your testnet using the following command
flow project deploy
-
Run the project
npm start dev
- Landing page
- Login/SignUp component
- Place bids
- Admin panel
- Adding smart contract
- Building backend
- Integrating both smart contract and backend
- Integrate Filecoin
See the open issues for a full list of proposed features and known issues.
If you have a suggestion that would make this project better, please fork the repo and create a pull request. You can also simply open an issue with the tag "improvement". Don't forget to star this project!
To contribute:
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/Feature1
) - Commit your Changes (
git commit -m 'Add Feature 1'
) - Push to the Branch (
git push origin feature/Feature1
) - Open a Pull Request
Distributed under the MIT License.