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.template
to.env
- Update the
.env
file with the required values.
- Copy
-
Start the development server:
npm start
-
Open your browser and navigate to
http://localhost:3000
.
Run tests using:
npm test
To build the project for production:
npm run build
The 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.