El cliente TUI definitivo para explorar y probar APIs. Toda la potencia de Postman, el flujo de Apidog y la velocidad de la terminal. Hecho en Colombia con Rust.
Explorá nuestra documentación completa para sacarle el jugo a modjo:
- Sitio oficial: modjo.jemg.dev
- Guía de instalación, atajos, temas y más en la wiki
- Interfaz TUI intuitiva: Navegá tus proyectos de API con una interfaz de terminal limpia y rápida. Modos Normal/Inserción estilo Vim.
- Pruebas de API completas: Creá, administrá y ejecutá peticiones HTTP con soporte para métodos GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, headers personalizados y cuerpo a la medida.
- Manejo de entornos: Definí variables de entorno con
{{nombre_var}}en URL, headers y cuerpo, y cambialas desde.modjo/env.toml. - Persistencia local: Toda la información se guarda en la carpeta
.modjo/de tu proyecto (historial, colecciones, variables de entorno). Nada sale de tu máquina. - Resaltado de sintaxis JSON: Las respuestas JSON se muestran con colores por tipo de dato (claves, strings, números, booleanos, null).
- Soporte para mouse: Clic para enfocar paneles, hover para resaltar, arrastre para redimensionar, scroll para navegar respuestas.
- Temas y dualidad de idiomas: Cinco temas (OC-2 Dark, OC-2 Light, Catppuccin, Nord, Dracula) e interfaz en español colombiano o inglés.
- Exportación e importación: Compartí snapshots de tus peticiones con archivos
modjo-export.json/modjo-import.json. - Paleta de comandos:
Ctrl+Pabre una lista de todas las acciones disponibles con sus atajos. - Deshacer y portapapeles interno: Ctrl+Z /
upara deshacer,yyppara copiar y pegar. - Multiplataforma: Corre en Windows, macOS y Linux. Solo necesitás Rust y una terminal con soporte Unicode.
| Razón | Descripción |
|---|---|
| Velocidad | Arranque y ejecución al instante. Sin navegador, sin Electron, sin esperas. |
| Flexibilidad | Variables de entorno, temas, atajos personalizables y flujo modal. |
| Colaboración | Snapshots exportables para compartir peticiones con tu equipo. |
| Código abierto | MIT. La comunidad decide el rumbo. |
| Hecho en Colombia | Por dev colombiano, pa' todo el mundo. |
cargo install modjoNecesitás Rust (edición 2024) instalado.
git clone https://github.com/jemgdevp/modjo.git
cd modjo
cargo build --release
./target/release/modjoDescargá el binario para tu sistema desde la página de Releases.
cargo run
# o si ya está instalado:
modjo- Seleccioná el método HTTP con
Ctrl+My escribí la URL. - Agregá headers y cuerpo en los paneles correspondientes.
- Presioná
rpara enviar la petición. - Revisá estado, tiempo, tamaño y la respuesta en el panel de respuesta.
- Presioná
cpara guardar la petición actual en colecciones. - Presioná
Entersobre un ítem del sidebar para cargarlo de vuelta.
| Tecla | Acción |
|---|---|
q |
Salir de modjo |
i |
Entrar en modo inserción |
Tab |
Rotar el foco entre paneles |
1 / 2 / 3 / 4 |
Ir a la pestaña de Sidebar, Request, Body o Response |
r |
Enviar la petición actual |
c |
Guardar petición actual en colecciones |
w |
Guardar todo (historial + colecciones + variables) |
o |
Importar snapshot |
e |
Exportar snapshot |
m |
Abrir selector de método HTTP |
f |
Alternar formato JSON (pretty / raw) |
T |
Abrir selector de tema |
L |
Abrir selector de idioma |
? |
Mostrar ayuda rápida |
h / l |
Navegar items del sidebar (historial / colecciones) |
→ / ← |
Igual que h/l |
↑ / ↓ |
Navegar entre items del sidebar |
Enter |
Cargar el ítem seleccionado del sidebar |
y / p |
Copiar / Pegar (portapapeles interno) |
u / Ctrl+Z |
Deshacer |
Ctrl+P |
Abrir paleta de comandos |
Ctrl+A |
Sugerencia de IA |
| Tecla | Acción |
|---|---|
Esc |
Volver a modo Normal |
Tab |
Salir del campo de texto actual |
Ctrl+Z |
Deshacer última edición |
Enter |
Insertar nueva línea en el campo |
| Teclas imprimibles | Insertar texto (autocompletado de corchetes y comillas) |
- Clic izquierdo: Selecciona el panel activo (sidebar, URL, headers, cuerpo, respuesta).
- Hover: Resalta los elementos interactivos de la interfaz.
- Arrastre: Redimensiona el ancho del sidebar y la altura de los paneles de headers/cuerpo/respuesta.
- Scroll: Navega el panel de respuesta y la lista del sidebar.
Los datos de la aplicación se guardan en la carpeta .modjo/ del directorio actual:
.modjo/
├── history.json # Historial de peticiones (máx. 150)
├── collections.json # Colecciones guardadas
└── env.toml # Variables de entorno
Interpolá variables en URL, headers y cuerpo con la sintaxis {{nombre_var}}.
Ejemplo de .modjo/env.toml:
api_url = "https://api.ejemplo.co/v2"
token = "bearer-abc123"Luego usalas así en la URL:
{{api_url}}/usuarios?auth={{token}}
src/
├── main.rs # Punto de entrada, ciclo principal y splash screen
├── app.rs # Estado de la aplicación, modelos y lógica de negocio
├── input.rs # Manejo de teclado (3 modos) y mouse (hover/clic/scroll/drag)
├── http/
│ ├── mod.rs # Declaración del módulo HTTP
│ └── client.rs # Cliente HTTP asíncrono (reqwest + tokio)
├── storage/
│ └── mod.rs # Persistencia en .modjo/ (JSON/TOML)
└── ui/
├── mod.rs # Renderizado principal de la interfaz
├── components.rs # Componentes de modales y overlays
├── splash.rs # Animación de carga al iniciar
└── theme.rs # Sistema de 5 temas
Este proyecto usa GitHub Actions para compilar y probar en cada push y PR contra main. Ver .github/workflows/rust.yml.
¿Encontraste un bug, tenés una idea o querés meterle mano al código? ¡Bienvenido! Leé CONTRIBUTING.md y el Código de Conducta.
modjo es software libre bajo la licencia MIT. Leé el archivo LICENSE para más detalles.
Creado con por Juan Esteban Manrique Giraldo desde Colombia para el mundo.