Symfony is a PHP framework for building web and console applications, plus a set of reusable PHP components.
digitallyinduced/ihp
A batteries-included, type-safe web framework for Haskell with built-in routing, views, PostgreSQL models and a dev IDE.
- Stars
- 5,379
- Forks
- 226
- Open issues
- 287
- Last commit
- 2 hours ago
What is it?
IHP is a full-stack web framework written in Haskell. It bundles routing, controllers, type-safe HTML templating (HSX), database models on PostgreSQL, form validation and authentication, so a project starts with most common web app pieces already in place.
The framework includes a development IDE with a schema designer for editing tables through a GUI or raw SQL, code generators for controllers, views and migrations, and a live reload dev server. Auto Refresh lets views update when underlying data changes, and a datasync package provides real-time sync over WebSockets.
Nix manages the toolchain, including GHC and PostgreSQL, so a project environment is set up with `devenv up`. Deployment is handled through a NixOS-based tool that applies a declarative server configuration over SSH, with Docker and bare-metal deployments also supported.
Key features
- 01Type-safe routing, queries and HSX HTML templates checked at compile time.
- 02Visual schema designer and code generators for controllers, views and migrations.
- 03Live reload dev server and Auto Refresh for real-time views.
- 04Built-in signup, login, forms and validation.
- 05Nix-managed development environment including GHC and PostgreSQL.
- 06NixOS-based declarative deployment with TLS via Let's Encrypt.
Use cases
- Building a database-backed web app in Haskell with less boilerplate.
- Teams wanting a reproducible dev environment shared across machines.
- Projects that need real-time UI updates tied to PostgreSQL data.
- Prototyping AI-assisted web features where the compiler checks generated code.
Quick start
- 1
Install the project generator via Nix
nix profile install nixpkgs#ihp-new - 2
Create a new project
ihp-new myproject - 3
Enter the project and start the dev environment
cd myproject && devenv up
Things to know
- Requires Nix and Haskell, so the learning curve is steep for developers new to Haskell.
In collections
Topics
FAQ
- What is ihp?
- A batteries-included, type-safe web framework for Haskell with built-in routing, views, PostgreSQL models and a dev IDE. IHP is a full-stack web framework written in Haskell. It bundles routing, controllers, type-safe HTML templating (HSX), database models on PostgreSQL, form validation and authentication, so a project starts with most common web app pieces already in place.
- Is ihp free to use? What license does it have?
- ihp is open source under the MIT license. Check the license terms before using it in commercial products.
- Is ihp still maintained?
- Actively maintained. The last commit to ihp was on Nov 7, 2026.
- What can I use ihp for?
- Building a database-backed web app in Haskell with less boilerplate. Teams wanting a reproducible dev environment shared across machines. Projects that need real-time UI updates tied to PostgreSQL data. Prototyping AI-assisted web features where the compiler checks generated code.
- How do I install ihp?
- Install the project generator via Nix: nix profile install nixpkgs#ihp-new Create a new project: ihp-new myproject Enter the project and start the dev environment: cd myproject && devenv up
- Where can I get ihp?
- The source code and installation instructions are on GitHub: https://github.com/digitallyinduced/ihp
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Ruby on Rails is a full-stack MVC web framework for building database-backed web applications in Ruby.
A Python library for building full-stack web apps, with frontend and backend both written in Python.
A high-level Python web framework that encourages rapid development and clean, pragmatic design.
A PHP web application framework with expressive syntax, covering routing, ORM, migrations, queues, and real-time broadcasting.
A PHP web application framework with expressive syntax, covering routing, dependency injection, migrations, queues and broadcasting.