BMLT Server Activity Report

A modern Svelte 5 application that displays change activity reports from BMLT (Basic Meeting List Toolbox) servers. Track meeting changes, view statistics, and monitor service body activity with an intuitive, responsive interface.
Features
- 📊 Comprehensive Statistics - View total changes, active users, and change type breakdowns
- 🔍 Advanced Filtering - Search and filter by meeting name, user, change type, or service body
- 📅 Configurable Date Ranges - Review activity from 1 to 365 days
- 🌐 Multi-Server Support - Connect to any BMLT root server
- 🎯 Service Body Selection - Track specific service bodies or entire regions
- 📱 Responsive Design - Works seamlessly on desktop and mobile devices
- 🔄 Real-time Diff Viewer - See detailed line-by-line changes for each modification
- 💾 Persistent Configuration - Settings saved to browser localStorage
- 🌍 Localization - Full support for English and Spanish with automatic browser language detection
- 🌓 Dark Mode - Toggle between light and dark themes with persistent preference
Technology
Built with Svelte 5, TypeScript, and Tailwind CSS. Uses the bmlt-query-client library to fetch data from BMLT servers.
Installation
# Clone the repository
git clone https://github.com/bmlt-enabled/activity.git
cd activity
# Install dependencies
npm install
# Build for production
npm run build
The built application will be in the dist/ directory, ready to deploy to any static hosting service.
Configuration
On first launch, you'll be prompted to configure:
- BMLT Server - Select from a list of available BMLT root servers
- Service Bodies - Choose one or more service bodies to track
- Days to Look Back - Specify how many days of history to fetch (1-365)
Configuration is automatically saved to your browser's localStorage and can be changed at any time using the Configure button.
Language & Theme Settings
- Language: Click the language icon (🌐) in the header to switch between English and Spanish. The app automatically detects your browser's language preference on first visit.
- Dark Mode: Click the theme toggle button to switch between light and dark modes. Your preference is saved and persists across sessions.
How It Works
- Configuration - Select your BMLT server and service bodies on first launch
- Data Fetching - Changes are retrieved from the BMLT API for your specified date range
- Statistics - View aggregated data including total changes, active users, and change types
- Filtering - Search and filter results instantly with client-side processing
- Detailed Views - Click any change to see a detailed diff of what was modified
The app stores your configuration, language preference, and theme in your browser's localStorage for a seamless experience across sessions.
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for:
- Development setup and guidelines
- Architecture and data flow diagrams
- Testing requirements and examples
- Code style and formatting rules
- Pull request process
License
This project is licensed under the MIT License - see the LICENSE file for details.
Credits
Support
For issues, questions, or suggestions, please open an issue on GitHub.