Repolode
digitallyinduced

digitallyinduced/ihp

Un framework web para Haskell con todo incluido y seguridad de tipos, que incorpora routing, vistas, modelos de PostgreSQL y un IDE de desarrollo.

Estrellas
5,379
Forks
226
Issues abiertos
287
Último commit
hace 22 horas

¿Qué es?

IHP es un framework web full-stack escrito en Haskell. Incluye routing, controladores, plantillas HTML con seguridad de tipos (HSX), modelos de base de datos en PostgreSQL, validación de formularios y autenticación, para que un proyecto ya tenga listas la mayoría de las piezas habituales de una aplicación web.

El framework incluye un IDE de desarrollo con un diseñador de esquemas para editar tablas mediante una interfaz gráfica o SQL sin procesar, generadores de código para controladores, vistas y migraciones, y un servidor de desarrollo con recarga en vivo. Auto Refresh permite actualizar las vistas cuando cambian los datos subyacentes, y un paquete de datasync ofrece sincronización en tiempo real mediante WebSockets.

Nix gestiona la cadena de herramientas, incluidos GHC y PostgreSQL, así que el entorno del proyecto se configura con `devenv up`. Para el despliegue se utiliza una herramienta basada en NixOS que aplica una configuración declarativa del servidor mediante SSH; también se admiten despliegues con Docker y en servidores físicos.

Funciones clave

  • 01Routing, consultas y plantillas HTML HSX con seguridad de tipos, comprobados en tiempo de compilación.
  • 02Diseñador visual de esquemas y generadores de código para controladores, vistas y migraciones.
  • 03Servidor de desarrollo con recarga en vivo y Auto Refresh para actualizar vistas en tiempo real.
  • 04Registro, inicio de sesión, formularios y validación integrados.
  • 05Entorno de desarrollo gestionado por Nix, con GHC y PostgreSQL incluidos.
  • 06Despliegue declarativo basado en NixOS con TLS mediante Let's Encrypt.

Casos de uso

  • Crear una aplicación web en Haskell conectada a una base de datos y con menos código repetitivo.
  • Equipos que necesitan un entorno de desarrollo reproducible y compartido entre distintas máquinas.
  • Proyectos que requieren actualizaciones de la interfaz en tiempo real vinculadas a datos de PostgreSQL.
  • Crear prototipos de funcionalidades web con asistencia de IA, donde el compilador comprueba el código generado.

Inicio rápido

  1. 1

    Instala el generador de proyectos con Nix

    nix profile install nixpkgs#ihp-new
  2. 2

    Crea un proyecto nuevo

    ihp-new myproject
  3. 3

    Entra en el proyecto e inicia el entorno de desarrollo

    cd myproject && devenv up

Antes de usarlo

  • Requiere Nix y Haskell, por lo que la curva de aprendizaje es pronunciada para quienes no conocen Haskell.

En colecciones

Temas

Preguntas frecuentes

¿Qué es ihp?
Un framework web para Haskell con todo incluido y seguridad de tipos, que incorpora routing, vistas, modelos de PostgreSQL y un IDE de desarrollo. IHP es un framework web full-stack escrito en Haskell. Incluye routing, controladores, plantillas HTML con seguridad de tipos (HSX), modelos de base de datos en PostgreSQL, validación de formularios y autenticación, para que un proyecto ya tenga listas la mayoría de las piezas habituales de una aplicación web.
¿ihp es gratuito? ¿Qué licencia tiene?
ihp es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿ihp sigue mantenido?
Mantenimiento activo. El último commit de ihp fue el 6 nov 2026.
¿Para qué puedo usar ihp?
Crear una aplicación web en Haskell conectada a una base de datos y con menos código repetitivo. Equipos que necesitan un entorno de desarrollo reproducible y compartido entre distintas máquinas. Proyectos que requieren actualizaciones de la interfaz en tiempo real vinculadas a datos de PostgreSQL. Crear prototipos de funcionalidades web con asistencia de IA, donde el compilador comprueba el código generado.
¿Cómo se instala ihp?
Instala el generador de proyectos con Nix: nix profile install nixpkgs#ihp-new Crea un proyecto nuevo: ihp-new myproject Entra en el proyecto e inicia el entorno de desarrollo: cd myproject && devenv up
¿Dónde consigo ihp?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/digitallyinduced/ihp

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados