An open API service indexing awesome lists of open source software.

https://github.com/potlitel/gitproxymanager

Gestor de proxy para Git con interfaz grรกfica
https://github.com/potlitel/gitproxymanager

desktop-app git mvvm ui wpf-application wpf-ui

Last synced: about 19 hours ago
JSON representation

Gestor de proxy para Git con interfaz grรกfica

Awesome Lists containing this project

README

          

# ๐Ÿš€ Git Proxy Manager

> ๐ŸŽฏ **Gestiona tu proxy de Git de forma sencilla y elegante**

![.NET](https://img.shields.io/badge/.NET-10.0-purple?style=flat-square&logo=dotnet)
![WPF](https://img.shields.io/badge/WPF-Modern-blue?style=flat-square&logo=windows)
![License](https://img.shields.io/badge/License-MIT-green?style=flat-square)
![Status](https://img.shields.io/badge/Status-Active-brightgreen?style=flat-square)

---

## ๐Ÿ“‹ Tabla de Contenidos

- [โœจ Descripciรณn](#-descripciรณn)
- [๐ŸŽฏ Caracterรญsticas](#-caracterรญsticas)
- [๐Ÿ—๏ธ Arquitectura](#๏ธ-arquitectura)
- [๐Ÿงฉ Patrรณn MVVM](#-patrรณn-mvvm)
- [๐Ÿ“ฆ Estructura del Proyecto](#-estructura-del-proyecto)
- [๐Ÿ”ง Clases Principales](#-clases-principales)
- [๐Ÿš€ Instalaciรณn](#-instalaciรณn)
- [๐Ÿ“ฆ Instalador MSI](#-instalador-msi)
- [๐Ÿ’ป Uso](#-uso)
- [โš™๏ธ Configuraciรณn](#๏ธ-configuraciรณn)
- [๐ŸŽจ Diseรฑo UI/UX](#-diseรฑo-uiux)
- [๐Ÿ› ๏ธ Tecnologรญas](#๏ธ-tecnologรญas)
- [๐Ÿ“ธ Capturas](#-capturas)
- [ Roadmap](#-roadmap)
- [๐Ÿ› Known Issues](#-known-issues)
- [๐Ÿ“ License](#-license)

---

## โœจ Descripciรณn

**Git Proxy Manager** es una aplicaciรณn de escritorio para Windows que te permite gestionar la configuraciรณn de proxy de Git de forma visual e intuitiva.

ยฟCansado de escribir comandos cada vez que cambias de red? ยฟOlvidas si el proxy estรก activado o desactivado?

**ยกEsta app es para ti!** ๐ŸŽ‰

### ๐Ÿ”ฅ ยฟPor quรฉ usar Git Proxy Manager?

| Sin Git Proxy Manager | Con Git Proxy Manager |
|:---------------------:|:---------------------:|
| ๐Ÿ˜ซ Escribir comandos manualmente | ๐ŸŽฏ Un solo clic |
| ๐Ÿค” Recordar IPs y puertos | ๐Ÿ’พ Configuraciรณn guardada |
| ๐Ÿ˜ฐ Olvidar activar/desactivar | ๐Ÿ”„ Toggle instantรกneo |
| ๐Ÿšซ Sin indicador visual | ๐Ÿ“Š System tray informativo |

---

## ๐ŸŽฏ Caracterรญsticas

### ๐ŸŒŸ Funcionalidades Principales

- **๐Ÿ”˜ Toggle Button** - Activa/desactiva el proxy con un solo clic
- **๐Ÿ“ Configuraciรณn de Proxy** - Host y puerto personalizables
- **๐Ÿ–ฅ๏ธ System Tray** - Icono en la bandeja del sistema con estado actual
- **๐Ÿ’พ Persistencia** - La configuraciรณn se guarda automรกticamente
- **๐ŸŽจ UI Moderna** - Tema dark con MahApps.Metro
- **โšก Rendimiento** - Ligero y rรกpido

### ๐Ÿ“Š System Tray

El icono en la bandeja del sistema muestra:

| Estado | Color | Significado |
|:------:|:-----:|:------------|
| ๐ŸŸข | Verde | Proxy activo |
| โšช | Gris | Proxy inactivo |

**Menรบ contextual:**
- ๐Ÿ“‚ Abrir ventana principal
- ๐Ÿ”€ Habilitar/Desactivar proxy
- โŒ Salir

---

## ๐Ÿ—๏ธ Arquitectura

### ๐Ÿ“ Diagrama de Arquitectura

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ ๐Ÿ–ผ๏ธ Presentation Layer โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ MainWindow.xaml โ”‚ โ”‚ App.xaml.cs โ”‚ โ”‚
โ”‚ โ”‚ (Vista Principal)โ”‚ โ”‚ (System Tray) โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚ โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚ โ”‚
โ”‚ โ–ผ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ ๐Ÿ“ฆ ViewModels โ”‚ โ”‚
โ”‚ โ”‚ (MainViewModel.cs) โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ โ–ผ ๐Ÿ”ง Service Layer โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ ๐Ÿ“‹ Services โ”‚ โ”‚
โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚
โ”‚ โ”‚ โ”‚GitProxy โ”‚ โ”‚ Config โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ โ”‚Service โ”‚ โ”‚ Service โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ โ–ผ ๐Ÿ“ Data Layer โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ ๐Ÿ’พ Models โ”‚ โ”‚
โ”‚ โ”‚ (ProxyConfig.cs) โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ ๐Ÿ“„ Config File โ”‚ โ”‚
โ”‚ โ”‚ %AppData%\GitProxyManager\ โ”‚ โ”‚
โ”‚ โ”‚ config.json โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

### ๐Ÿ”„ Flujo de Datos

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ User โ”‚โ”€โ”€โ”€โ–ถโ”‚ View โ”‚โ”€โ”€โ”€โ–ถโ”‚ ViewModelโ”‚โ”€โ”€โ”€โ–ถโ”‚ Service โ”‚
โ”‚ Action โ”‚ โ”‚ (XAML) โ”‚ โ”‚ (C#) โ”‚ โ”‚ (C#) โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”‚ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”‚ Model โ”‚โ—€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”‚(ProxyConfig)โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”‚
โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ File โ”‚
โ”‚(JSON) โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

---

## ๐Ÿงฉ Patrรณn MVVM

### ๐Ÿ“– ยฟQuรฉ es MVVM?

**MVVM** (Model-View-ViewModel) es un patrรณn de arquitectura de software que separa la lรณgica de negocio de la interfaz de usuario.

### ๐Ÿ”— Componentes en Git Proxy Manager

| Componente | Archivo | Responsabilidad |
|:----------:|:-------:|:----------------|
| **Model** ๐Ÿ“ฆ | `ProxyConfig.cs` | Datos de configuraciรณn |
| **View** ๐Ÿ–ผ๏ธ | `MainWindow.xaml` | Interfaz de usuario |
| **ViewModel** ๐Ÿง  | `MainViewModel.cs` | Lรณgica de presentaciรณn |

### ๐Ÿ“Š Diagrama MVVM

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ MVVM โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ โ”‚otify โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ VIEW โ”‚โ—€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”‚ VIEWMODEL โ”‚ โ”‚
โ”‚ โ”‚ (XAML/C#) โ”‚ Binding โ”‚ (C#) โ”‚ โ”‚
โ”‚ โ”‚ โ”‚โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ถโ”‚ โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚ โ”‚ โ”‚
โ”‚ โ”‚ โ”‚ โ”‚
โ”‚ โ–ผ โ–ผ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ User โ”‚ โ”‚ MODEL โ”‚ โ”‚
โ”‚ โ”‚ Interface โ”‚ โ”‚ (Data) โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

### ๐ŸŽฏ Beneficios del MVVM en nuestro proyecto

- โœ… **Separaciรณn de responsabilidades** - Cada componente tiene un rol claro
- โœ… **Testabilidad** - Podemos probar el ViewModel sin la UI
- โœ… **Mantenibilidad** - Fรกcil de modificar y extender
- โœ… **Reutilizaciรณn** - El ViewModel puede usarse en diferentes Vistas

---

## ๐Ÿ“ฆ Estructura del Proyecto

```
GitProxyManager/
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Models/
โ”‚ โ””โ”€โ”€ ๐Ÿ“„ ProxyConfig.cs # Modelo de datos
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Services/
โ”‚ โ”œโ”€โ”€ ๐Ÿ“„ GitProxyService.cs # Servicio de git
โ”‚ โ””โ”€โ”€ ๐Ÿ“„ ConfigService.cs # Servicio de configuraciรณn
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ ViewModels/
โ”‚ โ””โ”€โ”€ ๐Ÿ“„ MainViewModel.cs # ViewModel principal
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Resources/
โ”‚ โ””โ”€โ”€ ๐Ÿ“ Icons/ # Iconos de la app
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Converters.cs # Convertidores de datos
โ”œโ”€โ”€ ๐Ÿ“„ App.xaml # Recursos de la aplicaciรณn
โ”œโ”€โ”€ ๐Ÿ“„ App.xaml.cs # Lรณgica de inicio
โ”œโ”€โ”€ ๐Ÿ“„ MainWindow.xaml # Ventana principal
โ”œโ”€โ”€ ๐Ÿ“„ MainWindow.xaml.cs # Code-behind de ventana
โ””โ”€โ”€ ๐Ÿ“„ GitProxyManager.csproj # Archivo de proyecto
```

---

## ๐Ÿ”ง Clases Principales

### ๐Ÿ“ฆ ProxyConfig.cs

```csharp
namespace GitProxyManager.Models;

public class ProxyConfig
{
public bool IsEnabled { get; set; }
public string Host { get; set; } = string.Empty;
public int Port { get; set; } = 3128;
}
```

**Descripciรณn:** Modelo que representa la configuraciรณn del proxy.

| Propiedad | Tipo | Descripciรณn |
|:---------:|:----:|:------------|
| `IsEnabled` | `bool` | Estado del proxy (activado/desactivado) |
| `Host` | `string` | Direcciรณn del servidor proxy |
| `Port` | `int` | Puerto del proxy (default: 3128) |

---

### ๐Ÿ”ง GitProxyService.cs

```csharp
namespace GitProxyManager.Services;

public static class GitProxyService
{
public static void ApplyProxy(ProxyConfig config);
public static void RemoveProxy();
public static ProxyConfig ReadCurrentConfig();
}
```

**Descripciรณn:** Servicio estรกtico que interactรบa con git para gestionar el proxy.

| Mรฉtodo | Descripciรณn |
|:------:|:------------|
| `ApplyProxy()` | Aplica la configuraciรณn de proxy a git |
| `RemoveProxy()` | Elimina la configuraciรณn de proxy de git |
| `ReadCurrentConfig()` | Lee la configuraciรณn actual de git |

---

### ๐Ÿ’พ ConfigService.cs

```csharp
namespace GitProxyManager.Services;

public static class ConfigService
{
public static ProxyConfig Load();
public static void Save(ProxyConfig config);
}
```

**Descripciรณn:** Servicio para persistir la configuraciรณn en disco.

| Mรฉtodo | Descripciรณn |
|:------:|:------------|
| `Load()` | Carga la configuraciรณn desde el archivo JSON |
| `Save()` | Guarda la configuraciรณn en el archivo JSON |

**Ubicaciรณn del archivo:** `%AppData%\GitProxyManager\config.json`

---

### ๐Ÿง  MainViewModel.cs

```csharp
namespace GitProxyManager.ViewModels;

public partial class MainViewModel : ObservableObject
{
[ObservableProperty]
private bool _isEnabled;

[ObservableProperty]
private string _host = string.Empty;

[ObservableProperty]
private int _port = 3128;

[ObservableProperty]
private string _statusMessage = string.Empty;

[RelayCommand]
private void Apply();

[RelayCommand]
private void Reset();

[RelayCommand]
private void ShowWindow();
}
```

**Descripciรณn:** ViewModel principal que maneja la lรณgica de presentaciรณn.

| Propiedad/Mรฉtodo | Descripciรณn |
|:----------------:|:------------|
| `IsEnabled` | Estado del toggle de proxy |
| `Host` | Texto del host del proxy |
| `Port` | Puerto del proxy |
| `StatusMessage` | Mensaje de estado para el usuario |
| `Apply` | Comando para aplicar configuraciรณn |
| `Reset` | Comando para restablecer configuraciรณn |
| `ShowWindow` | Comando para mostrar la ventana |

---

## ๐Ÿš€ Instalaciรณn

### ๐Ÿ“‹ Requisitos Previos

- **Windows 10/11** (64-bit)
- **.NET 10.0 Runtime** o superior
- **Git** instalado y configurado

### ๐Ÿ“ฅ Opciรณn 1: Descarga Directa

1. Ve a la secciรณn [Releases](https://github.com/tu-usuario/GitProxyManager/releases)
2. Descarga `GitProxyManager-v1.0.0-setup.exe`
3. Ejecuta el instalador
4. Sigue las instrucciones

### ๐Ÿ“ฅ Opciรณn 2: Compilaciรณn Manual

```powershell
# ๐Ÿ“‚ Clona el repositorio
git clone https://github.com/tu-usuario/GitProxyManager.git

# ๐Ÿ“‚ Navega al directorio
cd GitProxyManager

# ๐Ÿ”จ Compila el proyecto
dotnet build -c Release

# ๐Ÿš€ Ejecuta la aplicaciรณn
dotnet run
```

---

## ๐Ÿ“ฆ Instalador MSI

### ๐Ÿ“‹ Resumen del Instalador

| Propiedad | Valor |
|:---------:|:------|
| **๐Ÿ“ฆ Archivo** | `GitProxyManager-v1.0.0-Setup.msi` |
| **๐Ÿ“ Tamaรฑo** | `0.98 MB` |
| **๐Ÿ—๏ธ Plataforma** | `x64` |
| **๐Ÿ”ง Herramienta** | `WiX Toolset v5` |

### ๐Ÿ“‚ Contenido del MSI

| Componente | Descripciรณn |
|:----------:|:------------|
| ๐Ÿ“ฆ **App** | Ejecutable + DLLs en `Program Files\GitProxyManager` |
| ๐Ÿ”— **Start Menu** | Acceso directo + Desinstalar en Menรบ Inicio |
| ๐Ÿ“‹ **Registry** | Entradas de desinstalaciรณn en Windows |

### ๐Ÿ› ๏ธ Regenerar el MSI

```powershell
# ๐Ÿ”จ Compilar app en Release
dotnet build "C:\dev\GitProxyManager\GitProxyManager.csproj" -c Release

# ๐Ÿ“ฆ Compilar MSI
dotnet build "C:\dev\GitProxyManager\installer\GitProxyManager.Installer.wixproj" -c Release
```

### ๐Ÿ“ Ubicaciรณn del MSI

```
C:\dev\GitProxyManager\installer\bin\Release\GitProxyManager-v1.0.0-Setup.msi
```

### ๐Ÿ”— Caracterรญsticas del Instalador

- โœ… **Instalaciรณn silenciosa** - `msiexec /i GitProxyManager-v1.0.0-Setup.msi /quiet`
- โœ… **Desinstalaciรณn limpia** - Desde Panel de Control o Menรบ Inicio
- โœ… **Actualizaciรณn automรกtica** - Detecta versiones previas
- โœ… **PerUser** - No requiere permisos de administrador
- โœ… **Icono personalizado** - Icono representativo de proxy/red

### ๐ŸŽจ Icono de la Aplicaciรณn

La aplicaciรณn incluye un icono personalizado que representa:
- ๐Ÿ”ต **Cรญrculo azul** - Representa la conexiรณn de red
- ๐ŸŸข **Lรญneas verdes** - Simbolizan el flujo de datos
- ๐ŸŸก **Flecha amarilla** - Indica direcciรณn del proxy

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚
โ”‚ โ”‚ โ•โ•โ•โ•โ•โ•โ• โ”‚ โ”‚
โ”‚ โ”‚ โ•โ•โ•โ•โ•โ•โ• โ”‚ โ”‚
โ”‚ โ”‚ โ”€โ”€โ–ถ โ”‚ โ”‚
โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

---

## ๐Ÿ’ป Uso

### ๐ŸŽฌ Primeros Pasos

1. **Inicia la aplicaciรณn**
- El รญcono aparecerรก en la bandeja del sistema
- El รญcono serรก gris (proxy desactivado)

2. **Configura tu proxy**
- Haz clic derecho en el รญcono de la bandeja
- Selecciona "Abrir"
- Ingresa el host y puerto del proxy
- Haz clic en "Aplicar"

3. **Activa/Desactiva el proxy**
- Usa el toggle button en la ventana principal
- O usa el menรบ contextual del system tray

### ๐Ÿ“Š Indicadores del System Tray

| Estado | Acciรณn |
|:------:|:-------|
| ๐ŸŸข Verde | Proxy activo - Las operaciones de git pasan por el proxy |
| โšช Gris | Proxy inactivo - Git usa conexiรณn directa |

### โŒจ๏ธ Atajos de Teclado

| Tecla | Acciรณn |
|:-----:|:-------|
| `Doble clic` | Abrir ventana principal |
| `Clic derecho` | Menรบ contextual |

---

## โš™๏ธ Configuraciรณn

### ๐Ÿ“ Archivo de Configuraciรณn

**Ubicaciรณn:** `%AppData%\GitProxyManager\config.json`

```json
{
"IsEnabled": true,
"Host": "172.16.65.62",
"Port": 3128
}
```

### ๐Ÿ”ง Configuraciรณn de Git

La aplicaciรณn modifica la configuraciรณn global de git:

```ini
# ~/.gitconfig
[http]
proxy = http://172.16.65.62:3128
[https]
proxy = http://172.16.65.62:3128
```

### ๐ŸŽฏ Configuraciรณn por Defecto

| Parรกmetro | Valor por Defecto | Descripciรณn |
|:---------:|:-----------------:|:------------|
| `IsEnabled` | `false` | Proxy desactivado |
| `Host` | `""` | Sin host configurado |
| `Port` | `3128` | Puerto estรกndar de Squid |

---

## ๐ŸŽจ Diseรฑo UI/UX

### ๐ŸŽจ Tema Dark (Catppuccin Mocha)

| Color | Hex | Uso |
|:-----:|:---:|:----|
| ๐Ÿ”ต Azul | `#89B4FA` | Acentos principales |
| ๐ŸŸฃ Morado | `#CBA6F7` | Elementos secundarios |
| ๐ŸŸข Verde | `#A6E3A1` | Estados exitosos |
| ๐ŸŸ  Naranja | `#FAB387` | Advertencias |
| โšซ Background | `#1E1E2E` | Fondo principal |
| โฌœ Texto | `#CDD6F4` | Texto principal |

### ๐Ÿ–ผ๏ธ Componentes UI

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Git Proxy Manager โ”€ โ–ก X โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ ๐Ÿ”˜ Proxy habilitado [=====โ—‹] ON โ”‚ โ”‚
โ”‚ โ”‚ ๐ŸŸข โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ Proxy: [172.16.65.62 ] Puerto: [3128 ] โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ Aplicar โ”‚ โ”‚ Restablecer โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚ โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚ โ”‚ ๐ŸŸข Proxy activo: 172.16.65.62:3128 โ”‚ โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

---

## ๐Ÿ› ๏ธ Tecnologรญas

### ๐Ÿ“ฆ Dependencias

| Tecnologรญa | Versiรณn | Propรณsito |
|:----------:|:-------:|:----------|
| ![.NET](https://img.shields.io/badge/.NET-10.0-purple) | 10.0 | Framework runtime |
| ![WPF](https://img.shields.io/badge/WPF-Modern-blue) | - | UI Framework |
| ![MahApps](https://img.shields.io/badge/MahApps.Metro-2.4.11-orange) | 2.4.11 | UI Controls |
| ![Hardcodet](https://img.shields.io/badge/Hardcodet.NotifyIcon-2.0.1-red) | 2.0.1 | System Tray |
| ![CommunityToolkit](https://img.shields.io/badge/CommunityToolkit.Mvvm-8.4.2-green) | 8.4.2 | MVVM Helpers |

### ๐Ÿ”ง Herramientas de Desarrollo

| Herramienta | Propรณsito |
|:-----------:|:----------|
| **Visual Studio 2022** | IDE de desarrollo |
| **Git** | Control de versiones |
| **PowerShell** | Scripts de automatizaciรณn |

---

## ๐Ÿ“ธ Capturas

### ๐Ÿ–ผ๏ธ Ventana Principal

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Git Proxy Manager โ”‚
โ”‚ โ”‚
โ”‚ โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•— โ”‚
โ”‚ โ•‘ ๐Ÿ”˜ Proxy habilitado [=====โ—‹] ON โ•‘ โ”‚
โ”‚ โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ• โ”‚
โ”‚ โ”‚
โ”‚ โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•— โ”‚
โ”‚ โ•‘ Proxy: [172.16.65.62 ] Puerto: [3128 ] โ•‘ โ”‚
โ”‚ โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ• โ”‚
โ”‚ โ”‚
โ”‚ โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•— โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•— โ”‚
โ”‚ โ•‘ Aplicar โ•‘ โ•‘ Restablecer โ•‘ โ”‚
โ”‚ โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ• โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ• โ”‚
โ”‚ โ”‚
โ”‚ ๐ŸŸข Proxy activo: 172.16.65.62:3128 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

### ๐Ÿ–ฅ๏ธ System Tray

```
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ ๐Ÿ“‚ Abrir โ”‚
โ”‚โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”‚
โ”‚ โ˜‘ Habilitar Proxy โ”‚
โ”‚โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”‚
โ”‚ โŒ Salir โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
```

---

## ๐Ÿ—บ๏ธ Roadmap

### โœ… v1.0.0 (Actual)

- [x] Toggle button para proxy
- [x] Configuraciรณn de host y puerto
- [x] System tray con menรบ contextual
- [x] Persistencia de configuraciรณn
- [x] Tema dark moderno

### ๐Ÿ”œ v1.1.0 (Prรณximo)

- [ ] Mรบltiples perfiles de proxy
- [ ] Detecciรณn automรกtica de red
- [ ] Notificaciones de cambio de estado
- [ ] Inicio automรกtico con Windows

### ๐Ÿš€ v2.0.0 (Futuro)

- [ ] Soporte multiplataforma (Linux/macOS)
- [ ] Configuraciรณn por repositorio
- [ ] Integraciรณn con VPN
- [ ] Logs de actividad
- [ ] Temas personalizables

---

## ๐Ÿ› Known Issues

### โš ๏ธ Problemas Conocidos

| Issue | Estado | Soluciรณn |
|:-----:|:------:|:---------|
| #1 - No detecta proxy en WSL | ๐Ÿ”„ En progreso | Usar proxy local |
| #2 - รcono no aparece en VM | ๐Ÿ“ Documentado | Agregar excepciรณn en antivirus |

### ๐Ÿ’ก Soluciones Comunes

**Problema:** El proxy no se aplica correctamente
```powershell
# Soluciรณn: Verificar configuraciรณn de git
git config --global --get http.proxy
git config --global --get https.proxy
```

**Problema:** La app no inicia con Windows
```
Soluciรณn: Agregar a Inicio automรกtico
1. Win + R โ†’ shell:startup
2. Crear acceso directo a GitProxyManager.exe
```

---

## ๐Ÿค Contribuir

ยกLas contribuciones son bienvenidas! ๐ŸŽ‰

### ๐Ÿ“‹ Guรญa de Contribuciรณn

1. **Fork** el repositorio
2. **Crea** una branch para tu feature (`git checkout -b feature/AmazingFeature`)
3. **Commit** tus cambios (`git commit -m 'Add some AmazingFeature'`)
4. **Push** a la branch (`git push origin feature/AmazingFeature`)
5. **Abre** un Pull Request

### ๐Ÿ“ Convenciones

- **Commits:** Usar [Conventional Commits](https://www.conventionalcommits.org/)
- **Cรณdigo:** Seguir [.NET Coding Conventions](https://learn.microsoft.com/dotnet/csharp/fundamentals/coding-style/coding-conventions)
- **PRs:** Incluir descripciรณn clara y testing

---

## ๐Ÿ“Š Changelog

### [1.0.0] - 2026-06-19

#### โœ… Added
- Toggle button para activar/desactivar proxy
- Configuraciรณn de host y puerto
- System tray con menรบ contextual
- Persistencia de configuraciรณn en JSON
- Tema dark con MahApps.Metro

#### ๐Ÿ”ง Changed
- Primera versiรณn estable

#### ๐Ÿ› Fixed
- N/A (primera versiรณn)

---

## ๐Ÿ“ License

```
MIT License

Copyright (c) 2026 Git Proxy Manager

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
```

---

## ๐Ÿ™ Agradecimientos

- [MahApps.Metro](https://mahapps.com/) - UI Controls increรญbles
- [Hardcodet.NotifyIcon](https://github.com/hardcodet/wpf-notifyicon) - System Tray para WPF
- [CommunityToolkit.Mvvm](https://learn.microsoft.com/dotnet/communitytoolkit/mvvm/) - Helpers MVVM
- [Catppuccin](https://catppuccin.com/) - Tema de colores hermoso

---

## ๐Ÿ“ง Contacto

**Tu Nombre** - @tu_usuario - tu@email.com

๐Ÿ”— **Repo:** [https://github.com/tu-usuario/GitProxyManager](https://github.com/tu-usuario/GitProxyManager)

---

**โญ Si te gusta este proyecto, ยกdale una estrella! โญ**

Hecho con โค๏ธ y โ˜•