diff --git a/README.md b/README.md index e5e426a..aa72a62 100644 --- a/README.md +++ b/README.md @@ -1 +1,334 @@ -# TNT \ No newline at end of file + + +
+ + + + + +
+ + Stability Nexus + + + +
+ + + +  + + + + + +
+ + + +[![Static Badge](https://img.shields.io/badge/Stability_Nexus-/TNT-228B22?style=for-the-badge&labelColor=FFC517)](https://tnt.stability.nexus/) + + + + + + + +
+ + + + + +

+ + +Telegram Badge +   + + +X (formerly Twitter) Badge +   + + +Discord Badge +   + + + Medium Badge +   + + + LinkedIn Badge +   + + + Youtube Badge +

+ + + +--- + + + +
+ +

TNT

+ +
+ + + +[TNT](https://tnt.stability.nexus/) (Trust Network Tokens) is a non-transferable ERC721 framework for issuing and revoking verifiable trust credentials. The dApp lets organizations deploy their own TNT contract via a factory, issue tokens to users, optionally revoke them, and keep a chain-verifiable registry of trust relationships. + + + +--- + + + +## Project Maturity + + + +TODO: In the checklist below, mark the items that have been completed and delete items that are not applicable to the current project: + + + +* [x] The project has a logo. + +* [x] The project has a favicon. + +* [ ] The protocol: + + - [ ] has been described and formally specified in a paper. + + - [ ] has had its main properties mathematically proven. + + - [ ] has been formally verified. + +* [ ] The smart contracts: + + - [ ] were thoroughly reviewed by at least two knights of The Stable Order. + + - [x] were deployed to: + + - [ ] Ergo + + - [ ] Cardano + + - [x] EVM Chains: + + - [ ] Ethereum Classic + + - [ ] Ethereum + + - [ ] Polygon + + - [ ] BSC + + - [ ] Base + + - [x] Scroll Sepolia (Chain ID 534351) — factory at `0xc0e8ababc172112e3e458ae35a4d2d4b92b35e8e` + +* [ ] The mobile app: + + - [ ] has an _About_ page containing the Stability Nexus's logo and pointing to the social media accounts of the Stability Nexus. + + - [ ] is available for download as a release in this repo. + + - [ ] is available in the relevant app stores. + +* [ ] The web frontend: + + - [ ] has proper title and metadata. + + - [ ] has proper open graph metadata, to ensure that it is shown well when shared in social media (Discord, Telegram, Twitter, LinkedIn). + + - [ ] has a footer, containing the Stability Nexus's logo and pointing to the social media accounts of the Stability Nexus. + + - [ ] is fully static and client-side. + + - [ ] is deployed to Github Pages via a Github Workflow. + + - [ ] is accessible through the https://tnt.stability.nexus domain. + +* [ ] the project is listed in [https://stability.nexus/protocols](https://stability.nexus/protocols). + + + +--- + + + +## Tech Stack + + + +### Frontend + + + +- Next.js 15 (App Router) +- TypeScript +- TailwindCSS + tailwind-merge + tailwindcss-animate +- shadcn/ui (Radix UI primitives) +- RainbowKit + wagmi + ethers.js for wallet connectivity +- Next Themes, Framer-powered UX elements + +### Blockchain + + + +- Solidity smart contracts (Foundry / Hardhat) +- OpenZeppelin ERC721 + AccessControl +- TNT Factory deploys non-transferable, optionally revokable TNT tokens and tracks issued tokens per user +- Deployed on Scroll Sepolia (Chain ID 534351) + + + +--- + + + +## Getting Started + + + +### Prerequisites + + + +- Node.js 18+ +- npm/yarn/pnpm +- MetaMask or any web3 wallet browser extension +- Scroll Sepolia RPC endpoint and testnet funds for interactions +- A WalletConnect project ID (`NEXT_PUBLIC_PROJECT_ID`) for RainbowKit + +### Installation + + + +> The Next.js app lives in `web/`. Smart contracts live in `contracts/`. + +#### 1. Clone the Repository + + + +```bash +git clone https://github.com/StabilityNexus/TNT.git +cd TNT/web +``` + + + +#### 2. Install Dependencies + + + +Using your preferred package manager: + + + +```bash +npm install +# or +yarn install +# or +pnpm install +``` + + + +#### 3. Configure Environment Variables + + + +Create `web/.env.local` (you can copy from `web/.sample.env`) and set: + +``` +NEXT_PUBLIC_PROJECT_ID=your_walletconnect_project_id +``` + + + +#### 4. Run the Development Server + + + +Start the app locally: + + + +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +``` + + + +#### 5. Open your Browser + + + +Navigate to [http://localhost:3000](http://localhost:3000) to see the application. Use the Create flow to deploy a new TNT, explore trust tokens, and manage issuance/revocation from the UI. + + + +--- + + + +## Smart Contracts + + + +Contracts live in `contracts/`: + +- `Factory.sol` deploys TNT contracts, tracks TNTs per creator, and maintains user-to-TNT registries (register/unregister on issuance/burn). +- `TNT.sol` is a non-transferable ERC721 with issuer and revoker roles, optional revocation, timestamped metadata, and image URL support. + +Common commands (from `contracts/`): + +```bash +forge build +forge test +forge fmt +``` + + + +--- + + + +## Contributing + + + +We welcome contributions of all kinds! To contribute: + +1. Fork the repository and create your feature branch (`git checkout -b feature/AmazingFeature`). +2. Commit your changes (`git commit -m 'Add some AmazingFeature'`). +3. Run the development workflow commands to ensure code quality: + - `npm run lint` + - `npm run build` +4. Push your branch (`git push origin feature/AmazingFeature`). +5. Open a Pull Request for review. + +If you encounter bugs, need help, or have feature requests: + +- Please open an issue in this repository providing detailed information. +- Describe the problem clearly and include any relevant logs or screenshots. + + + +We appreciate your feedback and contributions! + + + +© 2025 The Stable Order.