explaingit

facebook/hhvm

📈 Trending18,628C++Audience · developerComplexity · 4/5ActiveLicenseSetup · hard

TLDR

HHVM is a runtime that executes Hack, a statically-typed language for web development. It uses just-in-time compilation to translate code into machine code at runtime for better performance.

Mindmap

mindmap
  root((repo))
    What it does
      Executes Hack code
      JIT compilation
      Web server integration
    How to use
      Install packages
      Compile from source
      Run with nginx/Apache
    Tech stack
      C++ runtime
      Proxygen server
      FastCGI interface
    Use cases
      Web applications
      Command-line scripts
      High-performance services

Things people build with this

USE CASE 1

Build high-performance web applications using Hack's static typing and modern language features.

USE CASE 2

Run Hack scripts from the command line for automation and scripting tasks.

USE CASE 3

Deploy web services with built-in Proxygen server or integrate with existing nginx/Apache infrastructure.

Tech stack

C++HackProxygenFastCGIJIT compilation

Getting it running

Difficulty · hard Time to first run · 1day+

Building HHVM from source requires C++ compilation, multiple dependencies, and significant disk/memory resources; pre-built binaries may be available but integration with existing projects is non-trivial.

HHVM is licensed under the PHP and Zend licenses; the Hack typechecker and standard library are under the MIT license, allowing free use with attribution.

In plain English

HHVM is an open-source virtual machine, a runtime environment, for executing programs written in Hack, a programming language developed by Meta (Facebook). A virtual machine in this context is the software layer that reads and runs code, similar to how the Java runtime executes Java programs. HHVM uses just-in-time compilation, which means it translates Hack code into machine code at runtime rather than ahead of time, aiming for better performance while keeping the development experience flexible. Hack is a statically-typed language designed for web development. HHVM is designed to run alongside a web server: it includes a built-in server called Proxygen, or can work with nginx or Apache via the FastCGI interface. Standalone Hack scripts can also be run directly from the command line. HHVM can be installed from prebuilt packages or compiled from source. It is licensed under the PHP and Zend licenses, with the Hack typechecker and standard library under the MIT license.

Copy-paste prompts

Prompt 1
How do I install HHVM and set up a basic Hack web application that runs on Proxygen?
Prompt 2
Show me how to configure HHVM to work with nginx using FastCGI for production deployments.
Prompt 3
What are the key differences between Hack and PHP, and how does HHVM's JIT compilation improve performance?
Prompt 4
How do I write and run a standalone Hack script from the command line using HHVM?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.