🌐 Unsupported Browser Detected

🚫
Unsupported Browser
Your browser isn't supported.
Please update or switch to a modern browser.

Chrome  |  Firefox  |  Edge

Cookie Consent 🍪

We use cookies to ensure this website functions correctly and to improve your experience. Essential cookies are always enabled. You can choose to accept all, reject all, or customize your analytics and marketing cookie preferences.

Duck's Logo
Duck Framework ™
  • Home
  • Jobs
  • About
  • Contact
  • Donate
  • Features
  • Marketplace
  • Consultation
  • Get A Website
  • Documentation

Modular & Reusable Components

Reusable Lively components, blueprints, and versatile template engine support for Jinja2 and Django.

Automation & Task Management

Task automation, logging, and utilities for streamlining workflows.

Micro App Support

Lightweight, independent sub-applications with their own servers and ports, enabling microservices architecture.

Flexible Request Handling

Supports dual connection modes (keep-alive & close), threading, and async handling.

Django Integration

Effortlessly connect with Django projects.

High Performance

Helping businesses scale, optimize operations, and improve profitability.

HTTP/2 Support

Supports HTTP/2 for enhanced security and performance for seamless development.

Security & Compliance

Features HTTPS & SSL, security layers, and compliance-friendly features for safe web applications.

Performance Optimization

Includes content compression (gzip, Brotli), streaming responses, built-in caching, and live reloading.

Developer Utilities

Provides utilities for URL parsing, request handling, and port management.

Business Strategy & Growth

Helping businesses scale, optimize operations, and improve profitability.

Features

  • Quick Setup
  • Modular & Reusable Components
  • Automation & Task Management
  • Micro App Support
  • Flexible Request Handling
  • Django Integration
  • High Performance
  • HTTPS & SSL Support
  • HTTP/2 Support
  • Security & Compliance
  • Performance Optimization
  • Developer Utilities
  • Business Scalability & Growth

Quick Setup

Get your Duck application up and running quickly with minimal configuration.

Benefits:
  • Simplified Installation: Install Duck using pip.
  • Project Generation: Create new projects with duck makeproject myproject.
  • Minimal Configuration: Start development with minimal configuration in settings.py.
  • Faster Development: Start coding without lengthy setup processes.
  • Reduced Complexity: Simplify your development workflow.
  • Ease of Use: Get your project running with simple commands.
  • Improved Logging: Better logs by default with automatic logging to file.
  • Logs Management: Manage logs easily with duck logs ....
  • Improved Monitoring: Monitor Duck processes with duck monitor ....
  • Django Integration: Easily integrate an existing Django project with duck django-add path/to/my/django/project.
  • Duck Linux Service: Easily start Duck application as a service on Linux platforms with duck service ....
Example:
duck makeproject myproject
cd myproject
duck runserver # Or python3 web/main.py

Modular & Reusable Components

Duck promotes modularity and reusability for efficient development.

Benefits:
  • Reusable Lively HTML Components: Create custom Lively HTML components with lively updates (no need for fullpage reloads).
  • Blueprints: Organize routes with blueprints for better project management.
  • Template Engine Compatibility: Supports Jinja2 and Django templates.
  • Code Reusability: Reduce code duplication.
  • Organized Structure: Keep your project organized.
  • Flexibility: Use preferred template engines.

Automation & Task Management

Duck offers powerful automation capabilities that can run tasks throughout your application's lifecycle. With Duck automations, you can schedule tasks to run when specific triggers occur, or you can set them up to run automatically at specified times.

These automations are incredibly useful for a variety of purposes, such as:

  • Automatically generating SSL certificates 🔒
  • Handling routine maintenance tasks 🛠️
  • Managing scheduled backups ⏳
  • Scheduling emails ✉️
  • Cleaning logs and junk at intervals 🗑
  • Triggering notifications or other actions based on specific events 📲

By leveraging Duck's automation system, you can save time, reduce manual intervention, and ensure critical tasks are handled efficiently and reliably.

Duck provides tools for automation and task management.

