Skip to main content

The Fair Platform License: MIT PyPI - Version PyPI - Downloads

showcase

FAIR (or The Fair Platform) is an open-source platform that makes it easy to experiment with automatic grading systems using AI. It provides a flexible and extensible environment for building, testing, and comparing grading approaches, from interpreters and rubrics to agent-based systems and research datasets.

The goal is to support researchers, educators, and students who want to explore how AI can improve assessment, reduce manual grading workload, and enable reproducible experiments in educational technology.

Features

  • Flexible Architecture – Define courses, assignments, and grading modules with full customization.
  • Interpreters – Parse and standardize student submissions (PDFs, images, code, etc.) into structured artifacts.
  • Graders – Apply configurable rubrics, AI models, or hybrid approaches to evaluate submissions.
  • Artifacts – A universal data type for storing submissions, results, and metadata.
  • Experimentation First – Swap modules, run A/B tests, and measure performance across approaches.
  • Research-Friendly – Designed for reproducibility, with plans for standardized datasets and benchmarks.
  • Extensible – Build plugins for compilers, proof validators, RAG systems, or agentic graders.

Getting Started

pip install fair-platform
fair serve

For detailed installation instructions, troubleshooting, and more, visit the documentation (available in English and Spanish).

Development Requirements

  • Python 3.12+
  • uv
  • Bun (for frontend development)

Once you have uv and Bun instlaled, you can build the platform and start using it:

uv run
./build.sh
fair serve

Roadmap

Some planned directions for FAIR include:

  • Standardized datasets for AI grading research
  • Dataset generation tools (e.g., synthetic student responses with realistic errors)
  • Plugins for popular LMS
  • More visualization and reporting tools

Contributing

FAIR is open for contributions! Whether you want to submit issues, propose new grading modules, or share experimental datasets, we'd love your help.

📖 New contributors: Please read our CONTRIBUTING.md for detailed guidelines on how to get started, our workflow, and what to expect.

Quick start:

  • Submit issues and feature requests
  • Propose or implement new grading modules
  • Share experimental datasets and benchmarks

If you're interested in collaborating, open an issue or start a discussion.

License

This project is licensed under the MIT License. See LICENSE for the full text and details.

What this means:

You CAN:

  • Use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software.
  • Use the software in commercial, educational, or research contexts.
  • License your derivative works under any terms you choose.

You MUST:

  • Include the copyright notice and permission notice in all copies or substantial portions of the software.

Disclaimer:

  • The software is provided "as is", without warranty of any kind.

Questions about licensing? Please open an issue or contact allan.zapata@up.ac.pa.

Metadata

Release files for fair-platform 0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fair-platform 0.8
File Size Uploaded
fair_platform-0.8.tar.gz 2.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for fair-platform 0.8
File Interpreter ABI Platform
fair_platform-0.8-py3-none-any.whl Python 3 none any Details

Total release size: 4.2 MB

Release files / fair_platform-0.8.tar.gz

Download URL fair_platform-0.8.tar.gz
Size 2.1 MB
Tags Source
SHA-256 checksum
How to use checksums
0fe1b6ddafa52c03e8466b2673fbf31f104851d9072ad58f326acb1b10b2f119
BLAKE2b-256 checksum
How to use checksums
aa8dff4e17c81a661fb58926bdf947329bdcbe3e1b9cbf943c4a19e4343583aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / fair_platform-0.8-py3-none-any.whl

Download URL fair_platform-0.8-py3-none-any.whl
Size 2.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
d93d28bc2601f2636fd534d0bdcd7efc9efdb193b96c27276d06894d0608076d
BLAKE2b-256 checksum
How to use checksums
37d6fdf8fefdcf10e41a78f0147957384d0362c36b13b8a240b8c7dc498b8595
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

6.0.3

2 release files

6.0.2

2 release files

This release

0.8 This release

2 release files

0.7

2 release files

0.6.4

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.1.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page