Code Monkey home page Code Monkey logo

gabo0802 / uf-oneclick Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 9.4 MB

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.

Go 32.92% TypeScript 44.19% HTML 16.04% CSS 6.17% Makefile 0.05% SCSS 0.61%
angular go html-css-typescript mysql

uf-oneclick's People

Contributors

enojom avatar gabo0802 avatar mslinger avatar valekseev03 avatar

Watchers

 avatar

Forkers

mtdens

uf-oneclick's Issues

Payment Reminders

Future Addition:

Can send email to users when need to pay up subscription (day of, 1 day before, week before)

Add Feature: Graph

Graph

If possible, we would like to implement a graph that displays how much a user has spent each month based on the subscriptions that they own.

Tasks

  • Find a graphing library to implement this
  • Given the data that we have in the database, determine the parameters for the x and y axes for the graph
  • Possible ways for us to customize the graph?

Unit Tests

Make sure to write unit tests for any new functionality that is implemented into the code.

This issue will be constantly updated to include all of the unit tests we have in the code (and which ones fail/succeed)

Fix Footer

The footer is not displaying properly in most screen sizes, this should be fixed:


image

Add Feature: Subscriptions List (V1)

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)


image


It will now be a list of subscriptions shown as such (this is an example, not the actual data):


image

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.

Angular Materials Documentation for these:

Paginator: https://material.angular.io/components/paginator/overview
Table: https://material.angular.io/components/table/overview
Grid List: https://material.angular.io/components/grid-list/api

Add Feature: Manage Subscriptions feature

The "add subscription" feature will be added in some form where the "manage" section is in the mock-up, so will the "delete subscription"


image


Presumably, it will have 2 buttons, add and remove:

  • Add will prompt a dialog box asking for the data that we've already implemented in the user dashboard so far.
  • Remove will prompt a dialog box that has a list of all of the subscriptions the user has and asks them for which ones they will delete.

Here's some angular materials links that will help:

For dialog boxes: https://material.angular.io/components/dialog/overview
For Lists (input select): https://material.angular.io/components/select/overview

Bug to Fix: Subscription Report

The current subscription report is able to get all of its data through its report typescript file here:


image


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):


image

CORS issue

CORS error when communicating with back end

How long should cookies last?

Current Stats:
"currentUserID": 1 hr
"signupOutput": 1 minute
"outputSubscriptions": 5 minutes (for every subscription)

Come Up with Queries for Subscriptions Report (comment them here)

Subscription Report is Done (at least visually) now we need to put data in it

Here it what it looks like:


image

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

Email Authentication

Future idea:

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.