Benefits:
  • Task Automation: Schedule tasks to run at specific times or triggers.
  • Streamlined Workflows: Automate repetitive tasks.
  • Improved Productivity: Enhance development efficiency.

Micro App Support

Duck framework supports micro-apps for building scalable and independent applications.

What is a Micro App?

A Micro App is a small, independent application that runs on its own server (HTTP or HTTPS) and port. It can be part of a larger Duck-powered project but operates separately, handling its own requests and responses.

Benfits:
  • Independent Servers: Each micro app runs on its own server, meaning it does not affect other parts of the application.
  • Custom Ports: You can assign a specific port for your micro app, so it won’t interfere with other services.
  • Custom Views: Micro apps handle their own requests through a view method (or async_view in asynchronous environment), allowing you to define custom behavior.
  • Redirect HTTP to HTTPS: Duck includes a built-in HttpsRedirectMicroApp, which automatically redirects HTTP traffic to HTTPS for better security.
  • Scalability: Build microservices architecture.
  • Flexibility: Handle different parts of the application independently.
  • Isolation: Prevent issues from affecting other parts of the application.

Flexible Request Handling

Duck offers flexible request handling for diverse application needs.

Benefits:
  • Dual Connection Modes: Supports keep-alive and close connection modes.
  • Threading & Async Handling: Supports both threading and asynchronous handling.
  • ASGI & WSGI Support: Supports both ASGI and WSGI environments. Also, in WSGI environment, Duck uses a background event loop for handling asynchronous protocols like HTTP/2 or WebSockets without the need of switching to ASGI.
  • Customizable Handling: Tailor request handling to suit your needs.
  • Native WebSockets: Duck has native WebSockets implementation which doesn't require external libraries. Another great thing is that WebSockets can easily run in WSGI, no need to strictly use ASGI.

Django Integration

Duck provides seamless integration with Django (another great framework), allowing you to leverage the power of both frameworks.

Benefits:
  • Interoperability: Easily use Django's ORM and features within your Duck application.
  • Flexibility: Combine Django's robust features with Duck's performance and customization.
  • Simplified Development: Streamline your workflow by using the best of both worlds.
  • Security: Enhanced security through layered middleware.
How it Works:

Duck forwards HTTP traffic to the Django server for handling when USE_DJANGO = True in settings.py. This allows Django to handle requests on Duck's behalf.


High Performance

Duck is designed for high performance, ensuring your web applications are fast and responsive.

Benefits:
  • Efficient Architecture: Duck's architecture is built considering asynchronous handling and efficient resource utilization, minimizing overhead.
  • Asynchronous Handling: Duck supports asynchronous handling for I/O-bound tasks, allowing it to handle many concurrent requests efficiently.
  • Resource Optimization: Duck optimizes resource usage through features like content compression (gzip, Brotli, deflate) and built-in caching implementations.
  • Fast Page Navigation: This framework supports partial page navigation through Duck's Lively Component System (No need to reload the whole page for a small UI update.)
  • Scalability: Handle more requests with fewer resources.
  • Faster Load Times: Improve user experience with quick response times due to support of protcols like HTTP/2.
  • Reduced Latency: Minimize delays for a smoother user experience due to default content compression.

HTTPS & SSL Support

Duck makes it easy to secure your web applications with HTTPS and SSL.

Benefits:
  • Built-in SSL Generation: The duck ssl-gen command generates self-signed SSL certificates for development and testing.
  • Automatic HTTPS Redirection: FORCE_HTTPS = True in settings.py automatically redirects all HTTP traffic to HTTPS.
  • Secure Configuration: Duck provides default secure configurations, and you can customize SSL settings in settings.py.
  • Automatic Free SSL Generation: Besides using self-signed SSL certificates, Duck provides an automation for getting, managing and updating an SSL certificate from Let's Encrypt using certbot (No need to buy SSL certificate).
  • Enhanced Security: Protect sensitive data with encrypted connections.
  • Improved Trust: Build user confidence with secure connections.
  • SEO Benefits: Boost your search engine rankings.
Example:

To enable HTTPS, set ENABLE_HTTPS = True in settings.py.

To generate a self-signed certificates, run:

