Skip to main content
ArchiPy Logo

ArchiPy - Architecture + Python

Forks Stars Python UV Documentation License Maintained Contributions welcome PyPI - Version PyPI - Downloads Contributors Last Commit Open Issues Closed Issues Pull Requests Repo Size Code Size

Structured Python Development Made Simple

ArchiPy is a Python framework designed to provide a standardized, scalable, and maintainable architecture for modern applications. Built with Python 3.14+, it offers a suite of tools, utilities, and best practices to streamline configuration management, testing, and development workflows while adhering to clean architecture principles.


📋 Table of Contents


🎯 Goals

ArchiPy is built with the following objectives in mind:

  1. Configuration Management & Injection - Simplify and standardize configuration handling
  2. Common Adapters & Mocks - Provide ready-to-use adapters with testing mocks
  3. Standardized Entities & DTOs - Enforce consistency in data modeling
  4. Common Helpers for Everyday Tasks - Simplify routine development work
  5. Behavior-Driven Development (BDD) Support - Enable robust feature validation
  6. Best Practices & Development Structure - Enforce coding standards

Read more about ArchiPy's architecture and design


✨ Features

  • Config Standardization: Tools for managing and injecting configurations
  • Adapters & Mocks: Pre-built adapters for Redis, SQLAlchemy, and email with testing mocks
  • Data Standardization: Base entities, DTOs, and type safety
  • Helper Utilities: Reusable tools for common tasks
  • BDD Testing: Fully integrated Behave setup
  • Modern Tooling: Dependency management and code quality tools

Explore the complete feature set


🛠️ Prerequisites

  • Python 3.14 or higher
  • UV (recommended for development)

📥 Installation

Install using pip

# Basic installation
pip install archipy

# With optional dependencies (e.g., Redis and FastAPI)
pip install archipy[redis,fastapi]

Using UV:

uv add archipy

# With optional dependencies
uv add archipy[redis,fastapi]

View installation documentation


🎯 Usage

Optional Dependencies

ArchiPy's modular design lets you install only what you need:

# Examples
pip install archipy[redis]        # Redis support
pip install archipy[fastapi]      # FastAPI framework
pip install archipy[postgres]     # PostgreSQL support

See the documentation for all available options and examples


🛠️ Development

Quick Commands

# Format code
make format

# Run tests
make behave

# Lint code
make lint

View the complete development guide


🤝 Contributing

Contributions are welcome! See our contribution guidelines for details.


📄 License

This project is licensed under the terms of the LICENSE file.


🙌 Sponsors

Support ArchiPy by checking out our amazing sponsors! View Sponsors


📞 Contact


🔗 Links

📚 Documentation

ArchiPy's documentation has been migrated from Sphinx to MkDocs for improved readability and organization:

  • Modern Interface: Material theme with responsive design
  • Improved Navigation: Intuitive organization and search
  • Clearer Examples: Expanded code samples with explanations
  • API Reference: Auto-generated from source code docstrings
  • Performance Optimized: Multiple build modes for fast iteration

Quick Start

# Install documentation dependencies
uv sync --group docs

# Fast mode for quick iterations (10-20s builds)
make docs-serve-fast

# Balanced mode for regular work (30-60s builds)
make docs-serve

# Full production build (2-5min, all features)
make docs-build-full

# Deploy to GitHub Pages
make docs-deploy

See DOCS_QUICKSTART.md for more commands and tips.

View the latest documentation

Release files for archipy 5.2.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for archipy 5.2.4
File Size Uploaded
archipy-5.2.4.tar.gz 941.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for archipy 5.2.4
File Interpreter ABI Platform
archipy-5.2.4-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / archipy-5.2.4.tar.gz

Download URL archipy-5.2.4.tar.gz
Size 941.9 kB
Tags Source
SHA-256 checksum
How to use checksums
08ad23f193e7abcd3cdbcd96b961f941e965dc168f3f1e69bea3f33d12a4fad5
BLAKE2b-256 checksum
How to use checksums
73c5d4dc79fb7f5fd2eb9dc8940a6860525987c6e9df2dd478c8f2bcfd535541
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / archipy-5.2.4-py3-none-any.whl

Download URL archipy-5.2.4-py3-none-any.whl
Size 358.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
28d61c7b452b322b6d08a0d81e8f40be1f600fc3780502a9c0d577ac28188b50
BLAKE2b-256 checksum
How to use checksums
2e4bf381cad38ae12e0ea0dc90cc064b3f84b4f1a3b8532c7840e3da28c22302
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

5.5.1

2 release files

5.5.0

2 release files

5.4.1

2 release files

5.4.0

2 release files

5.3.0

2 release files

This release

5.2.4 This release

2 release files

5.2.3

2 release files

5.2.2

2 release files

5.2.1

2 release files

5.2.0

2 release files

5.1.0

2 release files

5.0.7

2 release files

5.0.6

2 release files

5.0.5

2 release files

5.0.4

2 release files

5.0.3

2 release files

5.0.2

2 release files

5.0.1

2 release files

5.0.0

2 release files

4.17.0

2 release files

4.16.0

2 release files

4.15.0

2 release files

4.14.0

2 release files

4.13.2

2 release files

4.13.1

2 release files

4.13.0

2 release files

4.12.1

2 release files

4.12.0

2 release files

4.11.1

2 release files

4.11.0

2 release files

4.10.2

2 release files

4.10.1

2 release files

4.10.0

2 release files

4.9.3

2 release files

4.9.2

2 release files

4.9.1

2 release files

4.9.0

2 release files

4.8.1

2 release files

4.8.0

2 release files

4.7.1

2 release files

4.7.0

2 release files

4.6.0

2 release files

4.5.0

2 release files

4.4.2

2 release files

4.4.1

2 release files

4.4.0

2 release files

4.3.6

2 release files

4.3.5

2 release files

4.3.4

2 release files

4.3.3

2 release files

4.3.2

2 release files

4.3.1

2 release files

4.3.0

2 release files

4.2.0

2 release files

4.1.0

2 release files

4.0.4

2 release files

4.0.3

2 release files

4.0.2

2 release files

4.0.1

2 release files

4.0.0

2 release files

3.15.1

2 release files

3.15.0

2 release files

3.14.4

2 release files

3.14.3

2 release files

3.14.1

2 release files

3.14.0

2 release files

3.13.9

2 release files

3.13.8

2 release files

3.13.7

2 release files

3.13.6

2 release files

3.13.3

2 release files

3.13.2

2 release files

3.13.1

2 release files

3.13.0

2 release files

3.12.0

2 release files

3.9.0

2 release files

3.8.1

2 release files

3.8.0

2 release files

3.7.0

2 release files

3.6.1

2 release files

3.6.0

2 release files

3.5.2

2 release files

3.5.1

2 release files

3.5.0

2 release files

3.4.5

2 release files

3.4.4

2 release files

3.4.3

2 release files

3.4.2

2 release files

3.4.1

2 release files

3.4.0

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.8

2 release files

3.2.7

2 release files

3.2.5

2 release files

3.2.4

2 release files

3.2.3

2 release files

3.2.2

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.14.2

2 release files

0.14.1

2 release files

0.14.0

2 release files

0.13.5

2 release files

0.13.4

2 release files

0.13.3

2 release files

0.13.2

2 release files

0.12.0

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page