HHVM and Hack Documentation

Hack

  • Getting Started

  • Control Flow

  • Classes, Interfaces, Traits

    • Classes

      Classes provide a way to group functionality and state together.
    • Traits And Interfaces

      Implementing class capabilities and optimizing code reuse.
    • Attributes

      Attaching metadata to Hack programs, built-in attributes and defining your own.
    • XHP

      Safe, composable HTML templating.
  • Types and Generics

    • Types

      The type checker.
    • Generics

      Generic types, where constraints, and variance.
    • Contexts And Capabilities

      A generalized system for the description and enforcement of permissions and restrictions of a context.
    • Reified Generics

      Generics with type information accessible at runtime.
  • Advanced Features

    • Readonly

      Specialized feature for performantly controlling object mutability
  • Experimental Additions

Hack API Reference

Full reference docs for all functions, classes, interfaces, and traits in the Hack language.

Hack Standard Library Reference

Full reference docs for all functions, classes, interfaces, and traits in the Hack Standard Library (HSL).

HHVM

  • Learn

    • Getting Started

      Get started with HHVM quickly and easily.
    • Installation

      How to install HHVM on a supported platform.
    • Basic Usage

      The easiest way to run HHVM, with sensible defaults.
    • Advanced Usage

      Advanced usage, with more ways to run and configure HHVM.
    • Configuration

      How to configure HHVM with various user-configurable options.
    • Extensions

      The built in and dynamic extensions that HHVM currently supports.
    • FAQ

      Common information and questions regarding HHVM.