← All Phases
Phase 2 of 4

Classroom Pilot, Hardened Tap System

Take the same tap-based approach from a demo to something a real class could use for a full period, still without UHF or camera correlation.

Draft

The Card Format

Instead of a separate RFID tag on a keychain or lanyard, each student is issued one card from a standard deck of playing cards, with an RFID sticker adhered to its face. It is cheap, easy to hand out and collect at the door like dealing a hand, hard to lose track of because it is just "your card," and needs no new object type to manufacture or replace.

flowchart LR
		D["Standard deck
of playing cards"] --> ST["RFID sticker
applied to each card"]
		ST --> C["Card assigned
to one student"]
		C --> R["Tap at the
CrowPi reader"]
		R --> BE["Production backend
	roster admin UI"]

What's Being Built

  • Cards: standard playing-card deck, one RFID sticker per card
  • Registration: 20+ student cards, each mapped to a student
  • Frontend: production roster and admin views, replacing the rough dashboard
  • Backend: production-grade deployment, off the Flask dev server
  • Database: migrated off SQLite, with a backup strategy
  • Access control: authentication for admin functions and card registration
See Funding for the RFID sticker SKU.

Acceptance Criteria

  • Register at least 20 student cards: apply one RFID sticker to each playing card and assign it to a student
  • Replace the rough dashboard with a production frontend (roster and admin views)
  • Move off the Flask dev server to a production-grade deployment
  • Migrate SQLite to a proper database with a backup strategy
  • Add authentication and authorization for admin functions and a teacher-facing card registration UI
  • Run full-period tests, not just a two-minute demo, and validate attendance states with educator feedback
Project TeamRuta Sirdeshmukh, Vibha Mandayam, Kush Shah
View Repo