Appcraft
  • 1. Getting Started
    • 1.1. Installation
    • 1.2. Starting a New Project
    • 1.3. Adding Templates to an Existing Project
  • 2. Templates
    • 2.1. Template Types
      • 2.1.1. Default Templates
      • 2.1.2. Shared-Base Templates
      • 2.1.3. Exclusive Templates
      • 2.1.4. Interchangeable Templates
      • 2.1.5. Composable Extensions
      • 2.1.6. Dependencies
      • 2.1.7. Inactive Templates
    • 2.2. Base Template
      • 2.2.1. A working project out of the box
      • 2.2.2. Resilience and developer experience
      • 2.2.3. Learning the architecture by example
    • 2.3. Poetry Template
      • 2.3.1. Switching to Poetry
    • 2.4. Pipenv Template
      • 2.4.1. Switching to Pipenv
    • 2.5. uv Template
      • 2.5.1. Switching to uv
    • 2.6. Docker Template
      • 2.6.1. Dynamic, one service per entry point
      • 2.6.2. Building and running
      • 2.6.3. No hardcoded package manager
      • 2.6.4. Development vs. production
      • 2.6.5. One thing to set up yourself
    • 2.7. Prompt Toolkit Template
    • 2.8. SQLAlchemy Template
      • 2.8.1. What it adds
      • 2.8.2. Combining with Flask
    • 2.9. MongoDB Template
      • 2.9.1. What it adds
    • 2.10. Flask Template
      • 2.10.1. Automatic routing
      • 2.10.2. Database integration
      • 2.10.3. Development vs. production
    • 2.11. Flask UI Template
    • 2.12. Flask API Template
    • 2.13. Web Scraping Template
      • 2.13.1. What this template provides
      • 2.13.2. Choosing an engine
      • 2.13.3. Handing off between engines
      • 2.13.4. Available runners
      • 2.13.5. Benchmarking installed engines
    • 2.14. Selenium Template
      • 2.14.1. Browser detection
      • 2.14.2. Cookies and headers
      • 2.14.3. Using Selenium specifically
    • 2.15. Playwright Template
      • 2.15.1. Async by nature
      • 2.15.2. Cookies and headers
      • 2.15.3. Using Playwright specifically
    • 2.16. HTTPX Template
      • 2.16.1. Choosing a parser
      • 2.16.2. Cookies and headers
      • 2.16.3. Using HTTPX specifically
    • 2.17. curl_cffi Template
      • 2.17.1. Why this exists alongside HTTPX
      • 2.17.2. Cookies and headers
      • 2.17.3. Using curl_cffi specifically
    • 2.18. Git Template
      • 2.18.1. Key features:
      • 2.18.2. Benefits:
    • 2.19. GitHub Template
      • 2.19.1. Key Features:
      • 2.19.2. Benefits:
  • 3. Layered Architecture
    • 3.1. Runner Layer
      • 3.1.1. What to Do in Runners
      • 3.1.2. What to Avoid in Runners
      • 3.1.3. Types of runners
      • 3.1.4. Example of a Runner
      • 3.1.5. Running Applications
      • 3.1.6. Running Tool Runners
      • 3.1.7. Executing a Specific Runner
    • 3.2. Presentation Layer
      • 3.2.1. What belongs here
      • 3.2.2. What to avoid here
      • 3.2.3. Naming convention: <Domain>CLIPresentation
      • 3.2.4. Example: a CLI Presentation
    • 3.3. Application Layer
      • 3.3.1. What belongs here
      • 3.3.2. What to avoid here
      • 3.3.3. Naming conventions
      • 3.3.4. Example: a Port
      • 3.3.5. Example: a Repository
      • 3.3.6. Example: a Mapper and Schema
      • 3.3.7. Example: a Use Case
      • 3.3.8. Introspection use cases
    • 3.4. Domain Layer
      • 3.4.1. What belongs here
      • 3.4.2. What to avoid here
      • 3.4.3. Naming convention: Interface, not I + name
      • 3.4.4. Example: a domain model
      • 3.4.5. Example: a filter
    • 3.5. Infrastructure Layer
      • 3.5.1. What belongs here
      • 3.5.2. What to avoid here
      • 3.5.3. Naming convention: Adapter
      • 3.5.4. Example: the default database Adapter
      • 3.5.5. Providers
    • 3.6. Application Flow
      • 3.6.1. Request Flow
      • 3.6.2. Response Flow
  • 4. Contributing
    • 4.1. Creating New Templates
    • 4.2. Updating Existing Templates
    • 4.3. Translating the Framework
    • 4.4. Working in a Temporary Project
    • 4.5. Ready to Contribute?
  • 5. Changelog
    • 5.1. 0.6.0b0
      • 5.1.1. Added
      • 5.1.2. Changed
      • 5.1.3. Fixed
      • 5.1.4. Removed
  • 6. Contact
  • 7. Versions
Appcraft
  • Search


© Copyright 2025, Dux Tecnologia, Thiago Costa Pereira.

Built with Sphinx using a theme provided by Read the Docs.