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

5.8 KiB

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