{"id":27283794,"url":"https://github.com/itsdillon/web3-blitz","last_synced_at":"2025-04-11T18:43:37.939Z","repository":{"id":43126503,"uuid":"419500343","full_name":"itsdillon/web3-blitz","owner":"itsdillon","description":"A fullstack web3 solution for blitz.js","archived":false,"fork":false,"pushed_at":"2022-03-16T19:55:47.000Z","size":2401,"stargazers_count":40,"open_issues_count":0,"forks_count":8,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-04T20:59:27.553Z","etag":null,"topics":["blitzjs","hardhat","solidity","web3"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/itsdillon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-10-20T21:53:31.000Z","updated_at":"2025-02-24T17:45:35.000Z","dependencies_parsed_at":"2022-09-06T17:51:16.684Z","dependency_job_id":null,"html_url":"https://github.com/itsdillon/web3-blitz","commit_stats":null,"previous_names":["dillondotzip/web3-blitz","itsdillon/web3-blitz"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsdillon%2Fweb3-blitz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsdillon%2Fweb3-blitz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsdillon%2Fweb3-blitz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsdillon%2Fweb3-blitz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/itsdillon","download_url":"https://codeload.github.com/itsdillon/web3-blitz/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248461065,"owners_count":21107599,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blitzjs","hardhat","solidity","web3"],"created_at":"2025-04-11T18:43:37.254Z","updated_at":"2025-04-11T18:43:37.923Z","avatar_url":"https://github.com/itsdillon.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"This is a fullstack solution for web3.\n\nWrite your contracts, backend \u0026 frontend with solidity, hardhat \u0026 blitz.js.\n\nBy default, allow users to connect their wallet \u0026 mint a randomized NFT. Then have authenticated routes where the wallet connected must own the NFT to view the page.\n\n**If you want to create a SaaS instead, checkout [1UpBlitz](https://1upblitz.com). A Blitz.js SaaS boilerplate that will save you over 60 hours of work.**\n\nCreated by [Dillon Raphael](https://twitter.com/dillonraphael)\n\n## Features\n\n**MetaMask \u0026 WalletConnect** - Providers easily accessible from blitz.js integration folder.\n\n**Blitz.js Private Session** - Store a private session in the database when a user connects their wallet. Easily access which nft's are owned by that user in mutations and getServerSideProps\n\n**Default contract** - Allow users to mint an NFT that generates a randomized image. Similar to Loot and Developer Dao\n\n**Context layout provider** - A layout context provider that handles checking for a private session and injects the users wallet. Also gain quick access to your contract function.\n\n**Authenticated routes** - Have routes that checks if the user owns a certain amount of nfts before accessing the page\n\n## Get Started\n\nCreate an `.env.local` file with the following variables:\n\n```ts\nDATABASE_URL=postgresql://\nNEXT_PUBLIC_RPC_URL_MAINNET=\nNEXT_PUBLIC_RPC_URL_RINKEBY=\nNEXT_PUBLIC_RPC_URL_GOERLI=\nWALLET_PRIVATE_KEY=\nNEXT_PUBLIC_CONTRACT_ADDRESS=\n```\n\nYou can get RPC urls from [http://moralis.io/](http://moralis.io/). It's required to deploy to a testnet or mainnet. You must also enter one of your wallet's private key that will be used to deploy your contract.\n\nTo start a local blockchain, run the following hardhat command:\n\n`yarn hardhat node`\n\nTo deploy your contract, run:\n\n`yarn hardhat run scripts/deploy.ts --network localhost`\n\nFor rinkeby (ensure your wallet private key is an address on the rinkeby testnet):\n\n`yarn hardhat run scripts/deploy.ts --network rinkeby`\n\nAfter you deploy, you'll receive the address of the contract that you can use in the env file.\n\nThen in a separate terminal window, run:\n\n`yarn dev`\n\n## Credits\n\n[Dillon Raphael](https://twitter.com/dillonraphael) – Code, Documentation\n\n[Foda](https://twitter.com/0xFoda) - Idea, UX\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsdillon%2Fweb3-blitz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fitsdillon%2Fweb3-blitz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsdillon%2Fweb3-blitz/lists"}