Skip to content

ConAcademy/bookban-unban

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BookBan-Unban

A comprehensive system for tracking, managing, and ensuring compliance with state-level library book protection laws and book challenge processes across the United States.

Overview

As book challenges and banning attempts have increased across the nation, many states have responded by enacting "Right to Read" or "Freedom to Read" legislation. This project provides:

  • Policy Templates: Model policies compliant with state-specific legislation
  • Challenge Tracking: Systems to track and manage book challenges through proper review processes
  • Compliance Monitoring: Tools to ensure districts meet their legal obligations
  • Reporting: Generate reports on challenge trends, outcomes, and compliance status

Project Structure

bookban-unban/
├── README.md                 # This file
├── agents.md                 # Documentation for AI agents working on this project
├── src/
│   ├── core/                 # Core shared functionality
│   │   ├── models/           # Base data models
│   │   ├── services/         # Shared services
│   │   └── utils/            # Utility functions
│   └── states/               # State-specific implementations
│       └── connecticut/      # Connecticut implementation
├── policies/                 # Policy templates
│   └── connecticut/          # CT-specific policy templates
├── data/                     # Data schemas and sample data
│   └── connecticut/          # CT-specific data
└── tests/                    # Test suites
    └── connecticut/          # CT-specific tests

Implemented States

Connecticut (SB 1271 - 2025)

Connecticut's "Don't Ban Library Books Act" (Senate Bill 1271) requires all school and public libraries to establish standardized policies for:

  1. Collection Development and Maintenance Policy

    • Guidelines for acquiring and maintaining library materials
    • Must follow state non-discrimination statutes
    • Cannot ban books based on author's origin, background, or views
  2. Library Program and Display Policy

    • Standards for library programs and material displays
    • Ensures inclusive representation
  3. Library Material Review and Reconsideration Policy

    • Formal process for handling book challenges
    • Uniform request for review/reconsideration form
    • Committee review requirements

Key Protections:

  • Librarian immunity from criminal and civil liability
  • Prohibition on banning books due to author characteristics
  • Required involvement of accredited librarians in review processes

Getting Started

Prerequisites

  • Node.js 18+ or Python 3.10+
  • PostgreSQL 14+ (for production) or SQLite (for development)

Installation

# Clone the repository
git clone https://github.com/ConAcademy/bookban-unban.git
cd bookban-unban

# Install dependencies
npm install
# or
pip install -r requirements.txt

# Set up the database
npm run db:setup
# or
python scripts/setup_db.py

# Run in development mode
npm run dev
# or
python -m bookban_unban.main

Configuration

Create a .env file based on .env.example:

DATABASE_URL=postgresql://user:password@localhost:5432/bookban
STATE=connecticut
LOG_LEVEL=info

Usage

Tracking a Book Challenge

import { ChallengeService } from './src/states/connecticut/services';

const challenge = await ChallengeService.createChallenge({
  bookTitle: "Example Book",
  author: "Author Name",
  challenger: {
    name: "Parent Name",
    relationship: "parent",
    contactEmail: "[email protected]"
  },
  district: "Example School District",
  reason: "Content concern",
  dateSubmitted: new Date()
});

Generating Compliance Reports

import { ComplianceService } from './src/states/connecticut/services';

const report = await ComplianceService.generateDistrictReport({
  district: "Example School District",
  year: 2025
});

API Reference

See API Documentation for full API reference.

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

Legal References

Connecticut

License

MIT License - see LICENSE for details.

Acknowledgments

  • Connecticut Library Consortium for advocacy efforts
  • American Library Association Office for Intellectual Freedom
  • All librarians defending the freedom to read

About

Tools for banning and unbanning media

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors