(REFERENCE) Add gift certificates page with purchase, check, and redeem tabs #1486
+921
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What/Why?
Adds a gift certificate page with purchase, check, and redeem tab similar to what Cornerstone has.
Uses our REST API for checking the certificate balance, which requires an additional
GIFT_CERTIFICATE_V3_API_TOKEN
env var. Suggest creating a read-only token if you go this route. Adding a gift certificate to a cart uses GraphQL.The route is at
/gift-certificates
.Here's a demo:
gift-certificates-on-catalyst-720p.mov
Under the hood it supports localization using our existing standards within Catalyst.
Backstory
I've been looking for something tangible to test v0.dev with and this fit the bill! It ended up doing a pretty good job out of the box, with my first prompt that asked for a gift certificate balance checker using the BigCommerce API.
Initial v0 prompt and result
Ended up having to switch out the components since it defaults to shadcn components, fix the Gift Certificate API request that was using an invalid route, and manually polish areas to follow our standards. Like using our GraphQL client.
Overall it's a good pairing experience, especially when thinking through app router / RSCs.
Testing
🎥 See video ^