duck ssl-gen

To force HTTPS redirection:

# settings.py

FORCE_HTTPS = True

ENABLE_HTTPS = True

This will redirect the unencrypted traffic to a more secure encrypted channel.

Free Production-ready SSL Certificate

Duck provides seamless support for Let's Encrypt SSL certificates with automatic and lifetime renewals using certbot in combination with Duck automation and blueprints.

Obtaining SSL Certificate

To get started, install certbot via pip:

pip install certbot

certbot allows you to request SSL certificates from Let's Encrypt and handles domain verification to ensure you own the domain.

To pass domain verification, Duck uses the webroot plugin. This plugin works by placing random verification files in a directory that is publicly accessible—similar to serving static files. Follow up on Documentation to know more!


HTTP/2 Support

This framework supports HTTP/2 for faster and more efficient communication.

Improvements:
  • Multiplexing: Multiple requests are handled simultaneously over a single connection, reducing latency.
  • Header Compression: Header compression reduces overhead, improving efficiency.
  • Automatic Upgrade: Duck negotiates HTTP/2 with clients that support it while maintaining backward compatibility with HTTP/1.1.
  • Faster Load Times: Improve page load speeds with efficient data transfer.
  • Reduced Latency: Minimize delays for a smoother user experience.
  • Improved Performance: Enhance overall web application performance.
How to enable:

Set HTTP_2_SUPPORT = True in settings.py. It's strongly recommended to use HTTP/2 only over HTTPS by setting ENABLE_HTTPS = True.

# settings.py
HTTP_2_SUPPORT = True
ENABLE_HTTPS = True

Security & Compliance

Duck prioritizes security and compliance to protect your applications and data.

Benefits:
  • HTTPS & SSL: Duck supports HTTP over secure channel (HTTPS) and SSL certificate generation.
  • Security Layers: Duck adds security layers through Django integration and request validation.
  • Compliance-Friendly Options: Duck's features aid compliance with security best practices.
  • Improved Security: Duck adds better security through built-in security middlewares for against XSS, CSRF, SQL Injection, Command Injection and built-in Rate-limiting middleware.
  • Data Protection: Secure sensitive information.
  • Regulatory Compliance: Meet industry standards and regulations.
  • User Trust: Build confidence with secure applications.

Performance Optimization

Duck includes features to optimize performance and enhance user experience.

Benefits:
  • Content Compression: Supports gzip, Brotli, and deflate compression for faster asset delivery.
  • Streaming Responses: StreamingHttpResponse and StreamingRangeHttpResponse for efficient handling of large files.
  • Built-in Caching: In-memory, file-based, and database-backed caching implementations.
  • Live Reloading: DuckSight Reloader automatically restarts the server on file changes.
  • Faster Load Times: Improve page load speeds.
  • Efficient Resource Usage: Optimize data retrieval and delivery.
  • Improved User Experience: Deliver a smoother and faster experience.

Developer Utilities

The Duck Framework is equipped with a powerful set of tools and utilities designed to make development faster, easier, and more efficient.
It streamlines workflows, enhances productivity, and reduces the complexity of building secure and scalable applications.


Business Scalability & Growth

As Duck seamlessly integrates security, performance, scalability, and flexibility, businesses can expand efficiently while minimizing operational costs.

With built-in HTTPS, HTTP/2 support, intelligent caching, and seamless Django integration, Duck empowers developers to deploy high-performance applications effortlessly. Its streaming capabilities, content compression, and reusable components ensure faster load times and an optimized user experience.

Whether you're building a small startup application or a large-scale enterprise system, Duck provides the efficiency, customization, and security needed to scale without limitations.


Explore

Join UsFeaturesContact UsAbout DuckRequest WebsiteGet Consultation

Resources

PayGithubContributeMarketplaceDocumentation

More

Get Free API'sPrivacy PolicyTerms & Conditions

Learn

DeploymentLearn PythonLearn from YoutubeAPI Documentation
ko_fipatreon


Fully powered by Duck's Lively UI/Lively Component System

© 2025 Duck Framework ™. All rights reserved.