DataStore DApp is a decentralized application built using React that allows users to securely store and retrieve data on the blockchain. This project leverages Solidity smart contracts and web3.js/ethers.js to interact with Stability.
A live version of this site is available here.
- Generate Secrets: Securely create and manage secrets that can be stored on the Stability blockchain.
- Publish Data: Input data and publish it to the Stability blockchain with encryption for added security.
- Retrieve Data: Retrieve and decrypt stored data using the associated secret.
The project is organized into the following key files and directories:
/public: Contains static assets likefavicon.ico, andmanifest.json./src: Main source code directory containing components and application logic.App.js: Entry point for the application.InputData.js,RetrieveData.js,GenerateSecret.js,PublishData.js: Core components for handling data operations./components: Contains reusable components likeInfoBox./contracts: Holds the smart contract ABI file (contractABI.js) for blockchain interaction.
.env.template: Template for environment variables configuration (API keys, network settings).
- Node.js (v14 or above)
- npm or yarn
- Stability API Key - Available at the Stability Account Portal.
-
Clone the repository:
git clone https://github.com/yourusername/datastoredapp.git cd datastoredapp -
Install dependencies:
npm install
-
Set up environment variables:
- Copy
.env.templateto.env - Update the
.envfile with the required values.
- Copy
-
Start the development server:
npm start
-
Open your browser and navigate to
http://localhost:3000.
Run tests using:
npm testTo build the project for production:
npm run buildThe build will be output to the build folder, which you can deploy to any static hosting service.
This project is licensed under the MIT License.