Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Shopify Storefront with Coinbase Commerce checkout #562

Merged
merged 10 commits into from
Jun 25, 2024

Conversation

hughescoin
Copy link
Collaborator

What changed? Why?
Added new tutorial

Notes to reviewers
Tutorial require a Shopify + Commerce managed account

How has it been tested?

Copy link

vercel bot commented Jun 13, 2024

@hughescoin is attempting to deploy a commit to the Coinbase Team on Vercel.

A member of the Team first needs to authorize it.

@cb-heimdall
Copy link
Collaborator

cb-heimdall commented Jun 13, 2024

🟡 Heimdall Review Status

Item Status More Info
Minimum Required Reviews 🟡 0/1
Show calculation
Show calculations
1 if user is bot 0
1 if user is external 0
From .codeflow.yml 1
Additional review requirements
Show calculations
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

📝 Heimdall docs · 🕵️ Advanced details · ♻️ Refresh Heimdall · #️⃣ #ask-heimdall


1. Navigate to your admin page: (`https://admin.shopify.com/store/<YOUR-STORE-NAME>`)
2. Click on Settings (`https://admin.shopify.com/store/<YOUR-STORE-NAME>settings/general`)
3. Click on the “Payments” tab
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This kind of tutorial really benefits from screenshots, etc. Love the gif!

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But I would add screenshots at each step too

6. Type in “Coinbase” in the search field
7. Select “Coinbase Commerce”
8. Click "Install"
9. Log into your Coinbase account
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Trying to sign up for a business account is just taking me through a login process and dumping me onto coinbase.com/home

Either we've got a bug, or it should be clearer that you can not use the email you have a retail account with for a business account. Can you please check with them and update as appropriate?

Copy link

vercel bot commented Jun 24, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
web-base-docs ❌ Failed (Inspect) Jun 25, 2024 4:28pm

@briandoyle81CB briandoyle81CB merged commit f657b45 into base-org:master Jun 25, 2024
4 of 6 checks passed
JFrankfurt pushed a commit that referenced this pull request Jun 26, 2024
* Shopify Storefront with Coinbase Commerce checkout

* Implement @briandoyle81CB feedback

* Update Commerce section

* fix formatting

* use backticks for buttons

* add admonitions

* add a tip for checking out with crypto

* swap should with will

* update conclusion
JFrankfurt added a commit that referenced this pull request Jul 25, 2024
* describe new endpoint

* add spinner icon and dropdown loading state

* loading avatar state

* use ricardo's endpoints

* better error handling for linked-addresses check

* create jwt with jose

* add loading state to registration UI

* dedupe some registrar controller references

* fix dropdown max height

* rename constant

* name -> names page

* refactor to use AddressMap

* undo docs change

* rm console.log

* set docs data to state on master

* remove classname conditional logic in favor of headless ui transition

* fix early return hook count error

* Extract Learn More Modal

* add dynamic og images for usernames

* clean up og image and url setup

* individually call each endpoint for attestation data--use linked accounts to check for existing registrations

* useAttestations

* fix linkedAddresses undefined error

* clean up api result

* tie in discount state to copy in registration form

* Add ShareUsernameModal for post-claim flow

* ShareUsernameModal: font weight and padding tweaks

* resolve conflicts

* useActiveDiscountValidators()

* ShareUsernameModal: design update

* update proof endpoints

* use response types, fix wrong network breaking name search

* ensure uniform utilization of the network check for contract args construction

* usernames: Update learn more modal

* Shelley feedback 1/6

* Shelley feedback 2/6

* Shelley feedback 3/6

