Skip to content

pinakipb2/DigiBlock

Repository files navigation


DigiBlock API
DigiBlock

A one-stop platform for your Digital Identity to be Safe and Organized

File StructureEnvironment ConfigurationsAvailable Scripts

File Structure

digiblock\
│
├── client\
│   ├── public\
│   │   ├── assets\
│   │   │   ├── birthCertificate.png
│   │   │   ├── correct.png
│   │   │   ├── deathCertificate.png
│   │   │   ├── delete.png
│   │   │   ├── error.svg
│   │   │   ├── hero.svg
│   │   │   ├── incorrect.png
│   │   │   ├── loading.gif
│   │   │   ├── metamask.png
│   │   │   ├── nav_logo.png
│   │   │   ├── partner.svg
│   │   │   ├── pdf.png
│   │   │   ├── voterID.png
│   │   │   └── XIICertificate.png
│   │   │
│   │   ├── apple-touch-icon.png
│   │   ├── favicon.ico
│   │   ├── index.html
│   │   ├── manifest.json
│   │   └── robots.txt
│   │
│   ├── src\
│   │   ├── api\
│   │   │   ├── Admin\
│   │   │   │   └── index.js
│   │   │   │
│   │   │   ├── config\
│   │   │   │   └── index.js
│   │   │   │
│   │   │   └── Issuer\
│   │   │       └── index.js
│   │   │
│   │   │
│   │   ├── components\
│   │   │   ├── Admin\
│   │   │   │   ├── Dashboard\
│   │   │   │   │   ├── MainComponents\
│   │   │   │   │   │   ├── Admins\
│   │   │   │   │   │   │   └── AdminDetails.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── DashboardStats\
│   │   │   │   │   │   │   ├── Card.jsx
│   │   │   │   │   │   │   └── Stats.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── Issuers\
│   │   │   │   │   │   │   └── IssuerDetails.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── Profile\
│   │   │   │   │   │   │   └── Profile.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── UI\
│   │   │   │   │   │   │   ├── AddAdminDrawer.jsx
│   │   │   │   │   │   │   ├── AddIssuerDrawer.jsx
│   │   │   │   │   │   │   ├── MasterKeyModal.jsx
│   │   │   │   │   │   │   ├── Pagination.jsx
│   │   │   │   │   │   │   ├── Table.jsx
│   │   │   │   │   │   │   └── TagsInput.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   └── Utils\
│   │   │   │   │   │       └── Validations.js
│   │   │   │   │   │
│   │   │   │   │   │
│   │   │   │   │   ├── Navbar\
│   │   │   │   │   │   ├── NavAdmin.jsx
│   │   │   │   │   │   └── NavProfile.jsx
│   │   │   │   │   │
│   │   │   │   │   └── SideBar\
│   │   │   │   │       ├── CollapsedSideBar.jsx
│   │   │   │   │       ├── FullSideBar.jsx
│   │   │   │   │       └── SideBar.jsx
│   │   │   │   │
│   │   │   │   │
│   │   │   │   └── Login\
│   │   │   │       ├── ConnectWallet.jsx
│   │   │   │       ├── Login.jsx
│   │   │   │       └── LoginToDashboard.jsx
│   │   │   │
│   │   │   │
│   │   │   ├── Common\
│   │   │   │   ├── 404\
│   │   │   │   │   └── 404.jsx
│   │   │   │   │
│   │   │   │   ├── AboutUs\
│   │   │   │   │   ├── About.jsx
│   │   │   │   │   └── Profile.jsx
│   │   │   │   │
│   │   │   │   ├── HomePage\
│   │   │   │   │   ├── Documents\
│   │   │   │   │   │   ├── Card.jsx
│   │   │   │   │   │   └── Documents.jsx
│   │   │   │   │   │
│   │   │   │   │   ├── Explore\
│   │   │   │   │   │   └── Explore.jsx
│   │   │   │   │   │
│   │   │   │   │   ├── Hero\
│   │   │   │   │   │   └── Hero.jsx
│   │   │   │   │   │
│   │   │   │   │   └── Info\
│   │   │   │   │       └── Info.jsx
│   │   │   │   │
│   │   │   │   │
│   │   │   │   ├── Loading\
│   │   │   │   │   └── Loading.jsx
│   │   │   │   │
│   │   │   │   ├── Footer.jsx
│   │   │   │   ├── Navbar.jsx
│   │   │   │   └── ScrollToTop.jsx
│   │   │   │
│   │   │   ├── Issuer\
│   │   │   │   ├── Dashboard\
│   │   │   │   │   ├── MainComponents\
│   │   │   │   │   │   ├── DashboardGuide\
│   │   │   │   │   │   │   └── IssuerGuide.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── Documents\
│   │   │   │   │   │   │   └── IssuerDocuments.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── IssueDocument\
│   │   │   │   │   │   │   ├── Dropzone.jsx
│   │   │   │   │   │   │   └── IssueDocument.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   └── Profile\
│   │   │   │   │   │       └── Profile.jsx
│   │   │   │   │   │
│   │   │   │   │   │
│   │   │   │   │   ├── Navbar\
│   │   │   │   │   │   ├── NavIssuer.jsx
│   │   │   │   │   │   └── NavProfile.jsx
│   │   │   │   │   │
│   │   │   │   │   ├── SideBar\
│   │   │   │   │   │   ├── CollapsedSideBar.jsx
│   │   │   │   │   │   ├── FullSideBar.jsx
│   │   │   │   │   │   └── SideBar.jsx
│   │   │   │   │   │
│   │   │   │   │   └── UI\
│   │   │   │   │       └── Pagination.jsx
│   │   │   │   │
│   │   │   │   │
│   │   │   │   └── Login\
│   │   │   │       ├── ConnectWallet.jsx
│   │   │   │       ├── Login.jsx
│   │   │   │       └── LoginToDashboard.jsx
│   │   │   │
│   │   │   │
│   │   │   ├── Requestor\
│   │   │   │   ├── Dashboard\
│   │   │   │   │   ├── MainComponents\
│   │   │   │   │   │   ├── AcceptedDocuments\
│   │   │   │   │   │   │   └── AcceptedDocuments.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── DashboardGuide\
│   │   │   │   │   │   │   └── RequestorGuide.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── PendingDocuments\
│   │   │   │   │   │   │   └── PendingDocuments.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── Profile\
│   │   │   │   │   │   │   └── RequestorProfile.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── RejectedDocuments\
│   │   │   │   │   │   │   └── RejectedDocuments.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── RequestDocuments\
│   │   │   │   │   │   │   └── RequestDocuments.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── RevokedDocuments\
│   │   │   │   │   │   │   └── RevokedDocuments.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   ├── UI\
│   │   │   │   │   │   │   ├── Pagination.jsx
│   │   │   │   │   │   │   └── Table.jsx
│   │   │   │   │   │   │
│   │   │   │   │   │   └── Utils\
│   │   │   │   │   │       └── Validations.js
│   │   │   │   │   │
│   │   │   │   │   │
│   │   │   │   │   ├── Navbar\
│   │   │   │   │   │   ├── NavProfile.jsx
│   │   │   │   │   │   └── NavRequestor.jsx
│   │   │   │   │   │
│   │   │   │   │   └── SideBar\
│   │   │   │   │       ├── CollapsedSideBar.jsx
│   │   │   │   │       ├── FullSideBar.jsx
│   │   │   │   │       └── SideBar.jsx
│   │   │   │   │
│   │   │   │   │
│   │   │   │   ├── Login\
│   │   │   │   │   ├── ConnectWallet.jsx
│   │   │   │   │   └── Login.jsx
│   │   │   │   │
│   │   │   │   └── SignUp\
│   │   │   │       ├── ConnectWallet.jsx
│   │   │   │       ├── SignUp.jsx
│   │   │   │       └── SignUpRequestor.jsx
│   │   │   │
│   │   │   │
│   │   │   └── User\
│   │   │       ├── Dashboard\
│   │   │       │   ├── MainComponents\
│   │   │       │   │   ├── AccessGranted\
│   │   │       │   │   │   └── AccessGranted.jsx
│   │   │       │   │   │
│   │   │       │   │   ├── AccessRejected\
│   │   │       │   │   │   └── AccessRejected.jsx
│   │   │       │   │   │
│   │   │       │   │   ├── AccessRevoked\
│   │   │       │   │   │   └── AccessRevoked.jsx
│   │   │       │   │   │
│   │   │       │   │   ├── DashboardGuide\
│   │   │       │   │   │   └── UserGuide.jsx
│   │   │       │   │   │
│   │   │       │   │   ├── Documents\
│   │   │       │   │   │   └── UserDocuments.jsx
│   │   │       │   │   │
│   │   │       │   │   ├── PendingApproval\
│   │   │       │   │   │   └── PendingApproval.jsx
│   │   │       │   │   │
│   │   │       │   │   ├── Profile\
│   │   │       │   │   │   └── Profile.jsx
│   │   │       │   │   │
│   │   │       │   │   ├── UI\
│   │   │       │   │   │   └── Pagination.jsx
│   │   │       │   │   │
│   │   │       │   │   └── Utils\
│   │   │       │   │       ├── ManageRequest.js
│   │   │       │   │       └── Validations.js
│   │   │       │   │
│   │   │       │   │
│   │   │       │   ├── Navbar\
│   │   │       │   │   ├── NavProfile.jsx
│   │   │       │   │   └── NavUser.jsx
│   │   │       │   │
│   │   │       │   └── SideBar\
│   │   │       │       ├── CollapsedSideBar.jsx
│   │   │       │       ├── FullSideBar.jsx
│   │   │       │       └── SideBar.jsx
│   │   │       │
│   │   │       │
│   │   │       ├── Login\
│   │   │       │   ├── ConnectWallet.jsx
│   │   │       │   └── Login.jsx
│   │   │       │
│   │   │       └── SignUp\
│   │   │           ├── ConnectWallet.jsx
│   │   │           ├── SignUp.jsx
│   │   │           └── SignUpUser.jsx
│   │   │
│   │   │
│   │   │
│   │   ├── config\
│   │   │   └── index.js
│   │   │
│   │   ├── contracts\
│   │   │   └── DigiBlock.json
│   │   │
│   │   ├── fonts\
│   │   │   └── Mogena.ttf
│   │   │
│   │   ├── hooks\
│   │   │   ├── useAdminDetect.js
│   │   │   ├── useIssuerDetect.js
│   │   │   ├── useRequestorDetect.js
│   │   │   └── useUserDetect.js
│   │   │
│   │   ├── pages\
│   │   │   ├── Admin\
│   │   │   │   ├── Dashboard\
│   │   │   │   │   └── AdminDashboard.jsx
│   │   │   │   │
│   │   │   │   └── Login\
│   │   │   │       └── AdminLogin.jsx
│   │   │   │
│   │   │   │
│   │   │   ├── Common\
│   │   │   │   ├── AboutUsPage.jsx
│   │   │   │   └── HomePage.jsx
│   │   │   │
│   │   │   ├── Issuer\
│   │   │   │   ├── Dashboard\
│   │   │   │   │   └── IssuerDashboard.jsx
│   │   │   │   │
│   │   │   │   └── Login\
│   │   │   │       └── IssuerLogin.jsx
│   │   │   │
│   │   │   │
│   │   │   ├── Requestor\
│   │   │   │   ├── Dashboard\
│   │   │   │   │   └── RequestorDashboard.jsx
│   │   │   │   │
│   │   │   │   └── Login\
│   │   │   │       ├── RequestorLogin.jsx
│   │   │   │       └── RequestorSignUp.jsx
│   │   │   │
│   │   │   │
│   │   │   └── User\
│   │   │       ├── Dashboard\
│   │   │       │   └── UserDashboard.jsx
│   │   │       │
│   │   │       └── Login\
│   │   │           ├── UserLogin.jsx
│   │   │           └── UserSignUp.jsx
│   │   │
│   │   │
│   │   │
│   │   ├── redux\
│   │   │   ├── admin\
│   │   │   │   ├── admin.actions.js
│   │   │   │   ├── admin.reducer.js
│   │   │   │   └── admin.types.js
│   │   │   │
│   │   │   ├── contract\
│   │   │   │   ├── contract.actions.js
│   │   │   │   ├── contract.reducer.js
│   │   │   │   ├── contract.saga.js
│   │   │   │   └── contract.types.js
│   │   │   │
│   │   │   ├── issuer\
│   │   │   │   ├── issuer.actions.js
│   │   │   │   ├── issuer.reducer.js
│   │   │   │   └── issuer.types.js
│   │   │   │
│   │   │   ├── requestor\
│   │   │   │   ├── requestor.actions.js
│   │   │   │   ├── requestor.reducer.js
│   │   │   │   └── requestor.types.js
│   │   │   │
│   │   │   ├── user\
│   │   │   │   ├── user.actions.js
│   │   │   │   ├── user.reducer.js
│   │   │   │   └── user.types.js
│   │   │   │
│   │   │   ├── root-reducer.js
│   │   │   ├── root-saga.js
│   │   │   └── store.js
│   │   │
│   │   ├── routes\
│   │   │   ├── AdminProtectedRoute.jsx
│   │   │   ├── IssuerProtectedRoute.jsx
│   │   │   ├── RequestorProtectedRoute.jsx
│   │   │   └── UserProtectedRoute.jsx
│   │   │
│   │   ├── UI\
│   │   │   └── NonDismissableModal.jsx
│   │   │
│   │   ├── App.jsx
│   │   ├── getWeb3.js
│   │   ├── index.css
│   │   └── index.jsx
│   │
│   ├── .env
│   ├── .eslintrc.json
│   ├── .gitignore
│   ├── craco.config.js
│   ├── gulpfile.js
│   ├── package-lock.json
│   ├── package.json
│   ├── README.md
│   ├── tailwind.config.js
│   └── yarn.lock
│
├── contracts\
│   └── DigiBlock.sol
│
├── migrations\
│   └── 1_deploy_digiblock.js
│
├── test\
│   ├── DigiBlock.js
│   └── TESTCOVERAGE.md
│
├── .gitattributes
├── .gitignore
├── CHANGELOG.md
├── LICENSE
├── package-lock.json
├── package.json
├── README.md
└── truffle-config.js

Environment Configurations

MNEMONIC=<MNEMONIC>
RINKEBY_INFURA_API_KEY=<RINKEBY_INFURA_API_KEY>

Available Scripts

# Install dependencies
$ npm i
# Migrate the smart contract
$ npm run migrate
# Deploy the smart contract
$ npm run deploy

Note: More scripts can be found inside package.json