# ngtcp2

> implementation of HTTP/3

**Wikidata**: [Q102489184](https://www.wikidata.org/wiki/Q102489184)  
**Source**: https://4ort.xyz/entity/ngtcp2

## Summary
ngtcp2 is a software library that implements HTTP/3, the latest version of the HTTP protocol designed to be more efficient over modern networks. It's free software distributed under the MIT license and is part of a larger ecosystem of networking libraries.

## Key Facts
- ngtcp2 is an implementation of HTTP/3, the third major version of the Hypertext Transfer Protocol
- It is free software distributed under terms that allow users to freely run, study, change and distribute it and modified versions
- The library depends on nghttp3, another HTTP/3 library
- The current stable version as of the provided data is 1.8.0, released on 2024-10-05
- It is licensed under the MIT License
- The project website is https://nghttp2.org/ngtcp2/
- Its source code is available at https://github.com/ngtcp2/ngtcp2
- ngtcp2 is a software library and part of the free software category
- The project has a MacPorts port named "ngtcp2"

## FAQs
### Q: What is ngtcp2?
A: ngtcp2 is a software library that implements HTTP/3, the latest version of the HTTP protocol designed to be more efficient over modern networks. It is free software distributed under the MIT license and depends on the nghttp3 library.

### Q: What license does ngtcp2 use?
A: ngtcp2 is licensed under the MIT License, allowing users to freely run, study, change and distribute it and modified versions.

### Q: What versions of ngtcp2 are available?
A: ngtcp2 has multiple stable versions, with the latest being 1.8.0 released on 2024-10-05. Previous versions include 1.7.0 (2024-08-24), 1.6.0 (2024-06-13), 1.5.0 (2024-05-09), and earlier versions dating back to 1.0.0 in October 2023.

### Q: How is ngtcp2 related to HTTP/3?
A: ngtcp2 is specifically an implementation of HTTP/3, meaning it provides the software components needed to build applications that can communicate using this protocol. HTTP/3 is designed to be more efficient than previous versions of HTTP.

## Why It Matters
ngtcp2 plays a crucial role in the advancement of web communication protocols by providing a robust implementation of HTTP/3. As the web continues to evolve, newer protocols like HTTP/3 become essential for faster, more reliable data transmission, especially in environments with poor network conditions or high latency. ngtcp2 enables developers to build applications that take advantage of these improvements without having to implement the protocol from scratch. This library contributes to the broader ecosystem of networking tools that make the modern internet possible, ultimately improving user experiences and reducing costs for service providers.

## Notable For
- Being a specialized implementation of HTTP/3, a relatively new protocol designed to overcome limitations of HTTP/1.1 and HTTP/2
- Its dependency on nghttp3, forming a cohesive HTTP/3 implementation stack
- The rapid development cycle with multiple stable releases in a short time period (10 versions from 1.0.0 to 1.8.0 in just over a year)
- Being part of the nghttp2 project ecosystem, which is well-regarded in the networking community
- Its adoption as a MacPorts port, indicating its usefulness in the development community

## Body
### Overview
ngtcp2 is a software library that implements HTTP/3, the third major version of the Hypertext Transfer Protocol. As HTTP/3 continues to gain adoption as a successor to HTTP/2, libraries like ngtcp2 provide essential building blocks for developers building modern web applications.

### Licensing
nghctp2 is free software distributed under terms that allow users to freely run, study, change and distribute it and modified versions. It is specifically licensed under the MIT License, which is permissive and allows for wide use in proprietary and open-source projects alike.

### Dependencies
The ngtcp2 library depends on nghttp3, another HTTP/3 library. This relationship creates a cohesive implementation of HTTP/3 components that developers can rely on for building applications that utilize this protocol.

### Version History
The ngtcp2 project has maintained a rapid development cycle since its initial release:

- Version 1.0.0 - Released on 2023-10-15, marked as the first stable version
- Version 1.0.1 - Released on 2023-10-23, with quick follow-up after initial release
- Version 1.1.0 - Released on 2023-11-26
- Version 1.2.0 - Released on 2024-01-21
- Version 1.3.0 - Released on 2024-02-17
- Version 1.4.0 - Released on 2024-03-18
- Version 1.5.0 - Released on 2024-05-09
- Version 1.6.0 - Released on 2024-06-13
- Version 1.7.0 - Released on 2024-08-24
- Version 1.8.0 - Released on 2024-10-05, the most recent stable version at the time of this data

### Project Presence
nghctp2 has a dedicated website at https://nghttp2.org/ngtcp2/ and its source code is hosted on GitHub at https://github.com/ngtcp2/ngtcp2. The project has also been incorporated into MacPorts as a port named "ngtcp2", making it easily installable on systems that use MacPorts.

### Technical Details
nghctp2 is a software library classified as both a software library and free software. The project is part of the free software [class], which means it's distributed under terms that allow users to freely run, study, change and distribute it and modified versions. The project's implementation status is copyrighted.

## References

1. [Source](https://api.github.com/repos/ngtcp2/ngtcp2)
2. [Release 1.0.0. 2023](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.0.0)
3. [Release 1.0.1. 2023](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.0.1)
4. [Release 1.1.0. 2023](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.1.0)
5. [Release 1.2.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.2.0)
6. [Release 1.3.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.3.0)
7. [Release 1.4.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.4.0)
8. [Release 1.5.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.5.0)
9. [Release 1.6.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.6.0)
10. [Release 1.7.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.7.0)
11. [Release 1.8.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.8.0)
12. [Release 1.8.1. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.8.1)
13. [Release 1.9.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.9.0)
14. [Release 1.9.1. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.9.1)
15. [Release 1.10.0. 2024](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.10.0)
16. [Release 1.11.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.11.0)
17. [Release 1.12.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.12.0)
18. [Release 1.13.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.13.0)
19. [Release 1.14.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.14.0)
20. [Release 1.15.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.15.0)
21. [Release 1.15.1. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.15.1)
22. [Release 1.16.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.16.0)
23. [Release 1.17.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.17.0)
24. [Release 1.18.0. 2025](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.18.0)
25. [Release ngtcp2 v1.19.0 · ngtcp2/ngtcp2](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.19.0)
26. [Release ngtcp2 v1.20.0 · ngtcp2/ngtcp2](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.20.0)
27. [Release ngtcp2 v1.21.0 · ngtcp2/ngtcp2](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.21.0)
28. [Release ngtcp2 v1.22.0 · ngtcp2/ngtcp2](https://github.com/ngtcp2/ngtcp2/releases/tag/v1.22.0)