YAPFM Documentation
Welcome to the comprehensive documentation for YAPFM (Yet Another Python File Manager). This documentation covers all aspects of the library, from basic usage to advanced features.
📚 Documentation Structure
Getting Started
- Installation Guide - How to install and set up YAPFM
- Quick Start - Get up and running in minutes
- User Guide - Comprehensive step-by-step guide
API Reference
- API Reference - Complete API documentation with examples
- Core Classes - YAPFileManager, FileManagerProxy
- Strategies - File format handlers
- Mixins - Modular functionality components
Examples and Patterns
- Examples - Code examples and common patterns
- Configuration Management - Real-world config examples
- Multi-Environment Setup - Managing different environments
- Advanced Patterns - Complex usage scenarios
Advanced Topics
- Advanced Features - Proxy, mixins, and strategies
- Custom Strategies - Creating your own file format handlers
- Performance Optimization - Tips for better performance
- Thread Safety - Using YAPFM in multi-threaded environments
Troubleshooting
- Troubleshooting - Common issues and solutions
- FAQ - Frequently asked questions
- Error Reference - Complete error reference
Development & Future
- Roadmap - Future enhancements and planned features
- Contributing - How to contribute to YAPFM
🚀 Quick Navigation
By Use Case
- Configuration Files: Start with User Guide → Configuration Management
- Multi-Format Support: API Reference → Custom Strategies
- Logging & Monitoring: Advanced Features → Examples
- Performance: Advanced Features → Troubleshooting
By Experience Level
- Beginner: Installation → Quick Start → User Guide
- Intermediate: Examples → API Reference → Advanced Features
- Advanced: Custom Strategies → Performance → Troubleshooting
💡 Key Concepts
File Manager
The core class that combines all functionality through mixins. Handles file operations, data access, and persistence.
Strategies
Format-specific handlers that know how to read and write different file types (JSON, TOML, YAML).
Mixins
Modular components that provide specific functionality: - FileOperationsMixin: Basic file operations (load, save, exists) - KeyOperationsMixin: Key-based data access with dot notation - SectionOperationsMixin: Section-based data management - ContextMixin: Context manager support
Proxy Pattern
Wrapper that adds logging, metrics, and auditing to file operations without modifying the core functionality.
🔗 External Resources
- GitHub Repository - Source code and issue tracking
- PyPI Package - Package installation
- Changelog - Version history and changes
📝 Contributing to Documentation
Found an error or want to improve the documentation? Please:
- Check the Contributing Guide
- Open an issue or pull request
- Follow the documentation style guide
This documentation is automatically generated and updated with each release.