Over 100 features built for coaches & parents

Every feature in TeamFeed was designed with the real needs of youth baseball teams in mind—from managing RSVPs to sharing game updates, we built the tools coaches and parents actually use.

Here are some of our top features. Want to see everything? Jump to the full feature list

RSVP System

RSVPs are tied to the player—not the parent—so when one family member responds, the whole family is synced. Parents or players can tap Yes, No, or Maybe right from the schedule card, and coaches get a full summary with counts, player names, and timestamps.

Real-Time Chat

Team chats, group chats, and direct messages all live in one familiar text message–style interface with instant delivery. Share images, react to messages with emoji, and never miss a conversation with unread badges.

Notifications

Coaches control how each announcement reaches the team (feed only, email, push, or both). Detailed event emails so everyone has all the info for games & practices. Plus, if there are changes to an event, those changes are highlighted so parents instantly see what’s different.

App Experience

TeamFeed is a Progressive Web App that installs to your home screen with its own icon—no app store needed. The app was designed to minimize the amount of screens users have to tap through in order to find the info they need.

Complete Feature List

Everything TeamFeed has to offer, organized by category. Tap any section to see the full list.

  • Role selection during registration (Head Coach, Assistant Coach, Parent, Guardian)
  • Profile management (name, email, phone, avatar)
  • Avatar upload with circular crop
  • Share toggles for email and phone visibility to coaches
  • Notification preference controls (push, email, event reminders)
  • Multi-team support (one account across multiple teams)
  • Player linking gate for parents/guardians (must link to a player before accessing app)
  • Create teams with name, age group, season, and optional logo
  • Auto-generated join codes (8-character, human-friendly)
  • Shareable join links for easy team onboarding
  • Team settings page (editable team info)
  • Team list page showing all teams with logos
  • Team switcher dropdown (desktop sidebar, mobile header)
  • Per-team toggle sliders to filter feed and schedule
  • Head Coach role with full permissions
  • Assistant Coach role with configurable permissions per feature
  • Team Admin role for non-coaching staff
  • Parent role for team member families
  • Guardian role as alternative to Parent
  • Configurable assistant coach permissions (post feed, create events, post resources, manage data)
  • Role-based data visibility throughout the app
  • Promote members to Assistant Coach or Team Admin
  • Coach promotion/demotion toggle with instant UI feedback
  • View team roster with player names, jersey numbers, and avatars
  • Coaches section at top of roster showing coach names, role badges, and linked players
  • Coach-only view of parent contact info (respects share toggles)
  • Bulk add players via CSV or form entry
  • Edit player profiles (name, number, avatar)
  • Delete player from edit page with two-step confirmation
  • Unique jersey number enforcement per team
  • Blue checkmark icon for players with linked user accounts
  • Manage parent-player links
  • Coach-to-player linking (same UX as parent cards)
  • Parent cards with conditional contact info display
  • One parent can have multiple players on the same or different teams
  • Unified multi-team feed
  • Rich text editor (bold, italic, underline, text color, font sizes)
  • Post titles displayed in bold at top of feed cards
  • Image upload on posts with automatic resize before upload
  • Audience targeting per post (everyone, parents only, players only)
  • Notification level per post (feed only, email, push, both, or none)
  • “Show in Feed” toggle for controlling post visibility
  • Character-based post truncation (270 chars) with inline “Read more” link
  • Relative timestamps (“2 hours ago”) for recent posts
  • Event type badges on feed cards (Practice/Game pills)
  • Change highlighting for event updates (red text for changed fields)
  • Reactions on posts (like, dislike, love)
  • Threaded replies on posts
  • Per-reply reactions
  • “Who reacted” sheet showing list of users
  • Edit posts (shows “Edited at” label)
  • Delete posts with two-tap confirmation
  • Team badge/logo displayed on each post
  • Practice events with full detail fields
  • Game events with opponent and home/away toggle
  • Event fields: title, date, time, duration, arrival time, location, field name, uniform info, notes
  • Rich text notes on events
  • TBD support for location, opponent, and time
  • Saved locations (auto-saved, reusable across teams)
  • Location management with name, address, notes, and optional field map image
  • Tappable map link on location tab (opens in Maps app)
  • Saved opponents (auto-saved, reusable across teams)
  • Opponent management page
  • Recurring events (weekly, every other week, monthly)
  • Recurring event end conditions (by date or by occurrence count)
  • Server-side recurring event generation
  • Edit recurring events with scope choice (this only, this & future, all)
  • Delete recurring events with scope choice
  • Duplicate event (pre-fills create form)
  • Cancel event with notification level picker and rich feed post
  • Cancelled badge on event cards
  • Schedule list view with upcoming/past toggle
  • Events grouped by date
  • Event cards with type badge, title, time, location, and RSVP status dot
  • Inline RSVP buttons on event cards (before responding)
  • Multi-team dropdown filter
  • Event detail page with tabbed view (Details, Location, RSVPs)
  • Notification level selection when creating/updating events
  • Calendar sync (Apple Calendar via webcal://, Google Calendar, copy URL)
  • Per-user per-team calendar subscription tokens
  • Single event .ics file download
  • Duplicate prevention for saved locations and opponents (case-insensitive matching)
  • Auto-select existing location/opponent when typing a duplicate name
  • RSVP options: Yes, No, Maybe
  • RSVPs tied to player profile (not user account)
  • Family sync: one RSVP per player regardless of which parent responds
  • Multi-player prompt for parents with multiple kids on same team
  • RSVP status indicator dots on schedule cards (green/amber/gray)
  • Inline RSVP buttons on event cards
  • RSVP summary boxes (Yes/No/Maybe/Pending counts)
  • Full RSVP list with player name, number, status, and timestamp
  • “Submitted by” display showing which parent submitted (or player if they submitted)
  • Timezone-aware timestamps
  • Coach RSVP editing (coaches can update RSVPs for verbal confirmations)
  • Unified conversation model (team, group, direct)
  • Auto-created team chats (one per team, all members included)
  • Custom group chats with name and member selection
  • Direct messages (1-on-1, deduplicated across teams)
  • Chat list with last message preview, timestamp, and unread badge
  • Sorted by most recent conversations
  • iMessage-style chat UI (right-aligned own messages, left-aligned others)
  • Team chats labeled with “Team Chat -” prefix and team logo avatar
  • Sender name and avatar above message groups
  • Timestamps between message groups (5-minute gap threshold)
  • Message reactions (like, dislike, love, question) via long-press/hover
  • Reaction counts below messages
  • “Who reacted” bottom sheet in chat (avatars, names, grouped by type)
  • “New messages” pill when scrolled up
  • “Not sent” indicator with retry on tap
  • Image attachments in chat (up to 8 images per message)
  • Automatic image resize before upload
  • Image lightbox with prev/next navigation and image counter
  • Pinch-to-zoom in image lightbox on mobile (1x–5x scale, double-tap toggle)
  • Drag and drop image upload in chat on desktop
  • Clipboard paste support for images in chat
  • Camera icon + “Photo” preview for image-only messages in chat list
  • Delete DM and group conversations (creator only, two-step confirmation)
  • Add members to existing group chats
  • Rename group chats (creator only)
  • Pagination (50 messages initially, older on scroll-up)
  • Unread message tracking with read cursors
  • Create new direct message with teammate search/picker
  • Hover reaction button on desktop
  • Resource creation with rich text editor
  • File uploads (images and PDFs, 5MB limit)
  • File preview (thumbnails for images, icon for PDFs)
  • Inline images embedded in rich text
  • PDF links in content view
  • Drag and drop file upload
  • Coach-created categories per team (up to 5)
  • Category pill badges on cards and detail view
  • Category filter pills with horizontal scroll
  • Resources library with grid of content cards
  • Content cards with thumbnail, title, category, date, description
  • Detail view with full images, PDF embeds, and description
  • Edit and delete resources
  • Author-only editing (or coaches with post_resources permission)
  • Cross-posting to main feed via “Show in Feed” toggle
  • YouTube video auto-embed from URL
  • YouTube thumbnail generation
  • Lazy-load video embeds (load on scroll or tap)
  • Empty states for coaches vs. parents
  • Web Push notifications
  • Push subscribe/unsubscribe controls
  • Coach-controlled notification level per post and event
  • Transactional email notifications
  • Event creation/update emails with full event details
  • Change highlighting in event update emails (changed fields in red)
  • Branded email templates (navy header, varsity red CTA)
  • Event reminders based on user preferences
  • Configurable reminder timing (minutes before event)
  • Notification preferences page (push, email, reminders)
  • Push/install prompts only shown on mobile/tablet
  • Push notification nudge banner on feed page
  • Notifications include the sender (coaches see what team members see)
  • Progressive Web App
  • Custom app icons
  • Service worker for push notification handling
  • App shell caching for instant load
  • Asset caching (images, fonts, static assets)
  • Network-first strategy for navigation and data requests with cache fallback
  • Auth route bypass in service worker (prevents stale auth pages)
  • Install instructions page with step-by-step guide and video tutorial
  • Offline shell (app shell loads without network)
  • Offline fallback page
  • Offline indicator banner
  • “You’re back online” reconnection toast
  • Pull-to-refresh for data reload
  • Mobile-first responsive design
  • Baseball-themed color palette
  • Bottom navigation bar on mobile (Feed, Schedule, Chat, Resources, More)
  • Left sidebar navigation on desktop
  • Floating action buttons for content creation (mobile)
  • Header buttons for content creation (desktop)
  • Card-based UI with subtle shadows
  • Team logo/badge displayed throughout
  • Status badges (Practice, Game, Resources pills)
  • Generous white space between elements
  • Touch targets minimum 48px
  • System font stack (Inter / SF Pro style)
  • Left sidebar replaces bottom nav
  • Max-width containers per page type
  • Feed sidebar widget with upcoming events and quick RSVP
  • Two-panel chat layout (conversation list + active chat)
  • Resources grid layout (3-column)
  • Hover states on cards, links, and buttons
  • Avatar menu dropdown in header (Profile, Manage, Log Out)
  • Page headings scale up on desktop
  • Row Level Security (RLS) on all database tables
  • Users can only access data for teams they belong to
  • Role-based insert/update permissions
  • HTTPS encryption in transit
  • Password strength requirements enforced on client and server
  • Hashed passwords (never stored in plaintext)
  • Secure file storage buckets with access controls
  • Share toggles for parent contact information
  • Contact info visible only to coaches/admins when shared
  • Duplicate prevention with unique constraints on locations and opponents
  • Unique jersey number enforcement per team
  • No third-party analytics, trackers, or advertising SDKs
  • Suspense layout with async data loading and fallback shells
  • Per-request membership caching
  • Parallelized database queries
  • Pagination across all list views
  • Next.js Image optimization for avatars, logos, photos
  • Client-side image resize before upload
  • Lazy-loading for YouTube embeds
  • Fire-and-forget notification delivery (prevents page hang)
  • Realtime subscriptions (auto-subscribe/unsubscribe per screen)
  • Real-time feed post updates
  • Real-time chat message delivery
  • Real-time reaction sync
  • Shareable join link (/join/[code])
  • Manual join code entry during registration
  • Add players during join flow
  • Role selection with descriptions in join flow
  • Duplicate join detection (“You’re already a member”)
  • Player linking gate (parents/guardians must link to player before app access)
  • Authenticated users redirect from login to feed automatically

Ready to try it out?

Set up your team in minutes. Free while we continue building.

Get Started — It's Free