Giter VIP home page Giter VIP logo

dnaducation's Introduction

Inspiration

In the age of remote learning and online assessments, we saw the need for improved student verification during written exams. This is especially needed in situations where teachers or exam proctors are unable to monitor students through webcam video. We were inspired by the authentication possibilities available through the TypingDNA api and set out to create an application that utilizes typing biometrics during online assessments.

What it does

DNAducation is a powerful educational assessment portal that provides valuable tools for educators and students alike while verifying user identity throughout the process.

  • Educators can keep track of their classes and sections in one location with the ability to create new classes, sections, and exams. They get updates on exam submissions and can mark the exams within the application.
  • Students can view all of their classes, upcoming exams and access their grades for each submission.
  • What really makes DNAducation stand out from the crowd is the advanced user verification that takes place under the hood. Students must record a typing profile before they are granted access to any exams. This process records and sends typing biometrics to the TypingDNA api a profile is stored for each user.
  • Typing biometrics are monitored and recorded for every exam question and are referenced against the student's typing profile to return a user confidence value to educators for each submission.
  • Educators have access to these confidence levels during grading and exam review to help flag cases of academic dishonesty and student fraud during visually unmonitored exam settings.

Try it out

  • Visit the deployed version and click 'Sign Up'.
  • Fill in your information, create a random 6-digit student Id and check 'Teacher Account'.
  • First click 'Record your typing DNA profile' and follow the prompts. This records your typing patterns, so type as you would normally.
  • Back in the account view, click 'Create Section'.
  • Add your student id to the textbox or copy it from the box above. Two section icons should now appear in the navigation on the left.
  • Select the section icon with the graduation hat.
  • Click 'Create Exam' and fill in the form with random data and add at least three questions.
  • Now click the other section icon, (the 'student' section).
  • From this view, see the exam you created as the teacher, click 'Start Exam'.
  • Answer the questions with any text, but answer normally as the typingdna alogrothim is recording your typing pattern.
  • Finish the exam and navigate back to the Teacher view.
  • Click 'Submissions' on the exam and view the 'Verification Percent'.
  • This number represents the certainty the alogrithm is that the same person completed the exam as recorded their profile.

Project Photos

Landing Page

Login

Teacher Account Page

Student Account Page

Typing DNA Profile

Create Exam

Grade Exam

Student Exam View

Submissions

How we built it

We built DNAducation using React on the frontend and Node / Express on the backend. We used PostgreSQL and Knex for our database management. The majority of our react components are made from the Material-Ui library and the typing biometrics are provided via the TypingDNA api.

Challenges we ran into

-This was our first time using Knex with PostgreSQL which had a bit of a learning curve at the beginning of the project.

  • It was also our first time using Material-UI which similarly took some adapting to fully manipulate their api and customize components and styling as we needed.
  • The initial setup for our jwt and TypingDNA config gave us some issues but once those were sorted out, both worked great.
  • One of our ongoing challenges throughout the project was handling complex React state updates during asynchronous data fetching from our server and the TypeDNA api.

Accomplishments that we're proud of

  • This was our first hackathon which was a great accomplishment in itself.
  • We were able to learn Knex, Material-UI, Jwt, and TypingDNA for the first time while building the project.
  • We are proud of how much we were able to complete in 10 days and we made it to our MVP, if not slightly further.

What we learned

  • New Technologies (Material-UI, Knex, TypingDNA, Jwt)
  • A much greater understanding of how to handle complex state and handling async behaviours in react.
  • Debugging is extra tricky when you are sleep deprived.

What's next for DNAducation

We hope to continue adding features and functionality that we were unable to get to in the short timeframe of the hackathon. This includes the ability for teachers to edit exams, and for students to save partial exam attempts and return later. We weren't able to refactor much of our codebase and would like to do this to boost performance, readability and maintainability.

dnaducation's People

Contributors

dpletzke avatar skendanavian avatar

Stargazers

 avatar

Watchers

 avatar

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.