Welcome to Dracory Documentation
Dracory is a modern web application framework designed to make development fast, efficient, and enjoyable. This documentation will guide you through all aspects of using Dracory to build your applications.
What's New
Recent Updates (v0.16.0)
- Email Package Migration: Email functionality moved to standalone
github.com/dracory/emailpackage for better modularity - Enhanced Base Package Integration: Major components moved to base package including themes, middleware, CLI, database optimizations, and config encryption
- Security Enhancements: Jail bots middleware now available as shared component, automatic HTTPS redirects and security headers
- Database Optimizations: Automatic SQLite optimizations, connection pooling, and enhanced SSL configuration
- CLI Improvements: Generic CLI dispatcher with type-safe command handling using Go generics
- Architecture Improvements: Registry pattern implementation, graceful shutdown, and context-aware background processes
Key Features Added Over Time
- Theme System: Blog and web theme packages moved to base for reusability across projects
- Component Architecture: Enhanced widget system with registry access and CMS frontend improvements
- Authentication: Rate limiting, API key validation, and improved security middleware
- Version Control: Blog post versioning and version store integration
- Development Tools: Enhanced task organization, background process management, and better error handling
Migration Highlights
If you're upgrading from an earlier version, here are the key changes:
- v0.16.0: Email package standalone, base package integration, security enhancements
- v0.15.0: Registry variable naming, MCP API key validation, context-aware stores
- v0.14.0: Widget registry access, CMS frontend improvements, dependency updates
- v0.13.0: Security middlewares, task queue configuration, enhanced error handling
- v0.12.0: HTTPS redirects, security headers, Docker task removal
- v0.11.0: Application entry point moved to
cmd/server/main.go, registry architecture - v0.10.0: Task organization, database SSL configuration, environment standardization
- v0.9.0: Graceful shutdown, context management, dependency migration
- v0.8.0: Link constructor simplification, layout options cleanup
- v0.7.0: Blog store configuration, taskfile improvements
Getting Started
If you're new to Dracory, we recommend starting with the installation guide and then exploring the directory structure to understand how Dracory applications are organized.
Core Concepts
Explore the core concepts that make Dracory powerful and flexible.
Installation
Learn how to install and set up your Dracory application.
Directory Structure
Understand how Dracory applications are organized with the new registry pattern and cmd/server entry point.
Configuration
Learn how to configure your Dracory application, including environment variables, encrypted configuration, and SSL settings.
Frontend
Build beautiful user interfaces with Dracory's HTML builder, theme system, and responsive design.
Packages
Explore the extensive ecosystem of Dracory packages for stores, utilities, and integrations, including the new standalone email package.
Security
Learn about security best practices, including environment variable encryption, bot protection, HTTPS redirects, and rate limiting.
Deployment
Understand deployment strategies, Docker configuration, and production considerations.