Skip to content

Latest commit

 

History

History
75 lines (52 loc) · 3.74 KB

brief.md

File metadata and controls

75 lines (52 loc) · 3.74 KB

Project Overview

Resources

Typescript

Official TS handbook

Express and RESTFUL APIs

What is a web server? General background info on how servers work

Setting up Typescript and Express A guide on setting up the tools for this weeks project. Good explanation and generating and modifying a TS config file.

Node fs and Express Good node tutorial demonstrating using json object as a mock database.

3 Ways of Parsing Data in Express Paywalled, sadly.

Testing your server Documentation on using Postman to make a collection of tests for api endpoints.

DevOps

Deploy a server with a EC2 instance Gatsby is a React-based open source framework for creating websites. They provide an outline continuous deployment.

Project

FAC Coursebook Preview

Learners will develop an AI-driven web application that dynamically generates quizzes for users in a specified subject area. These quizzes will have interfaces both for quiz creation and quiz taking.

User Stories

As a learner, I want to:

  • Select a subject area for my quiz.
  • Begin a quiz session with randomly generated questions.
  • View a summary of my quiz results, including areas of strength and weakness.
  • Add, edit, and delete quiz questions and answers.
  • Generate reports on quiz performance

Acceptance Criteria

The application should:

  • Dynamically generate quizzes with adaptive difficulty.
  • Allow users to see a summary of their results after completing a quiz
  • Allow users to see a summary of their results
  • Provide an engaging, intuitive user interface.
  • Be deployed online, accessible from various devices.
  • Follow React principles and best practices
  • Have automated tests for backend functionality
  • Be deployed to a cloud platform

Learnings

KSBs

  • Develop a server using Express and TypeScript for backend applications (K9, S1, S11, S12)
  • Identify the server’s role within a full stack application (K1, K2, K3)
  • Understand the benefits of using TypeScript over JavaScript, such as improved code quality, enhanced developer productivity, and better tooling support (K7, S1)
  • Learn the basic syntax and features of TypeScript (S1, S16)
  • Gain experience in using developer tooling, including IDEs, linters, and formatters, to enhance productivity (B3, B9)
  • Grasp the concept and purpose of RESTful APIs (K11, S12)
  • Construct and implement RESTful APIs effectively (S1, S11, S12, S16)
  • Determine appropriate scenarios for applying RESTful APIs (K7, S9, B2)
  • Design endpoint structures for data creation, modification, and deletion (K11, S8, S12)
  • Utilize node:fs for filesystem operations (S1, S16)
  • Gain experience in documenting the application’s architecture, API endpoints, and user guides for future reference and maintenance (S15, B4, B7, B8)
  • Utilize Postman to test RESTful APIs independently of frontend components, ensuring proper functionality, error handling, and adherence to API specifications (S5, S6, S7)