What's BYP? BYP stands for "Backyard Pizza Project" - but more importantly, it's a "food ordering" application for building and ordering Pizzas made in your backyard.
Is it contrived? Yes.
What's it actually for? I'm so glad you asked.
While not everyone is about to open an exclusive, artisinal, pizza studio in their back yard, this demo application attempts to be three things.
- A reference app for the getting started with Hasura BYP series
- A practical example of working with authorization, events, and subscriptions with hasura
- A sample repo for "take-what-you-need" code
The sample application is the code-counterpart of a 20 part video series which you can find here.
- Intro to creating a full-stack food ordering app with Hasura and NextJs
- Create a local Hasura project w/ tracking metadata & deploy to Hasura Cloud with GitHub Integration
- Add frontend framework NextJS and deploy to Vercel with Github and the Hasura-Vercel integration
- Fetching data from Hasura into Nextjs, local and cloud
- Using GraphQL client URQL to fetch data from Hasura
- Using GraphQL Code-Generator to generate types from our Hasura API
- Adding TailwindCSS to our Hasura-NextJS app
- Adding “do-not-edit” labels to Hasura Cloud
- Using Hasura for server state and Zustand for local state in NextJS (add refresh token docs link)
- Creating authentication action handlers for Hasura with NextJS
- Adding NextJS action handlers to the Hasura API
- Managing permissions in Hasura for good data disclosure policy
- Calling our Hasura action from the front-end
- Deploying to Hasura Cloud with the Hasura CLI and an introduction to Hasura metadata squash
- Creating Pizzas and working with generated URQL React hooks from the Hasura API
- Adding enums to Hasura
- Working with GraphQL Fragments in Hasura
- Adding realtime GraphQL subscriptions from the Hasura API
- Advanced permissions with role based tables
- Closing up the backyard pizza project beginner’s guide
Things are abound to change over time, but if you need help, reach out on Discord if you have any questions.