A comprehensive graphical tool for managing Factorio mods with automatic dependency resolution, mod searching, and batch operations.
โจ Smart Mod Management
- ๐ Search mods from the Factorio mod portal with live preview
- ๐ฅ Download mods with automatic dependency resolution
- โป๏ธ Check for and install mod updates
- ๐พ Backup and restore mod versions
- ๐๏ธ Delete mods with confirmation
โจ Dependency Handling
- ๐ Automatic recursive dependency resolution
- โ Optional dependency support (with user control)
โ ๏ธ Conflict detection - warns about incompatible mods- ๐ฆ Shows all transitive dependencies before downloading
โจ Advanced Features
- ๐ Multithreaded downloads (up to 4 concurrent mods)
- ๐ Real-time progress tracking with visual progress bars
- ๐ Download console with detailed logs
- ๐ฅ Individual mod status in downloads sidebar
- ๐ Cross-platform support (Windows, Linux, macOS)
-
Download the latest release: FactorioModManager.exe
- No installation required - just run the executable!
- Requires Windows 7+ with .NET Framework
-
Run the application
- Double-click
FactorioModManager.exe - Select your Factorio mods folder on first run
- Double-click
On first launch:
- Click Browse next to "๐ Mods Folder"
- Navigate to your Factorio mods directory (typically
C:\Users\[YourUsername]\AppData\Roaming\Factorio\mods) - Click Select Folder
- Go to the Downloader tab
- Enter the mod name or URL (e.g.,
jetpackorhttps://mods.factorio.com/mod/jetpack) - Review dependencies shown in the info panel
- Click โฌ๏ธ Download
- Watch the progress in the downloads panel and sidebar
- Optional dependencies are shown but not auto-downloaded (you choose whether to include them)
- Go to the Checker tab
- Click ๐ Scan Mods to check for available updates
- Mods with updates appear highlighted
- Select mods and click โฌ๏ธ Update to install newer versions
- Select one or more mods in the Checker tab
- Click ๐พ Backup to create backup copies
- Backups are stored in a
backup/subfolder within your mods directory - Use โป๏ธ Restore to restore from backups (if available)
- Select mods in the Checker tab
- Click ๐๏ธ Delete to remove them
- Confirm the deletion
- ๐ Required: Mods that must be installed for this mod to work
- โ Optional: Mods that add extra functionality if present
- โ Incompatible: Mods that conflict with this one
- ๐ฟ Requires DLC: Paid expansions needed
- ๐ฆ Shows all mods that will be downloaded, including:
- The main mod you selected
- All required dependencies
- All dependencies of dependencies (recursive)
- Optional dependencies (if you enabled them)
Example: Downloading jetpack shows:
- PickerTweaks (optional dependency of jetpack)
- stdlib (required by PickerTweaks)
- long-reach-fix (optional dependency of PickerTweaks)
The app checks for conflicts in two ways:
- Between downloaded mods - Warns if any mod you're downloading conflicts with another
- With installed mods - Warns if what you're downloading conflicts with already-installed mods
- Incompatible dependencies - Identifies mods that can't coexist
Settings are automatically saved in:
- Windows:
C:\Users\[YourUsername]\AppData\Local\FactorioModManager\config.ini - Linux:
~/.config/FactorioModManager/config.ini - macOS:
~/Library/Application Support/FactorioModManager/config.ini
Settings include:
- Mods folder location
- Factorio API credentials (optional, for higher download limits)
- Download preferences
- Optional dependency settings
For higher download limits and faster downloads, you can add your Factorio credentials:
- Get your API token from mods.factorio.com โ User Profile โ Authentication
- In the app, add your username and token to the settings
- Credentials are stored locally and never shared
- Ensure the path to your mods folder is correct
- Check that the folder exists and you have read/write permissions
- The mod may have been removed from the portal
- Try searching on mods.factorio.com to confirm it exists
- Check the mod name spelling
- The download was corrupted
- Try downloading again
- If it persists, the mod may have a server-side issue
- Factorio may require a restart to load new mods
- Check that the mod is enabled in-game (
Modsโ Enable) - Verify the mod version is compatible with your Factorio version
- This is normal - it updates as each mod completes
- Check the detailed progress in the Downloader tab console
- OS: Windows 7+ (or Linux/macOS with Python 3.12+)
- Disk Space: 50MB for the app + space for mods
- Internet: Required for downloading mods and checking updates
- .NET Framework: Windows only (usually pre-installed)
# Clone the repository
git clone https://github.com/yourusername/FactorioManager.git
cd FactorioManager
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run the app
python -m factorio_mod_manager.main# Install PyInstaller
pip install pyinstaller
# Build
pyinstaller FactorioModManager.spec --cleanThe executable will be in dist/FactorioModManager.exe
- Core:
factorio_mod_manager/core/- Download, update, and mod management logic - UI:
factorio_mod_manager/ui/- Tkinter GUI with multiple tabs - Utils:
factorio_mod_manager/utils/- Helpers, logging, configuration
portal.py- Factorio mod portal API integrationdownloader.py- Mod downloading with dependency resolutionchecker.py- Update checking and mod managementmain_window.py- Main UI controllerdownloader_tab.py/checker_tab.py- Tab implementations
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Does not support Factorio mods with non-standard naming
- Cannot install mods from custom repositories (only factorio.com)
- Does not validate mod compatibility with specific Factorio versions in advance
- Multithreading limited to 4 concurrent downloads
- Mod profile management (save/load mod configurations)
- Mod auto-update feature
- Integration with Factorio game launcher
- Web UI alternative to desktop app
- Linux AppImage and Snap packages
This project is licensed under the MIT License - see the LICENSE file for details.
- Factorio mod portal API for mod data
- BeautifulSoup for web parsing
- Tkinter for the GUI
- Factorio community for feedback and suggestions
- Bug Reports: Open an issue on GitHub
- Feature Requests: Discuss in GitHub Discussions
- Questions: Check existing issues or open a Discussion
Enjoy managing your Factorio mods! ๐ฎ
Made with โค๏ธ for the Factorio community