Giter VIP home page Giter VIP logo

amc-web-ui's People

Contributors

ameobea avatar bill-sullivan avatar jacksonroush avatar vanderlavanski avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

amc-web-ui's Issues

Basic input validation

  • Make sure that there is at least one selected correct answer
  • Make sure that all fields have values
  • If there are any validation issues, display in the UI what the problem is and don't allow the user to submit

Generate an answer sheet

Whenever a new quiz is generated, an answer sheet with the answers already filled in is also generated. I think this would be helpful in the future and an effortless feature for the instructors that they could appreciate.

Style and "pretty up" the frontend

General styling and formatting needs to be done for the application. The goal is to make is a presentable as possible, so anything we can do is a plus.

Functionality of Checkbox

As of now, the checkboxes are non-functional. Should probably be attached to some sort of binary state in the answers array (perhaps a nested array or an array of objects?).

Map results from AMC scripts to HTTP status codes for the API

When we're calling the AMC scripts via the Python webserver, we should verify if they succeeded or not. If they did not succeed or encountered an error during execution, we should reflect that in the response from the API by returning an error code (HTTP error 500, 400, etc.) and include information about the error.

For situations where information is returned by the AMC programs, that information should be serialized (JSON?) and returned to the user with a 200 response code.

Add function for creating blank project in temporary

Generation of Multiple Question Blocks

Professor Thomas wishes to generate blocks of questions (as is currently happening). However, he would like to create multiple blocks, whose order is randomized.

Look into restoring question shuffling

AMC is not recognizing the setdefaultgroupmode LaTeX command, which some searching on Google suggests is due to a version mismatch. I'm not sure if this is fixed inside of Docker or not, if this is required for question/answer shuffling, or other things; additional research will be required to figure that out.

Create scan upload pipeline

  • Create GUI in the frontend that includes instructions for how to upload the files and uploads the files to a route on the backend
    • Should do some basic verification of the uploaded files to make sure that they're the right file type, etc.
    • Should include the ability to either tag the test with a student ID (if that's not handled at some other point down the road)
  • Create backend route that accepts the files and copies them to a temporary directory
  • Create Python function that calls the AMC script to analyze the uploaded scans

Allow custom header text

Add spot in the UI to add (optional) custom text (or perhaps even TeX directly) to be added into the header of the generated test and inject it into the generated TeX file. This will have to be stored in the database as well to make sure that layouts match exactly.

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.