A subscription manager that allows users to track their subscriptions in one click. It has a login page so that very individual user's subscriptions can tracked by month. Actions that can be done include: adding a new subscription, calculating the total cost of subscriptions per month and year, tracking when the subscription has been used, etc.
We will be adding the list of subscriptions that the user is subscribed to, this was our initial plan for how it will work (it will now be a V2 version of this issue because adding an expandable list for a grid is more complicated in angular materials than I thought)
It will now be a list of subscriptions shown as such (this is an example, not the actual data):
To implement the list, we need to do the following:
We will need to first get the data from the back end (this should already be implemented as I write this)
We will need to implement functionality for some sort of sorter so we can sort through any list size, preferably the angular materials paginator.
We will need to put all of the data into a table, preferably the angular materials table.
For V2, we will need to use a grid list to display the data and images and we will have to find a sorter that is able to show us any list size that we want.
The current subscription report is able to get all of its data through its report typescript file here:
The data is collected correctly, however, it seems to call the function in the api-service-ts file at random i values instead of the ordered values indicated by the for loop, as such, I cannot reliably put the data anywhere accurately without fixing this and I am not sure how.
Here is how this issue is displayed in the output (queries are not attached to the right description):
Subscription Report is Done (at least visually) now we need to put data in it
Here it what it looks like:
Usability
Users will be able to click on each entry on the accordion and it will give them output queries on what they ask for. The first one here as an example gives the subscription services sorted from the longest amount of time held to shortest.
We need query examples that we can implement for this pretty much.
Further comments
As a personal note, I also need to move this into its own component
Send email with link, give user time to click on link (maybe 1-2 hours), delete user if not verified in 1-2 hours, don't allow user to login if not verified