Giter Club home page Giter Club logo

cse-416-sporadic-api's People

Contributors

jacksonludwig avatar lkaicher avatar matthew-montalbano avatar sayhimatt avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

cse-416-sporadic-api's Issues

restrict retrieveUser data

for retrieveUser, check if the user matches token and only send back full data if it does, otherwise don't send sensitive info

update user route

we will need update user to set profile picture, add subs, update last login, etc

Single route for subscribe/unsubscribe

subscribe and unsubscribe are almost identical. One route can be used for both, or at least the function could be broken down into more modular pieces.

Globally ban user

  • disable account in cognito
  • set isgloballybanned to true
  • add globallyBanned to Sporadic.Permissions

Enforce case insensitivity among platforms

In order to ensure unique platform names we must enforce case insensitivity to ensure duplicates are not generated. Furthermore, when any GET requests for a platform are retrieved they should also be converted into a case insensitive standard to obtain a valid platform.

start quiz route

when a user starts a quiz, we need to save the time they started. The quizzesTaken field could be updated to include timestamps. In the submitQuiz route, we will check the timestamp.

Feed quiz card generator

Create an API request to pull a collection of quiz cards.

Here is the general flow of pulling:

  1. Get user's list of subscriptions in a list and randomize the order
  2. Iterate through the list and grab the newest quiz in the current subscription platform
  3. Add to the returning collection
  4. Move to the next until reaching 10 cards or if we've run out of possible quizzes to add

images

at some point we need to figure out how to deal with profile pics/banners and hook up with S3

validate user id in pathparameters

since we're using _id from mongo, mongo will throw an error if an invalid object id is provided to the confirm email route.

the given ID should be validated before sending it to mongo so we don't throw a 500 error, and instead throw a 400.

Dislike/Upvote Routes

Create the routes for handling an upvote/downvote. Correspondingly make ts file that will apply the corresponding change to the quiz within the database.

Once it is complete add Postman examples for us to test with.

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.