Introducing HasuraChamp: Grow your knowledge of Hasura with fun quizzes

Easily build your knowledge of Hasura with HasuraCamp

ยท

3 min read

Introducing HasuraChamp: Grow your knowledge of Hasura with fun quizzes

Introduction ๐Ÿคฉ

Hey folks ๐Ÿ‘‹๐Ÿป,

I have been for quite some time trying to make a valid submission to one of Hashnode's hackathons but always failed due to my day job as a software engineer. Finally, I have a finished product to show to the Hashnode community.

Through this hackathon, I came across a powerful Graphql engine which does a solid job in making it dead simple to use Graphql

Important links [Check it out]

Tech Stack โš™๏ธ

This project includes the following technologies

  • NextJS
  • Tailwind CSS
  • Hasura + GraphQL
  • NextAuth.js for authentication

Motivation

When I learned about Hasura and started reading about it I found that it has the most easy-to-read documentation but was also filled with too much information. I believe that Hasura as a platform will grow in the coming, and hence I decided to make a platform that helps you test your knowledge of Hasura.

Application Preview

Start a quiz

Screenshot from 2022-03-31 10-52-28.png

Answer the questions

Screenshot from 2022-03-31 10-52-06.png

Submit and see results

Screenshot from 2022-03-31 10-50-47.png

Check out your profile for history and your ranking

Screenshot from 2022-03-31 10-55-31.png

Linting & Code Quality ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป

  • ESLint
  • Typescript
  • Prettier

Architechture

Here is a brief overview of the architecture. I will do a detailed post on each Hasura feature I used and how.

I decided to keep the UI pleasant to use and minimal so that people are able to look into the information rather than getting distracted by UI and animations.

  • Custom rest API in Hasura for user registration and login
  • Hasura Actions for calculating scores
  • RBAC system of Hasura for security and authorization
  • JWT based authorization which is secure and stateless

How Hasura Helped

  • Having no knowledge of Graphql, Hasura helped and guided me towards building my solution
  • Helped me build an entire application without a backend
  • hasura rest API help me not to use Graphql in frontend as well while leveraging all the benefits of Graphql

My reservations from Hasura

  • UI could have been nicer. The Hasura platform UI is quite simple but has UX issues.

Conclusion

I would love to carry forward this project as I believe this is the bare minimum and there is a lot of scope for improvement like -

  • gamification of quizzes with hints
  • sharing scores with friends
  • confetti animation on quiz submission ...and many more.

It would be worth it if the team at Hasura wish to integrate this platform as a fun learning exercise for users along with the documentation and guided tutorials

Project Link

Did you find this article valuable?

Support Sourabh Mandal by becoming a sponsor. Any amount is appreciated!