GratisAI civic · fit registered speakers into a public hearing window · local-first FREE TIER 1 Free Run Available
speaker-slot packet · stapled evidence packet

Fit Registered Speakers Into a Public Hearing Window

A hearing window is fixed; the speaker register is not. Before the gavel, know how many registered speakers fit at the promised minutes each — and how many minutes spill over.

1 · Session code | registered speakers | minutes per speaker

FIRST-LOAD

HYPOTHESIS / PROTOTYPE — checkout unavailable. Calculation is local. A draft is saved automatically in this browser profile when storage is available; Reset to sample clears it. Optional Pro history stores only five summaries and has its own deletion control. State links encode your inputs and can remain in browser history, clipboard or recipients’ records; share only non-sensitive rows. Optional external AI formatting leaves this device. The required site analytics beacon reports page activity; shared URLs contain encoded inputs. Do not treat an encoded URL as private. The calculator has no input-collection endpoint.

Data note: The speaker-slot packet processes Session code | registered speakers | minutes per speaker locally. Starter/sample selection and Run compute in this tab; no input is sent by the calculator. A local draft may be saved; explicit state-link sharing or optional external AI formatting can disclose inputs. Use non-sensitive labels.

Perspective: Before: the speaker register and the clock were separate worries. After: each session shows exactly how many whole speakers fit and how many minutes spill.

2 · Read the speaker-slot packet

Scheduling arithmetic only, not legal or procedural advice. Confirm the hearing window, speaker rules and any accommodation duties with the clerk or responsible body before publishing a format.

Optional filing controls are a local prototype.

Checkout is unavailable. The reading above is complete; print, CSV and five local summaries are optional enhancements, not hidden answers.

Before using the speaker-slot packet

Each row is one separate sitting with its own register count and speaking time; rows never share capacity. Minutes per speaker should reflect the limit actually promised or planned, not average remarks length, because the arithmetic assumes every registered speaker uses the full slot. Whole slots only: a session fits floor(window ÷ minutes each) speakers, and any fraction of a slot is lost. Overflow is reported in minutes, not speakers, so a partial final speaker remains visible. Transition time, staff reports and breaks are not deducted unless you already reduced the window figure yourself. Quorum, public-comment rules and the legal effect of hearing a speaker are outside the tool entirely.

Boundary and sources

Scheduling arithmetic only, not legal or procedural advice. Confirm the hearing window, speaker rules and any accommodation duties with the clerk or responsible body before publishing a format.

Mechanism: competence-autonomy-loop

Optional AI formatting, never the calculation

Manual entry completes this speaker-slot packet for free without signup. If available to you, the free AI Studio interface linked in the sources may format fictional or non-sensitive notes; external access may require an account. No API key or AI call is built into this tool. Free-tier content may be used to improve products. Review each cell and transcribe it to the labeled row schema; do not paste the JSON object into the row box.

Format only these fictional or non-sensitive notes for a speaker-slot packet. Return strict JSON shaped as {"rows": [{"label": "string", "cells": ["string", "string"]}], "setting": "string"}. The columns are Session code | registered speakers | minutes per speaker; the setting is Minutes available per hearing session. Keep all supplied strings and quantities exactly; do not calculate, infer missing entries, invent dates or add advice. If any required value is missing, return an empty rows array and ask me for it separately. I will verify every cell against my source and manually transcribe rows using vertical bars before running the local calculator.

An AI response is not executed, fetched or trusted as a result. Missing values remain questions; the strict local parser checks the rows you actually enter.