/IMY320_Jitter

This repository contains our IMY 320 Website project. The website allows students to practice chapter content for upcoming tests.

Primary LanguageJavaScript

🌐IMY 320 Website - unIQ

⚠️ We are hosting our server on a free site so our API sleeps after 30 minutes of inactivity. It will only take a bit to load the first time you open it, then it will work as intended. There isn't a student friendly way around this and the server was necessary so we apologize for any issues.

This repository contains a React-based website designed to assist students at the University of Pretoria in practicing for their IT module tests and exams. The website allows users to take practice tests on specific chapters within a module, and even combine multiple chapters to create timed exams. It tracks users' progress within a module, providing statistics such as average performance per chapter, completed chapters, and hours spent on each module.

View the site here

📋Features

  • Practice tests on individual chapters within a module.
  • Combine multiple chapters to create timed exams.
  • Track and visualize progress within a module.
  • Display statistics, including average performance per chapter, completed chapters, and hours spent on each module.

⚙️Technologies Used

  • React: A JavaScript library for building user interfaces.
  • React-Router: A library for handling routing in a React application.
  • Chart.js: A JavaScript charting library for creating interactive charts.
  • Node: A nodejs backend server that we have hosted.

💻Usage

  1. Clone the repository to your local machine.

    git clone https://github.com/your-username/your-repo.git
  2. Navigate to the project directory.

    cd your-repo
  3. Install the necessary dependencies.

    npm install
  4. Run the development server.

    npm start
  5. Open your web browser and go to http://localhost:3000 to access the website.

📝Notes

  • This project aims to test usability and does not require user authentication. There is a default user provided for demonstration purposes.
  • Chart.js is used to create visualizations for the statistics section of the website.

🫂Team Members

Profile Name Student Number Role Links
drawing Keelan Matthews u21549967 Frontend Lead image
drawing Francois Smith u21649988 Backend Lead image
drawing Ross Tordiffe u21533572 Frontend image
drawing Tayla Orsmond u21467456 Backend image
drawing Dhairiya Chhipa u21437841 Content image