Skip to content

About

Resources

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

The Project

This project is a simple web application that allows users to practice for their exams by taking practice exams on Force Exam. Force Exam allows you to take your study to the next level by providing you with the tools needed to create the ultimate practice exams.

For this Force Exam uses JSON as the format of the exams and provides a simple but powerful editor to create the exams.

Currently, Force Exam is in the early stages of development and is not ready for production use.

JSON Exam Format

Force Exam can import a portable JSON exam and run it locally in the browser.

{
  "title": "Force Exam sample",
  "description": "A short practice set.",
  "questions": [
    {
      "question": "Which image shows where answer choices live in the JSON schema?",
      "images": [
        "https://example.com/question-image-1.png",
        {
          "url": "https://example.com/question-image-2.png",
          "alt": "A second reference image",
          "description": "This description renders under the image."
        }
      ],
      "options": [
        "title",
        {
          "text": "options",
          "images": [
            "https://example.com/answer-image-1.png",
            {
              "url": "https://example.com/answer-image-2.png",
              "caption": "Captions also render under answer images."
            }
          ],
          "imageAlt": "Code showing an options array"
        },
        "description",
        "questions"
      ],
      "answer": "options",
      "explanation": "Each question uses an options array for selectable answers."
    }
  ]
}

Each question supports question or prompt, optional images, imageUrls, imageUrl, or image, an options array with at least two choices, and answer or correctAnswer.

Options can be plain strings or objects. Object options support text, optional images, imageUrls, imageUrl, or image, and optional imageAlt, imageDescription, or imageCaption. Use images when you need multiple pictures. Image entries can be URL strings or objects with url, optional alt, and optional description or caption. When a question or option has more than one image, Force Exam shows them in a carousel.

The answer can be a zero-based option index, an answer letter like A or B, or the exact option text. Answer choices render with letter labels, so image-only options can use the letter or zero-based index.

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying pages/index.tsx. The page auto-updates as you edit the file.

API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.ts.

The pages/api directory is mapped to /api/*. Files in this directory are treated as API routes instead of React pages.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.

About

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages