Friends of Poway Seniors Website Redesign: Project Retrospective & Future Roadmap
Friends of Poway Seniors Website Redesign: What We Built & What Comes Next
Introduction
This blog serves as a handoff document for developers, designers, and volunteers who will continue working on the Friends of Poway Seniors (FOPS) website. The goal of the redesign was to modernize the digital experience for seniors, volunteers, and administrators while introducing intelligent, engaging features.
Below you will find a summary of what we delivered, followed by critical gaps we identified, as well as a concrete future work plan.
Project Files
The following files were created or modified during this redesign:
2026-03-12-fops_frontend.md- Main frontend structure and styling2026-03-13-fopsaboutus.md- About Us page content and layout2026-03-13-fopsbingo.md- Virtual bingo game implementation2026-03-13-fopslunch.md- Lunch events page and scheduling2026-03-13-fopsresources.md- Resources page for senior support2026-03-13-fopsshop.md- Shop page for merchandise or donations2026-04-13-fops-predictor.md- ML event predictor integration
Completed Features (Current State)
1. AI Chatbot
A conversational interface to answer common questions about FOPS events, volunteer opportunities, and bingo schedules. Built using a lightweight NLP model with FAQ fallback. Integrated into the homepage and a dedicated Help sidebar.
2. Volunteer Signup System
Dynamic form for prospective volunteers to register interest, select availability, and submit contact information. Email notification to FOPS admin via basic SMTP. Stores entries in a local JSON or dummy database with limited persistence.
3. ML Event Predictor
A machine learning model (random forest or logistic regression) that predicts attendance for events based on historical signups, weather, and day of week. Outputs Low, Medium, or High expected attendance to help staff plan seating, snacks, and volunteers.
4. Virtual Bingo Game
Browser-based bingo with auto-generated cards, click-to-mark numbers, and a Bingo validation check. Currently uses a static schedule with hardcoded bingo times.
5. Frontend and UX
Responsive HTML, CSS, and JavaScript with mobile-friendly design. Basic color contrast and large buttons provide partial accessibility.
What We Missed (Critical Gaps)
While the frontend features work in isolation, the system lacks several production-ready and sustainable elements:
User Roles No login or role separation. Anyone can access admin-like features, including viewing ML event predictions intended for staff use.
Admin Functionality The ML event predictor is publicly visible. Administrators cannot configure or retrain the model, nor can they moderate volunteer signups from a dashboard.
Bingo Flexibility The bingo schedule is static. If FOPS changes bingo times, a developer must manually update the code.
Senior Usability The site assumes digital literacy. There is no voice input, no tutorial mode, no high-contrast toggle, and font sizes are not fully scalable.
Training and Education No onboarding or training module exists for seniors who have never used a chatbot, volunteer form, or online bingo.
Future Work (Roadmap for Successors)
If you are picking up this project, please prioritize the following areas in order of impact.
Phase 1: Backend and Database (Urgent)
Build a proper backend using one of these recommended stacks:
- Node.js with Express and PostgreSQL
- Python with FastAPI and SQLite or PostgreSQL
- Firebase for simpler serverless deployment
Create REST endpoints for the following:
- Volunteer signup submission and retrieval
- Bingo session metadata management
- Event predictor usage logs
- User authentication and session handling
Phase 2: User Authentication and Role Splitting
Implement login functionality using email and password with JWT tokens or session cookies. Define two distinct user roles:
- Admin: Can access ML event predictor dashboard, view and edit volunteer list, update bingo schedule, and view system analytics.
- Senior or Visitor: Can use chatbot, sign up to volunteer, play virtual bingo, and view public event information.
Restrict the ML predictor page and all administrative tools to admin role only.
Phase 3: Dynamic Bingo Schedule with Web Scraping and Database
Replace the static bingo schedule with an automated pipeline:
- Create a scheduled cron job or task that scrapes the official Friends of Poway Seniors website or events calendar daily.
- Extract bingo date and time information from the scraped data.
- Store the updated schedule in the database.
- Modify the virtual bingo game to fetch current schedule from the database API.
- Build a fallback admin interface to manually override schedule entries when scraping fails.
Phase 4: Senior-First Accessibility Overhaul
Add a persistent Easy Mode toggle that enables:
- Minimum font size of 20 pixels
- Removal of non-essential animations
- High-contrast theme (yellow text on black background or similar)
- Simplified navigation menu
Implement keyboard-only navigation so no mouse is required. Add voice-controlled navigation using the Web Speech API for users with limited dexterity.
Phase 5: Training Module for Seniors
Build an interactive, low-pressure tutorial that teaches:
- How to ask the AI chatbot questions with example prompts
- How to submit a volunteer signup
- How to play virtual bingo with a practice round
- How to read the ML event predictor output if visible to seniors
Format the training as step-by-step modal overlays, short video demonstrations, and a Practice Mode sandbox that does not affect real data.
Technical Debt and Notes for Maintainers
ML Event Predictor The current model is saved as a pickle file and served via a basic Flask endpoint. If you transition to a different backend, re-export the model as ONNX or a JSON weights file for cross-platform compatibility.
AI Chatbot The chatbot uses a hardcoded intent-matching JSON file. Consider replacing this with a small LLM API such as Groq or OpenAI for more natural conversation, but be mindful of cost and response latency.
Virtual Bingo Card generation is currently deterministic. Add randomness per session to prevent predictable card patterns.
Testing Test all changes with real senior users early and often. What works for a developer may not work for the target audience.
Final Notes
This project was built with care for the Poway senior community. The completed features provide a solid foundation, but production readiness requires backend infrastructure, authentication, automated data pipelines, and senior-first polish.
You are now responsible for that work. Please contact the original team through FOPS administration if you need additional context.
Keep building for people, not just browsers.
Last updated: May 27, 2026