βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β βββββββ βββ ββββββββββββββββββ ββββββ ββββ ββββββββββββββββββββ β
β ββββββββββββ βββββββββββββββββββββββββββ βββββ ββββββββββββββββββββ β
β βββ ββββββ βββββββββ ββββββββββββββββββββββββββββ βββββββββ βββ β
β βββββ ββββββ βββββββββ ββββββββββββββββββββββββββββββββββββββ βββ β
β βββββββββββββββββββββββββββββ ββββββ βββ βββ ββββββββββββββ βββ β
β βββββββ βββββββ βββββββββββ ββββββ βββ βββ βββββββββββββ βββ β
β β
β π Network College CLI Tool π β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
A beautiful CLI tool for Quera Network College - GNS3 network exercises made easy!
Quera-Net is a developer-friendly CLI tool designed to simplify and automate GNS3-based networking exercises for Quera Network College. It removes the complexity of manual setup, letting you focus purely on learning and practicing networking concepts.
Whether you're a beginner or an advanced learner, Quera-Net streamlines environment setup, lesson management, and submission workflows into a smooth, guided experience.
Setting up networking labs can be time-consuming and error-prone. Quera-Net solves this by providing a fully automated, consistent, and visually appealing interface for managing your lab environment.
With Quera-Net, you can:
- β‘ Skip manual configuration and start instantly
- π Stay synced with the latest course requirements
- π§ͺ Experiment safely in isolated Docker environments
- π¨ Enjoy a modern, themed CLI experience
- π¦ Manage everything from setup to submission in one place
- π One-Command Setup - Initialize your entire GNS3 environment with a single command
- π Server-Synced Config - Automatically fetches latest configurations from Quera server
- π¨ Beautiful UI - Gorgeous terminal interface with multiple color themes
- π Smart Checks - Automatic system requirements verification
- π³ Docker Integration - Seamless Docker management
- π Easy Lessons - Setup and submit exercises effortlessly
- π Cross-Platform - Works on Linux, macOS, and Windows
Linux / macOS:
curl -fsSL https://raw.githubusercontent.com/dwin-gharibi/quera-net/main/scripts/install.sh | bashOr using wget:
wget -qO- https://raw.githubusercontent.com/dwin-gharibi/quera-net/main/scripts/install.sh | bashWindows (PowerShell as Administrator):
irm https://raw.githubusercontent.com/dwin-gharibi/quera-net/main/scripts/install.ps1 | iexpip install quera-netpipx install quera-netgit clone https://github.com/dwin-gharibi/quera-net.git
cd quera-net
pip install -e .quera-net initThis will:
- β Fetch latest configuration from Quera server
- β Check system requirements (RAM, OS, Docker)
- β Pull the required Docker image
- β Create configuration files
- β Start the GNS3 container
- β Open GNS3 in your browser
quera-net setup 295501Replace 295501 with your lesson ID from Quera.
quera-net submit 295501| Command | Description |
|---|---|
quera-net init |
π Initialize the environment |
quera-net setup <id> |
π Setup a lesson by ID |
quera-net submit <id> |
π€ Submit your solution |
quera-net status |
π Show environment status |
quera-net start |
|
quera-net stop |
βΉοΈ Stop GNS3 container |
quera-net restart |
π Restart GNS3 container |
quera-net logs |
π Show container logs |
quera-net open-gns3 |
π Open GNS3 in browser |
quera-net themes |
π¨ List available themes |
quera-net clean |
π§Ή Clean up containers |
quera-net init --skip-checks
quera-net init --no-pull
quera-net init --offline
quera-net init --force
quera-net logs --follow
quera-net logs --lines 100Quera-Net comes with beautiful color themes! Use the --theme flag with any command:
quera-net status --theme cyberpunk
quera-net init --theme matrix
quera-net setup 295501 --theme oceanAvailable themes:
| Theme | Description |
|---|---|
π£ quera |
Default - Elegant indigo and purple |
π’ matrix |
Hacker green vibes |
π΅ ocean |
Calm and professional blue |
π sunset |
Warm coral tones |
π‘ cyberpunk |
Neon pink and cyan |
Preview all themes:
quera-net themes| Requirement | Minimum |
|---|---|
| RAM | 4 GB |
| Disk Space | 10 GB |
| Docker | Latest |
| Python | 3.8+ |
- β Linux - Ubuntu, Debian, Fedora, CentOS, Arch, etc.
- β macOS - 10.15 (Catalina) and later
- β Windows - 10/11 with WSL2 and Docker Desktop
Quera-Net stores its configuration in ~/.quera-net/:
~/.quera-net/
βββ docker-compose.yml
βββ config_cache.json
βββ data/
βββ ...
The CLI fetches configuration from the Quera server including:
- Docker image versions
- System requirements
- docker-compose.yml content
Use --offline flag to skip server fetch and use cached/default values.
# Clone the repository
git clone https://github.com/dwin-gharibi/quera-net.git
cd quera-net
# Install with dev dependencies
make dev
# or
pip install -e ".[dev]"
# Run linting
make lint
# Run tests
make test
# Build package
make buildquera-net/
βββ quera_net/
β βββ __init__.py
β βββ cli.py
β βββ core/
β β βββ api.py
β β βββ config.py
β β βββ docker_manager.py
β β βββ system_check.py
β βββ ui/
β β βββ components.py
β β βββ themes.py
β βββ utils/
β βββ network.py
β βββ platform.py
βββ scripts/
β βββ install.sh
β βββ install.ps1
βββ .github/workflows/
β βββ ci.yml
β βββ publish.yml
β βββ release.yml
βββ pyproject.toml
βββ Makefile
βββ README.md
Linux:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# Log out and log back inmacOS/Windows: Download Docker Desktop
# Check logs
quera-net logs
# Restart container
quera-net restart
# Full reset
quera-net clean --all
quera-net init- Make sure the container is running:
quera-net status - Check if port 3080 is available
- Try restarting:
quera-net restart
# Add user to docker group
sudo usermod -aG docker $USER
# Log out and log back in- π Quera Network College
- π Report Issues
- π¦ PyPI Package
Made with β€οΈ by Quera
Happy Networking! π