A modular, maintainable Tampermonkey userscript that enhances Milky Way Idle with quality-of-life features, market tools, combat statistics, and comprehensive game data overlays.
π Documentation | β¨ Features | π Changelog | π€ Contributing
Toolasha is a complete rewrite of the popular MWITools userscript, rebuilt from the ground up with modern JavaScript architecture. It provides dozens of enhancements for Milky Way Idle, including:
- Market Intelligence - Real-time pricing, profit calculations, and inventory management
- Combat Tools - DPS tracking, dungeon statistics, and gear score calculations
- Enhancement Optimizer - Success rate tracking and cost simulation
- Action Planning - Queue time displays, profit calculations, and output predictions
- Economy Tracking - Net worth calculations and asset valuation
All features are modular and can be individually enabled/disabled through an in-game settings panel.
- Market Prices - 24-hour average prices on item tooltips
- Profit Calculations - Crafting costs and profit margins
- Net Worth Display - Real-time asset valuation
- Inventory Sorting - Sort by value, type, or custom criteria
- Combat Score - Gear score calculation
- Dungeon Tracker - Run times, wave progress, and team stats
- Ability Calculator - Books needed for target levels
- Enhancement Tracker - Success rates and cost tracking
- Enhancement Simulator - Optimal strategy calculator
- Production Profit - Material costs and profit breakdown
- Max Produceable - Shows craftable quantity with current materials
- Action Queue Time - Total completion time display
- Task Profit Display - Reward value calculations
- Quick Input Buttons - Preset buttons for 1/10/100/Max
- Skill XP Percentage - Progress to next level
- Equipment Level Display - Enhancement level on icons
- Comprehensive Settings - Organized feature configuration
- Color Customization - Extensive UI color options
View complete feature list β
- Visit Toolasha on Greasy Fork
- Click Install this script
- Tampermonkey will prompt you to confirm installation
- Visit Milky Way Idle - Toolasha loads automatically
-
Download the latest release
- Visit the Releases page
- Download
Toolasha.user.jsfrom the latest release (entrypoint)
-
Install in Tampermonkey
- Click the downloaded file, or
- Open Tampermonkey dashboard β Utilities β Import from file
-
Visit the game
- Go to Milky Way Idle
- Toolasha should load automatically
The entrypoint loads required libraries automatically from GitHub raw URLs.
Steam's embedded browser has network restrictions that prevent external @require directives from working. Use the Steam-specific build instead:
-
Download the Steam build
- Visit the Releases page
- Download
Toolasha.steam.user.jsfrom the latest release - This is a single-file bundle (~3MB) with all dependencies included
-
Install in Tampermonkey
- Open Tampermonkey on Steam's browser
- Dashboard β Utilities β Import from file
- Select the downloaded
Toolasha.steam.user.js
-
Visit the game
- Go to Milky Way Idle in Steam
- Toolasha should load automatically
Note: The Steam build bundles mathjs, chart.js, and chartjs-plugin-datalabels inline, resulting in a larger file size than the browser version. Functionally identical to the browser version.
# Clone the repository
git clone https://github.com/yourusername/Toolasha.git
cd Toolasha
# Install dependencies
npm install
# Build the dev standalone userscript
npm run build:dev
# Install dist/Toolasha-dev.user.js in Tampermonkey- Open the game at milkywayidle.com/game
- Click your character icon (top-right of screen)
- Click Settings
- Click the Toolasha tab in the settings menu
- Enable/disable features as desired
- Settings are saved automatically
Most features work automatically once enabled. Some features have additional configuration:
- Pricing Mode - Choose Conservative/Hybrid/Optimistic for profit calculations
- Enhancement Simulator - Configure skill levels and buffs
- Color Customization - Customize UI element colors (9 color options)
If features aren't working:
- Refresh the page - Some features require a page reload
- Check browser console - Look for error messages (F12 β Console)
- Verify Tampermonkey is enabled - Check the extension icon
- Report issues - Open an issue with details
For detailed troubleshooting, see TROUBLESHOOTING.md.
Toolasha is built with modern JavaScript (ES6+) using a modular, feature-based architecture. Contributions are welcome!
npm install # Install dependencies
npm run build:dev # Build dev standalone userscript
npm run build # Build production libraries + entrypoint
npm run build:steam # Build Steam single-file bundle
npm run build:all # Build both production and Steam versions
npm run dev # Watch mode (auto-rebuild)
npm test # Run test suite (143 tests)- CONTRIBUTING.md - Contribution guide and development workflow
- AGENTS.md - Developer guide for AI coding agents
- ARCHITECTURE.md - System architecture and design patterns
- DOCUMENTATION.md - Complete documentation index
- Build: Rollup with ES6 modules
- Testing: Vitest with 143 tests
- Storage: IndexedDB with debounced writes
- Code Quality: ESLint + Prettier with pre-commit hooks
- CI/CD: GitHub Actions with automated releases
Toolasha/
βββ src/
β βββ main.js # Entry point
β βββ core/ # Core systems
β β βββ storage.js # IndexedDB wrapper
β β βββ config.js # Settings management
β β βββ feature-registry.js # Feature initialization
β β βββ websocket.js # WebSocket hooking
β β βββ data-manager.js # Game data access
β β βββ dom-observer.js # Centralized DOM observer
β βββ api/ # External API integrations
β βββ features/ # Feature modules
β β βββ actions/ # Action panel enhancements
β β βββ combat/ # Combat statistics & DPS
β β βββ enhancement/ # Enhancement optimizer
β β βββ market/ # Market system
β β βββ networth/ # Networth calculations
β β βββ settings/ # Settings UI
β βββ ui/ # UI components
β βββ utils/ # Utility functions
βββ tests/ # Test files (143 tests)
βββ dist/ # Built userscript (gitignored)
βββ docs/ # Documentation
For detailed architecture documentation, see ARCHITECTURE.md.
Toolasha has comprehensive test coverage using Vitest:
- 143 tests across 3 test suites
- 100% coverage of utility modules
- Automated testing in CI/CD pipeline
- Pre-commit hooks ensure tests pass
npm test # Run all tests
npm run test:watch # Watch mode
npm test -- --coverage # Coverage reportTest Coverage:
formatters.js- 65 tests, 100% coverageefficiency.js- 49 tests, 100% coverageenhancement-multipliers.js- 29 tests, 100% coverage
- Modularity - Small, focused modules with clear responsibilities
- Testability - Pure functions where possible, comprehensive test coverage
- Performance - IndexedDB with debounced writes, centralized MutationObserver
- Async-First - Proper async/await patterns throughout
- Maintainability - Clean code, clear documentation, consistent patterns
License: CC-BY-NC-SA-4.0
Original Author: bot7420 (MWITools)
Rewrite & Maintenance: Celasha and Claude
Version: 1.16.0 (Pre-release)
Note: This is a pre-release version (0.x.x). Version 1.0.0 will be released after comprehensive production testing. See MWI-TOOLS-CHANGELOG.md for version history.