A lightweight, user-friendly tool that simplifies access to the I2P (Invisible Internet Project) network through automated I2Pd and Firefox configuration.
Project status: Early preview. Not yet published to PyPI; install-from-source is currently the supported path. Dashboard screenshot and installer commands show intended UX—functional coverage varies by platform and may require local I2Pd/Firefox setup.
- Interactive Dashboard - Clean terminal UI with real-time status updates
- One-Command Setup - Automated Firefox profile creation and hardening
- Maximum Privacy - WebRTC disabled, fingerprinting protection, no telemetry
- I2P Optimized - Pre-configured for I2P network with proper proxy settings
- Cross-Platform - Works on macOS, Linux, and Windows
- Lightweight - Only ~5MB with 4 dependencies
- Zero Cost - Completely free and open source
╔══════════════════════════════════════════════════════════╗
║ I2P EASY MANAGER v0.1.0 ║
╚══════════════════════════════════════════════════════════╝
┌─ Connection Status ────┐ ┌─ Network Info ──────────────┐
│ Status: ● CONNECTED │ │ Known Peers: 156 │
│ Router: Running │ │ Active Tunnels: 8 │
│ Proxy: 127.0.0.1:4444 │ │ ✓ Fully Integrated │
└────────────────────────┘ └─────────────────────────────┘
[1] Start I2P [5] View Configuration
[2] Stop I2P [6] View Logs
[3] Restart I2P [7] Reset Everything
[4] Launch I2P Browser [8] Help & About
[Q] Quit
Until the first PyPI release, use the “Install from Source” steps in Development.
Prerequisites:
- Python 3.8 or higher
- Firefox browser
- I2Pd daemon
Install I2P Manager:
pip install i2p-easy-managerRun Interactive Dashboard:
i2p-managerThat's it! The dashboard will guide you through first-time setup.
# Install dependencies
brew install python3 i2pd firefox
# Install I2P Manager (Future)
pip3 install i2p-easy-manager
# Run
i2p-manager# Install dependencies
sudo apt update
sudo apt install python3 python3-pip i2pd firefox
# Install I2P Manager (Future)
pip3 install i2p-easy-manager
# Run
i2p-manager# Install dependencies
sudo pacman -S python python-pip i2pd firefox
# Install I2P Manager (Future)
pip install i2p-easy-manager
# Run
i2p-manager- Install Python 3.8+ (check "Add to PATH")
- Install Firefox
- Install I2Pd
- Open PowerShell or Command Prompt: (Future)
pip install i2p-easy-manager
i2p-managerSimply run i2p-manager to launch the interactive dashboard:
i2p-managerDashboard Controls:
- Press
1-8to select menu options - Press
Rto refresh status - Press
Qto quit
All dashboard functions are available as standalone commands:
# Initialize I2P profile (first time only)
i2p-manager init
# Start I2P and launch Firefox
i2p-manager start
# Check connection status
i2p-manager status
# Launch Firefox with I2P profile (if I2P already running)
i2p-manager browser
# Stop I2P daemon
i2p-manager stop
# Restart I2P daemon
i2p-manager restart
# View I2P router logs
i2p-manager logs
i2p-manager logs -f # Follow logs in real-time
# Edit configuration
i2p-manager config
# Reset everything (removes profile and config)
i2p-manager reset
# Show help
i2p-manager --helpI2P Easy Manager applies maximum hardening to your Firefox profile:
Critical Protections:
- ✅ WebRTC disabled - Prevents IP leaks through proxy
- ✅ WebGL disabled - Prevents GPU fingerprinting
- ✅ All DNS through proxy - No DNS leaks
- ✅ No telemetry - Zero data sent to Mozilla
- ✅ No safe browsing - No external lookups
- ✅ Fingerprinting resistance - Makes your browser look generic
Privacy Features:
- ✅ Third-party cookies blocked
- ✅ Tracking protection (strict mode)
- ✅ HTTPS-only mode enabled
- ✅ Geolocation disabled
- ✅ No prefetching or speculation
I2P Compatibility:
- ✅ JavaScript enabled (required for I2P sites)
- ✅ Canvas enabled (many sites need it)
- ✅ Cookies allowed for .i2p domains
- ✅ Connection optimization for I2P latency
- Only the I2P Firefox profile is hardened
- Other Firefox profiles are not affected
- System traffic still uses regular internet
- Other applications are not proxied
| Feature | macOS | Linux | Windows |
|---|---|---|---|
| Dashboard | ✅ Full | ✅ Full | ✅ Full |
| I2Pd Management | ✅ Brew | ✅ Systemd | |
| Firefox Integration | ✅ Full | ✅ Full | ✅ Full |
| Profile Hardening | ✅ Full | ✅ Full | ✅ Full |
| Auto-start I2Pd | ✅ Yes | ✅ Yes | ❌ No |
| Log Viewer | ✅ Yes | ✅ Yes | ✅ Yes |
| Configuration | ✅ Full | ✅ Full | ✅ Full |
Legend:
- ✅ Full support
⚠️ Partial support (needs manual setup)- ❌ Not supported
Q: Is this a VPN?
A: No. This tool configures I2P, which is a separate anonymity network. I2P is different from VPNs and provides
anonymity for specific services rather than encrypting all traffic.
Q: Can I use I2P with other browsers?
A: This tool specifically configures Firefox. You can manually configure other browsers, but this tool only manages
Firefox profiles.
Q: What if I have multiple Firefox profiles?
A: This tool creates a dedicated i2p-secure profile. Your other profiles are not affected. They can coexist with the
I2P profile.
Q: Is I2P legal?
A: I2P itself is legal. However, how you use it may have legal implications depending on your jurisdiction. Always
comply with local laws.
Q: Can I use I2P on my phone?
A: This tool is for desktop/laptop. Mobile I2P is possible but not covered by this tool. Check the I2P website for
mobile options.
Q: Will this make me completely anonymous?
A: No tool makes you completely anonymous. This tool helps, but proper anonymity requires understanding I2P, avoiding
deanonymization attacks, and following best practices.
Q: Why is it slow?
A: I2P trades speed for anonymity. Latency is typically 2-3x higher than regular internet. This is by design to protect
your identity.
Q: Can I contribute?
A: Yes! See CONTRIBUTING.md for guidelines.
For security and privacy information, see SECURITY.md.
Key topics:
- What Firefox hardening protects against
- What this tool does NOT provide
- Safe usage practices
- Reporting security issues
- Installation Guide - Detailed setup instructions
- Usage Guide - Command reference and examples
- Development Guide - For contributors
- Testing Guide - How to run tests
- Security Guide - Privacy and security details
- Changelog - Version history
Configuration is stored at:
- macOS/Linux:
~/.config/i2p-manager/config.json - Windows:
%APPDATA%\i2p-manager\config.json
Default configuration:
{
"i2pd": {
"host": "127.0.0.1",
"http_port": 4444,
"https_port": 4444,
"socks_port": 4446,
"console_port": 7070
},
"firefox": {
"profile_name": "i2p-secure",
"harden_with_arkenfox": true
},
"dashboard": {
"refresh_interval": 5,
"show_welcome": true
}
}Edit configuration:
i2p-manager configOr manually edit the JSON file above.
# Check if I2Pd is installed
which i2pd # macOS/Linux
where i2pd # Windows
# Try starting manually
# macOS (Apple Silicon)
/opt/homebrew/opt/i2pd/bin/i2pd --daemon
# macOS (Intel)
/usr/local/opt/i2pd/bin/i2pd --daemon
# Linux
sudo systemctl start i2pd
# Windows - run i2pd.exe from install directory
# Check logs
i2p-manager logs# Verify Firefox is installed
which firefox # macOS/Linux
where firefox # Windows
# Reinitialize profile
i2p-manager reset
i2p-manager init- Wait 10-30 minutes after first I2Pd start (network integration)
- Check peer count: Run
i2p-manager status- need 50+ peers - Visit console: http://127.0.0.1:7070 to verify I2P is working
- Try restarting: Run
i2p-manager restart
- Ensure terminal window is at least 80x24 characters
- Try using command-line mode instead:
i2p-manager start
# Add your user to i2pd group (if it exists)
sudo usermod -a -G i2pd $USER
newgrp i2pd⏳ First time takes 10-30 minutes
When you first run I2P, the router needs to:
- Find other routers on the network
- Build encrypted tunnels
- Integrate into the network
This is normal and expected. Monitor progress:
i2p-manager statusOnce connected (50+ peers), visit:
- http://planet.i2p - I2P news aggregator
- http://i2pforum.i2p - Community forum
- http://127.0.0.1:7070 - Your I2P router console
- < 10 peers: Still connecting, wait longer
- 10-50 peers: Integrating into network
- 50+ peers: Fully integrated, ready to browse
- 100+ peers: Excellent connectivity
# Clone repository
git clone https://github.com/tundra-node/i2p-easy-manager.git
cd i2p-easy-manager
# Create virtual environment
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Install in editable mode with dev dependencies
pip install -e ".[dev]"
# Run
i2p-manager
# Or directly: python -m i2p_managerpytest
pytest --cov=i2p_manager # With coverageblack i2p_manager/
ruff check i2p_manager/i2p-easy-manager/
├── i2p_manager/ # Main package
│ ├── cli.py # CLI interface
│ ├── dashboard.py # Interactive TUI
│ ├── config.py # Configuration
│ ├── firefox.py # Firefox manager
│ ├── i2pd.py # I2Pd manager
│ ├── commands/ # CLI commands
│ └── data/ # Static files (Arkenfox)
├── tests/ # Test suite
├── docs/ # Documentation
└── pyproject.toml # Package config
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
Areas needing help:
- Testing on different systems
- Windows support improvements
- Documentation improvements
- Additional I2P site bookmarks
- Translation to other languages
- Python: 3.8 or higher
- Firefox: Any recent version
- I2Pd: 2.48 or higher
- OS: macOS 11+, Linux (Ubuntu 20.04+, Arch, Fedora), Windows 10+
Python Dependencies:
click- CLI frameworkrich- Terminal UIrequests- HTTP clientpsutil- Process management
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
This ensures the project remains free and open source forever.
This tool configures existing software (Firefox and I2Pd). Users are responsible for understanding the legal implications of anonymous networks in their jurisdiction.
The developers assume no liability for misuse.
Use responsibly and respect others' privacy.
- The I2P and I2Pd development teams
- Arkenfox project for Firefox hardening
- The privacy and security community
- All contributors to this project
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- I2P Forum: http://i2pforum.i2p (accessible via I2P network)
If you find this project useful, please consider giving it a star on GitHub!
Welcome to the Invisible Internet! 🚀