Quiz Game

Introduction

Now you’ve completed two projects with Angular and hopefully you’re starting to get comfortable with it. This next project will have a slightly more complex design and will stimulate your creativity while reinforcing your knowledge of Angular. We’ll once again practice a more complex data relationship scenario. This project will keep you busy for a while, but you’ll learn a lot from it.

Requirements

  • This is an application where you will create and play quiz games.
  • You should create two projects: A .NET WebApi and an Angular app.
  • You can choose whatever database solution you want: Sqlite, SQL server or whatever you're comfortable with.
  • You can choose only use Entity Framework, no other ORM is allowed.
  • Your database should have three tables: Question, Quiz, Game.
  • A question needs to have a Quiz associated with it, hence a foreign key is needed.
  • A game needs to have a Quiz associated with it, hence a foreign key is needed.
  • If a quiz is deleted, all questions and games associated with it need to be deleted.
  • You need to use pagination, which means you can't show any lists or tables longer than the height of the screen.
  • You need to use Angular Material

Resources

The resourced from the previous Angular projects can be used for the completion of this project, plus these:

Tips

  • This project has loose design requirements, so search for quiz game designs on Google for inspiration, when you're planning your app.
  • Try to work with a couple of UI elements you haven't used before, for practice. In Angular Material's Documentation, if you click on Components, you'll see a large list of components on the left side of the screen. Grab one or two that you think can fit the project.
  • This is a very strong portfolio project, so make sure you pay attention to details, don't leave any stone unturned and ask for feedback in our community.
  • Take your project a step further by creating interesting features such as: A timer for your games, which the users can use. Or reports such as: games played per week, favourite games, etc. Let your creativity loose!

Introduction

Now you’ve completed two projects with Angular and hopefully you’re starting to get comfortable with it. This next project will have a slightly more complex design and will stimulate your creativity while reinforcing your knowledge of Angular. We’ll once again practice a more complex data relationship scenario. This project will keep you busy for a while, but you’ll learn a lot from it.

Requirements

  • This is an application where you will create and play quiz games.
  • You should create two projects: A .NET WebApi and an Angular app.
  • You can choose whatever database solution you want: Sqlite, SQL server or whatever you're comfortable with.
  • You can choose only use Entity Framework, no other ORM is allowed.
  • Your database should have three tables: Question, Quiz, Game.
  • A question needs to have a Quiz associated with it, hence a foreign key is needed.
  • A game needs to have a Quiz associated with it, hence a foreign key is needed.
  • If a quiz is deleted, all questions and games associated with it need to be deleted.
  • You need to use pagination, which means you can't show any lists or tables longer than the height of the screen.
  • You need to use Angular Material

Resources

The resourced from the previous Angular projects can be used for the completion of this project, plus these:

Tips

  • This project has loose design requirements, so search for quiz game designs on Google for inspiration, when you're planning your app.
  • Try to work with a couple of UI elements you haven't used before, for practice. In Angular Material's Documentation, if you click on Components, you'll see a large list of components on the left side of the screen. Grab one or two that you think can fit the project.
  • This is a very strong portfolio project, so make sure you pay attention to details, don't leave any stone unturned and ask for feedback in our community.
  • Take your project a step further by creating interesting features such as: A timer for your games, which the users can use. Or reports such as: games played per week, favourite games, etc. Let your creativity loose!
An error has occurred. This application may no longer respond until reloaded. Reload 🗙