Duck is a powerful, open-source, Python-based web server, framework, and reverse proxy designed for building modern, customizable web applications — from small sites to large-scale platforms — with seamless Django integration.
It simplifies web development with:
-
Built-in HTTPS support for secure connections.
-
Native HTTP/2 support 🔗
-
Hassle-free free SSL certificate generation with automatic renewal 🔗
-
Integrated server-side component system inspired by React.js, plus prebuilt, ready to use components.
-
Built-in task automation — no need for cron jobs.
-
Highly customizable to suit any project.
-
And much more — explore all features on the official site
Designed for speed and security, Duck lets you deploy scalable, high-performance web applications with minimal setup.
Perfect for developers who want secure, flexible, and production-ready web solutions — all in one tool.
Install Duck using pip:
pip install git+https://github.com/digreatbrian/duck.git
duck makeproject myproject
duck runserver
This starts a server on port 80. Navigate to http://localhost:80 in your browser.
By default, a basic site is displayed — but there's much more you can do.
Explore the full capabilities in the documentation.
By default, Duck automatically compresses streaming responses (e.g. large files and media streams) to improve performance. In rare cases, this may cause issues. You can disable this behavior by setting compress_streaming_responses
to False
:
# settings.py
CONTENT_COMPRESSION: dict[str] = {
"encoding": "gzip",
"min_size": 1024, # files more than 1KB
"max_size": 512 * 1024, # files not more than 512KB
"level": 5,
"vary_on": True, # Whether to include Vary header in response
"compress_streaming_responses": False,
"mimetypes": [
"text/html",
"text/css",
"application/javascript",
"application/json",
"application/xml",
"application/xhtml+xml",
"application/rss+xml",
"application/atom+xml",
], # avoid compressing already compressed files like images
}
You can visit Duck's official website for more information at Duck official site.
Jump straight to Documentation.
Duck is currently accepting any kind of contribution either financially or any other contributions.
For financial contributions, navigate to sponsorship page.
Duck is looking for a contributor to create a high-quality YouTube video introducing the framework.
This video will be featured on the official Duck website and may be used in future promotions.
If you're interested, send an email with a link to your video. Please include a brief message about the purpose of your email.
For any issues, feel free to report these at issues page.