github.com/curl/curl ↗
A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, MQTTS, POP3, POP3S, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
Open this visualization on its own page →
Contributors
1066
Lines of Code
80,589
From
1999-12-29
To
2022-05-06
About curl/curl
curl is a command-line tool and library for transferring data to and from servers using URLs. It supports an extensive range of protocols including HTTP, HTTPS, FTP, SFTP, SCP, SMTP, POP3, IMAP, LDAP, MQTT, WebSocket, and many others, making it highly versatile for data transfer tasks across different network protocols.
The project consists of both a standalone curl command-line utility and libcurl, a reusable C library that provides the core functionality. libcurl can be embedded into other software applications to enable URL-based data transfer capabilities. The tool is particularly notable for its widespread adoption as a fundamental component in countless applications and systems that require reliable network communication.
Written in C, curl is distributed under an MIT-like license as open source software. The project maintains active community engagement through mailing lists, GitHub issues, and discussions, and also offers commercial support options. It has become an industry standard for data transfer operations, with extensive documentation available through man pages and comprehensive guides.