This template spins up a dapp that is
- ✅ Built with the popular React JS library
- ✅ VC Gated with a Polygon ID KYCAgeCredential
- ✅ Fully connected with to all EVM chains including Polygon zkEVM Testnet and Polygon Mumbai Testnet RainbowKit Wallet
- ✅ Beautifully styled with configurable components and icons from the Chakra UI library
- ✅ Ready to interact with any smart contract thanks to working read and write examples from a Polygon zkEVM Testnet demo smart contract with wagmi hooks
Use this template as a base to bootstrap a Polygon hackathon project FAST 🏃🏻♀️ so you can focus on your dapp's business logic & building the value layer of the internet. 🚀
Love or hate something about this template? Let me know by tweeting your feedback
Node requirement: node v20.2.0
Here's how to check your node version.
node -v
If you're not running this version, you can switch your version with nvm
-
Visit the template repo https://github.com/oceans404/fullstack-polygon-id-vc-gated-dapp/tree/main and click "Use this template" to create a new repo
-
Get a KYCAgeCredential Verifiable Credential - follow instructions here
-
Follow server setup instructions
https://github.com/oceans404/fullstack-polygon-id-vc-gated-dapp/tree/main/server
- Follow frontend setup instructions
https://github.com/oceans404/fullstack-polygon-id-vc-gated-dapp/tree/main/frontend
- Frontend: localhost:3000
- Server: localhost:8080
Welcome page: In order to see the dapp, you need to prove your access rights. Click the "Prove access rights" button
![Screenshot 2023-06-23 at 10 51 19 AM](https://private-user-images.githubusercontent.com/91382964/248302658-65c486ea-16f5-4ad7-9da5-97492bc83b7e.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ1NDUwNzIsIm5iZiI6MTcyNDU0NDc3MiwicGF0aCI6Ii85MTM4Mjk2NC8yNDgzMDI2NTgtNjVjNDg2ZWEtMTZmNS00YWQ3LTlkYTUtOTc0OTJiYzgzYjdlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDAwMTI1MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTNlNTVhNGFhYTZiN2U1NzlkMmFhOGQ2ZjEwMDgzYjE2YjEyNjYzNmZhZDRhZmYyOTk0NTVmYzMxMzA4N2Q2ODAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.X17loXqRk3ShC_Nro5e6dlm7NNsT1-RT7lR6zEZNk8k)
A modal with a QR code appears. Scan this QR code with your Polygon ID mobile app. Note: you must hold a KYCAgeCredential with a birthday before this year. Here's how to get the KYCAgeCredential VC
![Screenshot 2023-06-23 at 10 51 30 AM](https://private-user-images.githubusercontent.com/91382964/248302685-c570c4c6-c549-4dea-9f4b-611bb54bbe78.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ1NDUwNzIsIm5iZiI6MTcyNDU0NDc3MiwicGF0aCI6Ii85MTM4Mjk2NC8yNDgzMDI2ODUtYzU3MGM0YzYtYzU0OS00ZGVhLTlmNGItNjExYmI1NGJiZTc4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDAwMTI1MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWU3OTdhYTEzOGVhOGNkZjNmZmMyMWVkNjU1YmMzNWM0YTJhYTVjMzEzYzZlMDZjZjczNjg3ZjE5ODM5YjE5ZGMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.d5YIJAzkeZyiAGWWcYco1XQ4adVh0Of9DQSqty6ctx8)
If you successfully complete age verification, you'll see a success message, then be redirected to the dapp.
![Screenshot 2023-06-23 at 10 51 57 AM](https://private-user-images.githubusercontent.com/91382964/248302717-f3d12060-d17e-4c55-b4da-43c6fe13c7eb.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ1NDUwNzIsIm5iZiI6MTcyNDU0NDc3MiwicGF0aCI6Ii85MTM4Mjk2NC8yNDgzMDI3MTctZjNkMTIwNjAtZDE3ZS00YzU1LWI0ZGEtNDNjNmZlMTNjN2ViLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDAwMTI1MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWY1ZjA5NjU3ZWQxZTgxMGE0MzIwOGVjNWJlYzBlMzgwYzk5YmM0YmQyZDM4MGRmMzNhYTU1ZjM0ZmE4NDg2OTMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.KzevSuEtkGHxGmKCtAk3YakZnSVtND9uBaTjmSQooZI)
This is the Dapp page that you see once you've proved access rights. It's set up with a RainbowKit wallet connector and has read and write to smart contract examples.
![Screenshot 2023-06-23 at 10 52 19 AM](https://private-user-images.githubusercontent.com/91382964/248302746-7e89b2b8-fb78-42df-9bc1-5938198af3a8.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ1NDUwNzIsIm5iZiI6MTcyNDU0NDc3MiwicGF0aCI6Ii85MTM4Mjk2NC8yNDgzMDI3NDYtN2U4OWIyYjgtZmI3OC00MmRmLTliYzEtNTkzODE5OGFmM2E4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDAwMTI1MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTAwNGI5MzRkOWU2NDg5YzM2YTQ5ZmU4MDkxOWQzNGJkNjM0NzNlNGFhY2QyMzhmYTgwMzFlODkzN2MzNGE0NGUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Pmw0y9aafl9VOJgZVWJo6vFnrLXMyMNaEt-Ypuxa95I)