This is a Next.js project bootstrapped with create-next-app.
To deploy the component to K8s, you should do the following:
- Install Helm
- Export all the env-vars
- Run
.deploy/install.sh - Enjoy
First, run the development server:
npm install
npm run devThen, run Prismic local development server with slice machine which you can access at http://localhost:9999
npm run slicemachineYellow Prismic available on https://yellow.prismic.io/
- In contracts/.env you have to do next steps:
- change
POLYGON_URLtohttps://polygon-rpc.com - set your
PRIVATE_KEYof metamask account - set
SIGNER_ACCOUNTin .env - run
npx hardhat run scripts/deploy.ts --network matic
- In contracts/.env you have to do next steps:
- change
POLYGON_URLtohttps://polygon-rpc.com - set your
PRIVATE_KEYof metamask account - set
SIGNER_ACCOUNTin .env - run
npx hardhat run scripts/deploy.ts --network matic
- In .env do next things:
- set
NEXT_PUBLIC_MAIN_CHAIN_IDto 137 (polygon mainnet) - set
NEXT_PUBLIC_POLYGON_URLtohttps://polygon-rpc.com - set
NEXT_PUBLIC_CONTRACT_ADDRESS - set
NEXT_PUBLIC_METAMASK_PRIVATE_KEYto the private key ofSIGNER_ACCOUNT - set
NEXT_PUBLIC_JWT_PRIVATE_KEYto some secret string - set
NEXT_PUBLIC_GOOGLE_TAG_MANAGER_IDto your Google Tag Manager ID - set
NEXT_PUBLIC_GOOGLE_ANALYTICSto your Google Analitics ID - set
NEXT_PUBLIC_SUPABASE_URLtaken from supabase:Project URL - set
NEXT_PUBLIC_SUPABASE_ANON_KEYtaken from supabase:Project API keys - set
NEXT_PUBLIC_RECAPTCHA_SITEKEY - set envs for twilio:
TWILIO_ACCOUNT_SID,TWILIO_AUTH_TOKENandTWILIO_PHONE_NUMBER - set
JWT_SECRETenv taken from supabase - set
NEXT_PUBLIC_DEV_MODE:trueorfalse(default:false)
There 2 type of environment secrets in .drone.yml that we need for running Duckies app:
- For UAT
- For PROD
NEXT_PUBLIC_MAIN_CHAIN_ID- polygon chain id (production - 137, uat - 80001)NEXT_PUBLIC_POLYGON_URL- polygon rpc urlNEXT_PUBLIC_CONTRACT_ADDRESS- duckies proxy smart contract addressNEXT_PUBLIC_GOOGLE_TAG_MANAGER_ID- google tag manager idNEXT_PUBLIC_GOOGLE_ANALYTICS- google analytics idNEXT_PUBLIC_SUPABASE_URL- supabase project urlNEXT_PUBLIC_SUPABASE_ANON_KEY- supabase project anon keyNEXT_PUBLIC_RECAPTCHA_SITEKEY- google recaptcha sitekeyNEXT_PUBLIC_METAMASK_PRIVATE_KEY- metamask account private keyNEXT_PUBLIC_DEV_MODE- env for devepoment mode message (by default:false)TWILIO_ACCOUNT_SID- Twilio Account SIDTWILIO_AUTH_TOKEN- Twilio Account Auth TokenTWILIO_PHONE_NUMBER- Twilio +18562633514JWT_SECRET- Project JWT Settings JWT secret
NEXT_PUBLIC_MAIN_CHAIN_ID-next_public_main_chain_id_uatNEXT_PUBLIC_POLYGON_URL-next_public_polygon_url_uatNEXT_PUBLIC_CONTRACT_ADDRESS-next_public_contact_address_uatNEXT_PUBLIC_GOOGLE_TAG_MANAGER_ID-next_public_google_tag_manager_id_uatNEXT_PUBLIC_GOOGLE_ANALYTICS-next_public_google_analytics_uatNEXT_PUBLIC_SUPABASE_URL-next_public_supabase_url_uatNEXT_PUBLIC_SUPABASE_ANON_KEY-next_public_supabase_anon_key_uatNEXT_PUBLIC_RECAPTCHA_SITEKEY-next_public_recaptcha_sitekey_uatNEXT_PUBLIC_METAMASK_PRIVATE_KEY-next_public_metamask_private_key_uatNEXT_PUBLIC_DEV_MODE-next_public_dev_mode_uatTWILIO_ACCOUNT_SID-twilio_account_sid_uatTWILIO_AUTH_TOKEN-twilio_auth_token_uatTWILIO_PHONE_NUMBER-twilio_phone_number_uatJWT_SECRET-supabase_jwt_secret_uat
NEXT_PUBLIC_MAIN_CHAIN_ID-next_public_main_chain_idNEXT_PUBLIC_POLYGON_URL-next_public_polygon_urlNEXT_PUBLIC_CONTRACT_ADDRESS-next_public_contact_addressNEXT_PUBLIC_GOOGLE_TAG_MANAGER_ID-next_public_google_tag_manager_idNEXT_PUBLIC_GOOGLE_ANALYTICS-next_public_google_analyticsNEXT_PUBLIC_SUPABASE_URL-next_public_supabase_urlNEXT_PUBLIC_SUPABASE_ANON_KEY-next_public_supabase_anon_keyNEXT_PUBLIC_RECAPTCHA_SITEKEY-next_public_recaptcha_sitekeyNEXT_PUBLIC_METAMASK_PRIVATE_KEY-next_public_metamask_private_keyTWILIO_ACCOUNT_SID-twilio_account_sidTWILIO_AUTH_TOKEN-twilio_auth_tokenTWILIO_PHONE_NUMBER-twilio_phone_numberJWT_SECRET-supabase_jwt_secret