An ASP.NET MVC application made by following along with this course: https://codewithmosh.com/p/asp-net-mvc
A small, locally deployed website that allows users to rent movies from a movie catalog. Site admins are able to do CRUD (Create/Read/Update/Delete) operations to maintain the database. This can be done through the website, or directly via API calls.
Some pages have restricted access to prevent users that aren't logged in from interacting with the page.
Accounts can be made using the registration page, which is handled by ASP.NET Core's Identity library.
Forms also have some custom validation as well. Dropdowns get autopopulated from the database models.
All CRUD operations for movies can only be done by an admin.
Movies can get added, including their covers. If it's a valid movie, it gets added to the movie catalog that can be viewed via the movies page or API.
Movies can deleted by admins. If not logged in as an admin, this option is removed.
(A view of the same page, but logged in as a normal user.)
Movies can also be edited. Here I changed the genre of Pool Room from Thriller to Sci-Fi and it updates realtime. The datatables plugin was also used to format the movies into a more presentable format, along with adding pagination, ordering, and search functionality.
For administrative purposes, a list of all customers can be viewed as well with all of the same functionality used for movies.
Movies can also be rented. As long as there is at least one copy of a movie in stock, it will appear when searched for. Both the fields for the customer renting and the movie they're looking for also autopopulates by contacting the customers API. A toast pops up when the rental is complete, and the number of available copies is decremented from the database.