Skip to main content

Fair Platform - The complete platform with backend, frontend, and CLI

Project description

The Fair Platform

License: GPL v3 PyPI - Version PyPI - Downloads

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! You can:

  • 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 GNU General Public License v3.0 (GPL-3.0). See LICENSE for the full text and details.

What this means:

You CAN:

  • Use, modify, and distribute this software for any purpose, including commercial use.
  • Use insights and knowledge gained from the platform for any purpose.
  • Make modifications and distribute copies, provided that when you distribute the software (or derivative works) you comply with GPL-3.0 requirements.
  • Nonprofit organizations can use it regardless of funding source.

You MUST / OBEY GPL-3.0 REQUIREMENTS WHEN DISTRIBUTING:

  • When distributing the software or derivative works, make the source code available under the terms of GPL-3.0.
  • Preserve copyright and license notices in redistributed source and binaries.
  • License any derivative works under GPL-3.0 when you distribute them.

For Researchers:

This platform is intended for academic and research use and may also be used in commercial research or products. Note that if you distribute derived software that includes code from this project, you must do so under GPL-3.0 and provide corresponding source code.

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fair_platform-0.6.1.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fair_platform-0.6.1-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file fair_platform-0.6.1.tar.gz.

File metadata

  • Download URL: fair_platform-0.6.1.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fair_platform-0.6.1.tar.gz
Algorithm Hash digest
SHA256 db2215388932676b255fdf7325f8b7d65ab61423d1e752eb382267fc201c5a60
MD5 3299095bc83880b5df4ad01b0ead85c3
BLAKE2b-256 59ef22d09050b0a2c54665baa931673934ed1889528b841c624243063287971e

See more details on using hashes here.

File details

Details for the file fair_platform-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: fair_platform-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fair_platform-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 16c91056baed2e7d7cf171226a3dc02bee090857d9077962a62028472fa4229d
MD5 e3238a0695c4319eafa5fd8c0c8d5462
BLAKE2b-256 2762bde4d7467d40313b3c6e5416253f98aaf18b31b58e65efb0d7135c93bae4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page