* Brian doyle/zora tutorial (#588)

* Partial: Build with zora

* Stash progress

* Progress stash

* Add zora premint tutorial

* Apply feedback

* Fix typo

* Update title

* Shopify Storefront with Coinbase Commerce checkout (#562)

* Shopify Storefront with Coinbase Commerce checkout

* Implement @briandoyle81CB feedback

* Update Commerce section

* fix formatting

* use backticks for buttons

* add admonitions

* add a tip for checking out with crypto

* swap should with will

* update conclusion

* maintenance(node): Notate new requirement, NVME (#596)

* Swap typescript Code Blocks to tsx (#597)

* Start

* Switch typescript code blocks to tsx

* Feat/add events to docs (#587)

* Created logEvent utility

* Added event tracking to OCS Banner

* Created CustomNavbarLink with event tracking

* created custom navbar dropdown link with event tracking

* added event tracking to P0 navbar elements

* Added eventDetail parameter to event tracking

* Updated Bootcamp link

* enforced cursor pointer on custom navbar links

* updated navbar elements to include event tracking

* event tracking for navbar social links

* added target property to custom navbar elements

* made links to off-domain locations open in new tab

* updated tutorials data

* implemented tracking on connect wallet buttons

* removed duplicate connect button from StudentProgress component

* Links now send events with high importance

* Cleaned up StudentProgress component

* Social clicks use useCallback

* bugfix for logEvent

* created callbacks for social click handlers

* improved social click callbacks

* updated event names

* updated connect wallet event names on base.org

* added full typing to logEvent utility

* refactored logEvent typing

* added userId to event data options

* updated base-docs logEvent immplementations

* updated Connect Wallet event for base.org

* changed component_type to the expected

* Updated event logging for onchain summer banner

* fixed key errors on tutorials page (#598)

* chore: updated node versioning to be latest of 18 (hydrogen) (#560)

* updated node versioning to be latest of 18 (hydrogen) lts

* check if build version update works w/ gh action

* chore: add a pre-commit hook for linting (#601)

* add a precommit hook for linting

* test

* Revert "test"

This reverts commit f5329bd.

* add eslintcache to gitignore

* Shelley feedback 4/6

* fix lint

* Shelley feedback 5/6

* Shelley feedback 6/6

* use chain query param

* talk to the individual discount validators

* fix parse cdp key issues

* add error messages

* fix register name callback types

* remove some linkedAddresses stuff from the frontend

* Mobile pass and update contract addresses

* useBaseEnsName hook

* fake hasUsedADiscount

* return error

* return error

* return error

* add back hasRegisteredWithDiscount from backend

* restrict name to 20 chars

* UsernameProfileForm, TextArea, Fieldset, Label, Hint and more

* UsernameProfileForm: use useEnsText and rename bio to description

* utilize proofs apis for checking validity of discounts

* add (discounted)pricing hooks

* useWriteMultipleBaseEnsTextRecords: hooks to multicall

* update register name callback to include non-discounted registrations

* render eth price correctly

* minor cleanup

* fiddling with register call & viem

* clean up discount/non price passthrough

* Move hooks into /src/hooks, clean up useFocusWithin

* fix import path

* Add USD price display

* Fix multiple imports

* Better placeholder

* cleanup

* .json->.ts abi

* fix import

* Update abis to consistent format

* clean + add validateEnsDomainName

* show error message

* reset values when user skip

* format search to avoid space

* button loading state & emoji lenght fix

* add support for discounted registration

* move to profile after registration

* update address type

* add keywords

* check for previously registered addresses on cb.id endpoint

* add states and state switcher

* determine if the name registration is free

* small refactor of RegistrationProvider

* move selectedName to provider

* move hash to provider

* fix broken imports

* rm console.log

* clean up and design fixes for success stage

* connect discounts to explainer modal state

* rm console.log

* Profile page light

* fix pill animation

* update default expire

* redirect to user profile after registration

* fix expiration time

* fix ellipsis

* fix colors

* rename registration-specific profile form

* move brand logic to component

* move components from file to folder

* remove button in the username search input

* fix redirect if no field was edited, rename variables

* update card links and order

* fix some styles

* addAddr and fix the resolvers

* test full flow, reload data

* add correct styling to discounted price

* User can edit profile

* add social links on Profile page

* css cleanup

* fix styles from merge

* fix tooltip opacity

* re-arrange layout to avoid overflow

* wip: fetch coinbase verifications badges

* add usernames early access endpoint

* add name is free pricing subtext

* Fix text on kv errors

* layout fixes and animation

* Add EAS badges

* fix key rendering issue

* Don't display verifications if we have none

* return error on hasPreviouslyClaimed proofs

* rename area of expertise to skill

* add analytics

* use a provider for sanity

* context chaining

* update analytics

* move discount logic to registration context

* add analytics to user profile page

* allow for 2 discounts to create a signature on sybil resistance

* set chain based on env

* switch chain

* fix frogmonkee

* add error states and dropdown components

* fix spacing

* design and usability improvements

* fix navigation and registration profile form

* rm dev controls

* default to env chain

* unify logic for chain check

* fix getAttestations chain logic

* add real name suggestions with cb-gpt

* use cb1 discounts first, if available

* address some TODOs and fix copy-to-clipboard UX in dropdown

* fix domain url, enable metadata and svg card support

* get chain client correctly

* add twemoji support

* Fix css-loader build error

* add endpoints for contract-uri

* add redirect when json is missing

* ECO-75: Fix input focused state with blue background

* ECO-81: Discount modal: external link open in a new tab

* switch key to static value on ens pills

* ECO-93: add <ImageWithLoading> component for nice image load

* ECO-80: add nice animation to the Modal component

* ECO-73: align blue dot

* ECO-72: use Basenames for the pages titles

* ECO-84: transition between registration profile form steps

* ECO-76: Fix jumping layout when changing years

* automatic redirect when missing domain

* fix focus error causing blue reset

* upgrade tanstack

* Add Guild badges

* minimal yarn.lock changes

* Coerce schema type

* Feat/local paymaster (#645)

* paymaster working with url

* Wallet type verification complete

* Packages updated

* configure smart wallet

* Cleanup

* Update yarn.lock

* vercel error fixed

* Build fixed

* Resolved Comments

* Resolved chains

---------

Co-authored-by: Jordan Frankfurt <[email protected]>

* remove nav menu item for EA

* fix avatar overflow on pills

* tentative onchainkit implementation

* fix package

* fix padding and ECO-100

* ECO-60: fix validation

* ECO-12: remove perk value

* ECO-12-2: rename

* ECO-16: change tooltip copy

* update to latest onchainkit

* Fix non member found from Base Guild

* fix lock file

* Stub talentprotocol, fix verified country badge

* fix path

* avatar support with Vercel Blob

* lock

* Add TalentProtocol API endpoint

* Remove CSP for talentprotocol

* add radix tooltip pkg w/ refactor and add ai tooltip text

* use universal resolver address, check the avatar upload path

* reset address resolver for now

* error state & 404 page

* Display talent protocol score in badge

* add new discounts to discount modal

* add missing images and EA discount

* remove error stringifying from transactionError component

* ECO-85: skill badge design fix

* fix avatar resolution

* log avatar errors

* add EA contracts and validators

* update contract

* rename key

* debug early access checks

* add message if user is not eligible for early access

* don't discounts modal during early access

* connect wallet fixes

* dual chain support

* Unearned badges

* improve testnet/mainnet banner messaging

* proper chain resolution

* Move badge images

* Fix redirect after customizing profile

* better handling of EA roadblock

* fix cdp get vulnerability

* encode talentprotol URI

* fix cdp get vulnerability

* revert encodeUriComponent

* Fix a bunch of a11y errors

* alt image

* fix label

* Fix yarn lint issues

* lint error on getLinkedAddresses

* refactor paymaster code to fix ts errors (#680)

* add example env vars for paymaster links

* Remove .env

* gitignore .env

---------

Co-authored-by: Léo Galley <[email protected]>
Co-authored-by: Ricardo Moguel <[email protected]>
Co-authored-by: Matthew Bunday <[email protected]>
Co-authored-by: Brian Doyle <[email protected]>
Co-authored-by: Pat <[email protected]>
Co-authored-by: wbnns <[email protected]>
Co-authored-by: Brendan from DeFi <[email protected]>
Co-authored-by: Keshav Singhal <[email protected]>
kirkas pushed a commit that referenced this pull request Oct 21, 2024
* Shopify Storefront with Coinbase Commerce checkout

* Implement @briandoyle81CB feedback

* Update Commerce section

* fix formatting

* use backticks for buttons

* add admonitions

* add a tip for checking out with crypto

* swap should with will

* update conclusion
kirkas added a commit that referenced this pull request Oct 21, 2024
* describe new endpoint

* add spinner icon and dropdown loading state

* loading avatar state

* use ricardo's endpoints

* better error handling for linked-addresses check

* create jwt with jose

* add loading state to registration UI

* dedupe some registrar controller references

* fix dropdown max height

* rename constant

* name -> names page

* refactor to use AddressMap

* undo docs change

* rm console.log

* set docs data to state on master

* remove classname conditional logic in favor of headless ui transition

* fix early return hook count error

* Extract Learn More Modal

* add dynamic og images for usernames

* clean up og image and url setup

* individually call each endpoint for attestation data--use linked accounts to check for existing registrations

* useAttestations

* fix linkedAddresses undefined error

* clean up api result

* tie in discount state to copy in registration form

* Add ShareUsernameModal for post-claim flow

* ShareUsernameModal: font weight and padding tweaks

* resolve conflicts

* useActiveDiscountValidators()

* ShareUsernameModal: design update

* update proof endpoints

* use response types, fix wrong network breaking name search

* ensure uniform utilization of the network check for contract args construction

* usernames: Update learn more modal

* Shelley feedback 1/6

* Shelley feedback 2/6

* Shelley feedback 3/6

* Brian doyle/zora tutorial (#588)

* Partial: Build with zora

* Stash progress

* Progress stash

* Add zora premint tutorial

* Apply feedback

* Fix typo

* Update title

* Shopify Storefront with Coinbase Commerce checkout (#562)

* Shopify Storefront with Coinbase Commerce checkout

* Implement @briandoyle81CB feedback

* Update Commerce section

* fix formatting

* use backticks for buttons

* add admonitions

* add a tip for checking out with crypto

* swap should with will

* update conclusion

* maintenance(node): Notate new requirement, NVME (#596)

* Swap typescript Code Blocks to tsx (#597)

* Start

* Switch typescript code blocks to tsx

* Feat/add events to docs (#587)

* Created logEvent utility

* Added event tracking to OCS Banner

* Created CustomNavbarLink with event tracking

* created custom navbar dropdown link with event tracking

* added event tracking to P0 navbar elements

* Added eventDetail parameter to event tracking

* Updated Bootcamp link

* enforced cursor pointer on custom navbar links

* updated navbar elements to include event tracking

* event tracking for navbar social links

* added target property to custom navbar elements

* made links to off-domain locations open in new tab

* updated tutorials data

* implemented tracking on connect wallet buttons

* removed duplicate connect button from StudentProgress component

* Links now send events with high importance

* Cleaned up StudentProgress component

* Social clicks use useCallback

* bugfix for logEvent

* created callbacks for social click handlers

* improved social click callbacks

* updated event names

* updated connect wallet event names on base.org

* added full typing to logEvent utility

* refactored logEvent typing

* added userId to event data options

* updated base-docs logEvent immplementations

* updated Connect Wallet event for base.org

* changed component_type to the expected

* Updated event logging for onchain summer banner

* fixed key errors on tutorials page (#598)

* chore: updated node versioning to be latest of 18 (hydrogen) (#560)

* updated node versioning to be latest of 18 (hydrogen) lts

* check if build version update works w/ gh action

* chore: add a pre-commit hook for linting (#601)

* add a precommit hook for linting

* test

* Revert "test"

This reverts commit f5329bd.

* add eslintcache to gitignore

* Shelley feedback 4/6

* fix lint

* Shelley feedback 5/6

* Shelley feedback 6/6

* use chain query param

* talk to the individual discount validators

* fix parse cdp key issues

* add error messages

* fix register name callback types

* remove some linkedAddresses stuff from the frontend

* Mobile pass and update contract addresses

* useBaseEnsName hook

* fake hasUsedADiscount

* return error

* return error

* return error

* add back hasRegisteredWithDiscount from backend

* restrict name to 20 chars

* UsernameProfileForm, TextArea, Fieldset, Label, Hint and more

* UsernameProfileForm: use useEnsText and rename bio to description

* utilize proofs apis for checking validity of discounts

* add (discounted)pricing hooks

* useWriteMultipleBaseEnsTextRecords: hooks to multicall

* update register name callback to include non-discounted registrations

* render eth price correctly

* minor cleanup

* fiddling with register call & viem

* clean up discount/non price passthrough

* Move hooks into /src/hooks, clean up useFocusWithin

* fix import path

* Add USD price display

* Fix multiple imports

* Better placeholder

* cleanup

* .json->.ts abi

* fix import

* Update abis to consistent format

* clean + add validateEnsDomainName

* show error message

* reset values when user skip

* format search to avoid space

* button loading state & emoji lenght fix

* add support for discounted registration

* move to profile after registration

* update address type

* add keywords

* check for previously registered addresses on cb.id endpoint

* add states and state switcher

* determine if the name registration is free

* small refactor of RegistrationProvider

* move selectedName to provider

* move hash to provider

* fix broken imports

* rm console.log

* clean up and design fixes for success stage

* connect discounts to explainer modal state

* rm console.log

* Profile page light

* fix pill animation

* update default expire

* redirect to user profile after registration

* fix expiration time

* fix ellipsis

* fix colors

* rename registration-specific profile form

* move brand logic to component

* move components from file to folder

* remove button in the username search input

* fix redirect if no field was edited, rename variables

* update card links and order

* fix some styles

* addAddr and fix the resolvers

* test full flow, reload data

* add correct styling to discounted price

* User can edit profile

* add social links on Profile page

* css cleanup

* fix styles from merge

* fix tooltip opacity

* re-arrange layout to avoid overflow

* wip: fetch coinbase verifications badges

* add usernames early access endpoint

* add name is free pricing subtext

* Fix text on kv errors

* layout fixes and animation

* Add EAS badges

* fix key rendering issue

* Don't display verifications if we have none

* return error on hasPreviouslyClaimed proofs

* rename area of expertise to skill

* add analytics

* use a provider for sanity

* context chaining

* update analytics

* move discount logic to registration context

* add analytics to user profile page

* allow for 2 discounts to create a signature on sybil resistance

* set chain based on env

* switch chain

* fix frogmonkee

* add error states and dropdown components

* fix spacing

* design and usability improvements

* fix navigation and registration profile form

* rm dev controls

* default to env chain

* unify logic for chain check

* fix getAttestations chain logic

* add real name suggestions with cb-gpt

* use cb1 discounts first, if available

* address some TODOs and fix copy-to-clipboard UX in dropdown

* fix domain url, enable metadata and svg card support

* get chain client correctly

* add twemoji support

* Fix css-loader build error

* add endpoints for contract-uri

* add redirect when json is missing

* ECO-75: Fix input focused state with blue background

* ECO-81: Discount modal: external link open in a new tab

* switch key to static value on ens pills

* ECO-93: add <ImageWithLoading> component for nice image load

* ECO-80: add nice animation to the Modal component

* ECO-73: align blue dot

* ECO-72: use Basenames for the pages titles

* ECO-84: transition between registration profile form steps

* ECO-76: Fix jumping layout when changing years

* automatic redirect when missing domain

* fix focus error causing blue reset

* upgrade tanstack

* Add Guild badges

* minimal yarn.lock changes

* Coerce schema type

* Feat/local paymaster (#645)

* paymaster working with url

* Wallet type verification complete

* Packages updated

* configure smart wallet

* Cleanup

* Update yarn.lock

* vercel error fixed

* Build fixed

* Resolved Comments

* Resolved chains

---------

Co-authored-by: Jordan Frankfurt <[email protected]>

* remove nav menu item for EA

* fix avatar overflow on pills

* tentative onchainkit implementation

* fix package

* fix padding and ECO-100

* ECO-60: fix validation

* ECO-12: remove perk value

* ECO-12-2: rename

* ECO-16: change tooltip copy

* update to latest onchainkit

* Fix non member found from Base Guild

* fix lock file

* Stub talentprotocol, fix verified country badge

* fix path

* avatar support with Vercel Blob

* lock

* Add TalentProtocol API endpoint

* Remove CSP for talentprotocol

* add radix tooltip pkg w/ refactor and add ai tooltip text

* use universal resolver address, check the avatar upload path

* reset address resolver for now

* error state & 404 page

* Display talent protocol score in badge

* add new discounts to discount modal

* add missing images and EA discount

* remove error stringifying from transactionError component

* ECO-85: skill badge design fix

* fix avatar resolution

* log avatar errors

* add EA contracts and validators

* update contract

* rename key

* debug early access checks

* add message if user is not eligible for early access

* don't discounts modal during early access

* connect wallet fixes

* dual chain support

* Unearned badges

* improve testnet/mainnet banner messaging

* proper chain resolution

* Move badge images

* Fix redirect after customizing profile

* better handling of EA roadblock

* fix cdp get vulnerability

* encode talentprotol URI

* fix cdp get vulnerability

* revert encodeUriComponent

* Fix a bunch of a11y errors

* alt image

* fix label

* Fix yarn lint issues

* lint error on getLinkedAddresses

* refactor paymaster code to fix ts errors (#680)

* add example env vars for paymaster links

* Remove .env

* gitignore .env

---------

Co-authored-by: Léo Galley <[email protected]>
Co-authored-by: Ricardo Moguel <[email protected]>
Co-authored-by: Matthew Bunday <[email protected]>
Co-authored-by: Brian Doyle <[email protected]>
Co-authored-by: Pat <[email protected]>
Co-authored-by: wbnns <[email protected]>
Co-authored-by: Brendan from DeFi <[email protected]>
Co-authored-by: Keshav Singhal <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants