# Welcome to the libuv documentation

## Overview

libuv is a multi-platform support library with a focus on asynchronous I/O. It was primarily developed for use by Node.js, but it’s also used by Luvit, Julia, uvloop, and others.

Note

In case you find errors in this documentation you can help by sending pull requests!

## Features

- Full-featured event loop backed by epoll, kqueue, IOCP, event ports.

- Asynchronous TCP and UDP sockets

- Asynchronous DNS resolution

- Asynchronous file and file system operations

- File system events

- ANSI escape code controlled TTY

- IPC with socket sharing, using Unix domain sockets or named pipes (Windows)

- Child processes

- Thread pool

- Signal handling

- High resolution clock

- Threading and synchronization primitives

## Documentation

- Design overview
- API documentation
- User guide
- Upgrading

## Downloads

libuv can be downloaded from here.

## Installation

Installation instructions can be found in the README.