Skip to main content

Bluebook Logo

Blue Book

demo-gif

Blue Book is a web application that generates AI-powered multiple-choice questions for any exam or certification. It ships with a built-in preset for CompTIA Security+, but you can add any exam you need via the Exam Constructor. Powered by Google's Gemini API, it provides instant feedback, detailed explanations, and personalized study recommendations.

Project's Homepage

Features

Question Generation & Review

  • Generate multiple-choice questions for any exam using Gemini AI.
  • Focus generation on specific topics or objectives with additional requests.
  • Submit answers and receive immediate feedback with detailed explanations per choice.
  • Get personalized study recommendations based on your answers.

Exam Management

  • Ships with a built-in CompTIA Security+ preset.
  • Add custom exams for any certification or subject using the Exam Constructor.
  • Seamlessly switch between exams — each exam maintains its own isolated state.

Custom Prompts

  • Build and manage custom prompt templates via the Prompt Builder.
  • Use anchor-based templates to control exactly how questions are generated.
  • Select from your saved prompts when generating questions.

File Attachments

  • Upload reference files (study guides, notes, etc.) to a local cache.
  • Sync files to Gemini remote storage for AI-powered context.
  • Attach specific files to exams — attached files are included as context during question generation.

Persistence & State

  • SQLite database stores all saved questions, topics, exams and prompts.
  • Server-side sessions ensure state is preserved without cookie size limits.
  • Save individual questions for later revision.
  • Save and reuse custom topics per exam.
  • State is automatically saved and restored when switching between exams.

Tech Stack

Layer Technology
Backend Python 3.10+, Flask 3, Click CLI
AI Google Gemini API (google-genai)
Database SQLite via SQLModel
Validation Pydantic v2
Templating Jinja2
Sessions Flask-Session (server-side filesystem)
Sanitization Bleach
Container Multi-stage Docker build (Python 3.13 Alpine)

Installation

Docker (recommended)

Run with a pre-built image:

docker run -d -p 5000:5000 --platform linux/amd64 ilyasmut/student-bluebook

Or build from source with Docker Compose:

git clone https://github.com/ilya-smut/blue-book
cd blue-book/
docker compose up -d

pip / pipx

pip install student-bluebook
pipx install student-bluebook

Usage

Start the application:

bluebook start

Start in debug mode (verbose logging):

bluebook start --debug

The app will be available at http://localhost:5000. On first launch, you'll be prompted to enter your Gemini API key.

For a full walkthrough of the interface, see the wiki.

Disclaimer

Blue Book is an independent study tool and is not affiliated with, endorsed by, or sponsored by CompTIA or any other certification body. All certification names are trademarks of their respective owners. You can purchase official CompTIA study materials at their official website.

All questions are generated by third-party AI models (Google Gemini). The author of this application has no control over how these models were trained or what content they produce. Generated questions are intended as study aids and should not be treated as official exam material.

Please don't sue me.

Contributing

If you'd like to contribute to Blue Book, feel free to submit a pull request or open an issue.

License

This project is licensed under the GPLv3.

Contact

For any questions or feedback, feel free to reach out.

Metadata

Release files for student-bluebook 2.0.1

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

Source distribution (sdist)

Source distribution for student-bluebook 2.0.1
File Size Uploaded
student_bluebook-2.0.1.tar.gz 57.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for student-bluebook 2.0.1
File Interpreter ABI Platform
student_bluebook-2.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 127.8 kB

Release files / student_bluebook-2.0.1.tar.gz

Download URL student_bluebook-2.0.1.tar.gz
Size 57.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8b0f2c3bcc010aaacdd027eacb137104857634f29d41d8c621c19ecc312624bf
BLAKE2b-256 checksum
How to use checksums
a11b76b68f31ea285515d0b4f29556e676770b0cfeee856c1316dc2e25e2c880
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.2 CPython/3.10.19 Linux/6.11.0-1018-azure

Release files / student_bluebook-2.0.1-py3-none-any.whl

Download URL student_bluebook-2.0.1-py3-none-any.whl
Size 70.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4e7ca439727e6ced0eb43e9897abb75f165408e4b93aca13b91a0abf634c3d21
BLAKE2b-256 checksum
How to use checksums
1d19c268529c801b4a494bf0320d0704567df3ca60ea12e627fc6dfd8a005e33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.2 CPython/3.10.19 Linux/6.11.0-1018-azure

Release history Release notifications | RSS feed

This release

2.0.1 This release

2 release files

2.0.0

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.0.3

2 release files

1.0.2

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.2

2 release files

0.3.0

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

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