Files
txt3-wap/TODO.md
jamie prince e2ae3bf6d2 Add comprehensive project documentation: README, TODO roadmap, and agent guidelines
- README.md: Project overview, architecture, front-ends (WML/XHTML/telnet BBS), MUD RPG, games, admin tools, history from 1997 to present, quick start, technical notes
- TODO.md: Prioritized improvement roadmap (high/medium/low), monthly roadmap, known issues, testing guidelines, contribution process
- AGENTS.md: Agent workflow conventions, code structure, testing strategy, deployment config, debugging strategies
2026-09-10 01:57:40 +01:00

189 lines
5.8 KiB
Markdown

# txt3 BBS - TODO and Improvement Ideas
This document tracks planned enhancements, bug fixes, and quality-of-life improvements for the txt3 BBS platform.
## High Priority (User Experience)
### 1. Complete Admin Panel Documentation
**Status**: Partial - admin tools exist but lack guidance
**Impact**: New admins can't manage users, forums, or moderation
**Action**: Document all admin BBS commands (`admin_menu`, `admin_users`, `admin_forums`, etc.) in README + inline comments
### 2. Expand MUD Content and World
**Status**: Basic starter world (12 rooms, 5 monsters, 7 items)
**Impact**: Current world feels sparse; deeper immersion needed
**Action**:
- Add more rooms, NPC traders, dynamic events
- Increase monster variety with unique loot
- Add quests and RPG progression hooks
- Include environmental hazards and treasures
### 3. Create Web Games Page
**Status**: Games exist in BBS but no dedicated web interface
**Impact**: Non-telnet users can't play Guess the Number, Quiz, or multiplayer games
**Action**:
- Build `/games.php` with embedded game windows
- Mirror BBS game state (cross-play between web and telnet)
- Add leaderboards section on web
### 4. Improve WML UX
**Status**: Basic WML detection, some formatters
**Impact**: WML clients still encounter rough edges
**Action**:
- Better softkey handling for forms
- Improve truncation messages for long text
- Add WML-specific keyboard shortcuts
- Better error messages in WML
## Medium Priority (Code Quality)
### 5. Consistent Error Handling
**Status**: Different patterns across PHP and Python
**Impact**: Harder maintenance, inconsistent user experience
**Action**: Standardize error types and user-facing messages
### 6. Add Input Validation
**Status**: Some basic validation, many gaps
**Impact**: Security holes (XSS, SQL injection minimal but present)
**Action**:
- PHP: Sanitize all form inputs, escape HTML properly
- Python: Validate username/password format, input length limits
- Rate limiting for login attempts
### 7. Mobile/Older Phone Optimization
**Status**: Works but could be smoother
**Impact**: Better WML optimization = more modern phones can use it
**Action**:
- Reduce WML page size further
- Optimize images for low-bandwidth
- Add offline capabilities for cached content
### 8. Accessibility Improvements
**Status**: Basic WML, limited XHTML accessibility
**Impact**: Excludes users with assistive tech
**Action**:
- ARIA labels in XHTML forms
- Better semantic markup
- Keyboard navigation in WML
## Low Priority (Nice-to-Have)
### 9. Performance Optimizations
**Status**: Reasonable for scale, could be faster
**Impact**: Faster response times for older hardware
**Action**:
- SQLite query optimization
- Caching for frequently accessed data
- CDN for static assets
### 10. Advanced Features
**Status**: Core functionality complete
**Impact**: More engagement, longer play time
**Action**:
- Private messaging between MUD characters
- Guilds/alliances in MUD
- Trading post in MUD
- Advanced game statistics
- User-generated content (MUD scripts)
## Documentation Gaps
### 11. Agent Workflow Documentation
**Status**: None - created by user request
**Impact**: New maintainers can't follow established patterns
**Action**:
- Document code conventions (naming, formatting)
- Agent workflow guidelines (testing, deployment)
- Knowledge base for common issues
### 12. Developer Quick Reference
**Status**: Only in code comments
**Impact**: Hard to onboard new developers
**Action**:
- API documentation for shared database tables
- Developer guide for both PHP and Python front-ends
- Contribution guidelines
## Technical Debt
### 13. Code Cleanup
**Status**: Working but could be cleaner
**Impact**: Long-term maintainability
**Action**:
- Refactor repetitive code
- Improve variable naming
- Add type hints where appropriate
### 14. Logging and Monitoring
**Status**: BBS logs to file, limited web monitoring
**Impact**: Harder to debug production issues
**Action**:
- Structured logging (JSON format)
- Simple metrics/dashboard
- Error reporting setup
## Infrastructure
### 15. Backup and Recovery
**Status**: No documented backup procedures
**Impact**: Risk of data loss
**Action**:
- Document database backup procedures
- File backup strategies
- Recovery testing procedures
### 16. Deployment Automation
**Status**: Manual systemd service management
**Impact**: Harder to update across environments
**Action**:
- Ansible/Chef playbook for deployment
- Database migration scripts
- Multi-environment support (dev/staging/prod)
## Immediate Next Steps (Week 1)
1. Create README.md (COMPLETED)
2. Expand MUD world content with more rooms/monsters
3. Add web games interface (basic version)
4. Document admin commands
5. Improve input validation and error handling
## Monthly Roadmap
- Month 1-2: Core features and bug fixes
- Month 3-4: Performance and UX improvements
- Month 5-6: Advanced features and documentation
## How to Contribute
1. Fork the repository
2. Create a feature branch
3. Follow existing code style and conventions
4. Add tests for new functionality
5. Update documentation
6. Submit pull request
## Known Issues
- Admin password reset broken in telnet BBS
- Some WML forms have poor keyboard navigation
- MUD shop mechanics could be clearer
- Web and telnet game state synchronization needs testing
## Testing
- Manual testing required for BBS interactions
- Database schema migrations need testing
- Cross-front-end account sharing needs validation
- Performance testing on older hardware
---
*Created to track project development and guide improvements*
*Most items can be tackled incrementally - start with highest-impact features*
## Current Blockers
1. Limited time/resources for content expansion
2. Need to balance nostalgia with modern usability
3. Security audit needed for production deployment
4. Missing development environment setup documentation