rfs-framework


Namerfs-framework JSON
Version 4.6.5 PyPI version JSON
download
home_pageNone
SummaryEnterprise-Grade Reactive Functional Serverless Framework for Python
upload_time2025-09-12 09:38:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT
keywords async cloud-native enterprise framework functional microservices monad optimization production-ready reactive result-pattern security serverless validation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # RFS Framework πŸš€

> **Enterprise-Grade Reactive Functional Serverless Framework for Python**

[![Python 3.10+](https://img.shields.io/badge/Python-3.10+-blue.svg)](https://www.python.org/downloads/)
[![Version](https://img.shields.io/badge/Version-4.3.0-green.svg)](https://pypi.org/project/rfs-framework/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Cloud Run Ready](https://img.shields.io/badge/Cloud%20Run-Ready-green.svg)](https://cloud.google.com/run)

ν˜„λŒ€μ μΈ μ—”ν„°ν”„λΌμ΄μ¦ˆ Python μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μœ„ν•œ ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ° ν”„λ ˆμž„μ›Œν¬μž…λ‹ˆλ‹€.

## 🎯 Why RFS Framework?

- **νƒ€μž… μ•ˆμ „μ„±**: Result νŒ¨ν„΄μœΌλ‘œ μ˜ˆμ™Έ μ—†λŠ” μ—λŸ¬ 처리
- **λ°˜μ‘ν˜• 슀트림**: Mono/Flux νŒ¨ν„΄μ˜ 비동기 처리
- **ν΄λΌμš°λ“œ λ„€μ΄ν‹°λΈŒ**: Google Cloud Run μ΅œμ ν™”
- **ν”„λ‘œλ•μ…˜ μ€€λΉ„**: λͺ¨λ‹ˆν„°λ§, λ³΄μ•ˆ, 배포 μ „λž΅ λ‚΄μž₯

## ⚑ Quick Start

### Installation

```bash
# PyPIμ—μ„œ μ„€μΉ˜ (v4.0.0 - μ•ˆμ • 버전)
pip install rfs-framework

# 선택적 λͺ¨λ“ˆ μ„€μΉ˜
pip install rfs-framework[web]       # FastAPI μ›Ή ν”„λ ˆμž„μ›Œν¬ (μ™„λ£Œ)
pip install rfs-framework[database]  # λ°μ΄ν„°λ² μ΄μŠ€ 지원 (μ™„λ£Œ)
pip install rfs-framework[test]      # ν…ŒμŠ€νŒ… 도ꡬ (μ™„λ£Œ)
pip install rfs-framework[dev]       # 개발 도ꡬ (μ™„λ£Œ)
pip install rfs-framework[docs]      # λ¬Έμ„œν™” 도ꡬ (TBD)
pip install rfs-framework[ai]        # AI/ML 톡합 (TBD)

# λͺ¨λ“  κΈ°λŠ₯ 포함
pip install rfs-framework[all]

# GitHubμ—μ„œ μ΅œμ‹  버전 μ„€μΉ˜ (v4.3.0)
pip install git+https://github.com/interactord/rfs-framework.git
```

μžμ„Έν•œ μ„€μΉ˜ μ˜΅μ…˜μ€ [μ„€μΉ˜ κ°€μ΄λ“œ](./INSTALLATION.md)λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

### Basic Example

```python
from rfs import Result, Success, Failure

def divide(a: int, b: int) -> Result[float, str]:
    if b == 0:
        return Failure("Cannot divide by zero")
    return Success(a / b)

# μ•ˆμ „ν•œ μ—λŸ¬ 처리
result = divide(10, 2)
if result.is_success:
    print(f"Result: {result.unwrap()}")  # Result: 5.0
```

### Reactive Streams

```python
from rfs.reactive import Flux
import asyncio

async def process_data():
    result = await (
        Flux.from_iterable(range(100))
        .parallel(4)  # 4개 μŠ€λ ˆλ“œ 병렬 처리
        .map(lambda x: x * x)
        .filter(lambda x: x % 2 == 0)
        .collect_list()
    )
    return result
```

더 λ§Žμ€ μ˜ˆμ œλŠ” [Examples Directory](./examples/)λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

## πŸ—οΈ Architecture

```
Application Layer
β”œβ”€β”€ CLI & Tools       β†’ 개발자 도ꡬ
β”œβ”€β”€ Web Framework     β†’ FastAPI 톡합
└── Cloud Services    β†’ GCP 톡합

Core Layer
β”œβ”€β”€ Result Pattern    β†’ ν•¨μˆ˜ν˜• μ—λŸ¬ 처리
β”œβ”€β”€ Reactive Streams  β†’ 비동기 슀트림
β”œβ”€β”€ State Machine     β†’ μƒνƒœ 관리
└── Event Sourcing    β†’ CQRS/이벀트 μŠ€ν† μ–΄

Infrastructure Layer
β”œβ”€β”€ Security          β†’ RBAC/ABAC, JWT
β”œβ”€β”€ Monitoring        β†’ λ©”νŠΈλ¦­, λ‘œκΉ…
β”œβ”€β”€ Deployment        β†’ Blue-Green, Canary
└── Optimization      β†’ μ„±λŠ₯ μ΅œμ ν™”
```

## πŸ“š Documentation

### 핡심 λ¬Έμ„œ
- **[핡심 κ°œλ…](./docs/01-core-patterns.md)** - Result νŒ¨ν„΄κ³Ό ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ°
- **[API Reference](./docs/API_REFERENCE.md)** - 전체 API λ¬Έμ„œ
- **[μ‚¬μš©μž κ°€μ΄λ“œ](./docs/USER_GUIDE.md)** - 단계별 μ‚¬μš© μ•ˆλ‚΄

### μ£Όμ œλ³„ κ°€μ΄λ“œ
- **[μ„€μ • 관리](./docs/03-configuration.md)** - ν™˜κ²½λ³„ μ„€μ •
- **[λ³΄μ•ˆ](./docs/11-security.md)** - 인증, 인가, λ³΄μ•ˆ κ°•ν™”
- **[배포](./docs/05-deployment.md)** - ν”„λ‘œλ•μ…˜ 배포 μ „λž΅
- **[CLI 도ꡬ](./docs/14-cli-interface.md)** - λͺ…λ Ήν–‰ μΈν„°νŽ˜μ΄μŠ€

### 전체 λ¬Έμ„œ
- **[πŸ“– Docs (ν•œκ΅­μ–΄)](./docs/)** - 17개 λͺ¨λ“ˆ 상세 λ¬Έμ„œ
- **[πŸ“š HOF Library](./docs/16-hot-library.md)** - Higher-Order Functions
- **[λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ κ°€μ΄λ“œ](./MIGRATION_GUIDE.md)** - v3μ—μ„œ v4둜 μ—…κ·Έλ ˆμ΄λ“œ

## πŸ› οΈ Development

### Commands

```bash
# 개발 μ„œλ²„
rfs-cli dev --reload

# ν…ŒμŠ€νŠΈ
pytest --cov=rfs

# μ½”λ“œ ν’ˆμ§ˆ
black src/ && mypy src/

# μ‹œμŠ€ν…œ μƒνƒœ
rfs status  # 16개 핡심 κΈ°λŠ₯ λͺ¨λ‹ˆν„°λ§
```

### Project Structure

```
rfs-framework/
β”œβ”€β”€ src/rfs/
β”‚   β”œβ”€β”€ core/          # Result νŒ¨ν„΄, DI, μ„€μ •
β”‚   β”œβ”€β”€ reactive/      # Mono/Flux 슀트림
β”‚   β”œβ”€β”€ hof/           # Higher-Order Functions
β”‚   β”œβ”€β”€ production/    # ν”„λ‘œλ•μ…˜ μ‹œμŠ€ν…œ
β”‚   └── cloud_run/     # Cloud Run 톡합
β”œβ”€β”€ tests/             # ν…ŒμŠ€νŠΈ μŠ€μœ„νŠΈ
β”œβ”€β”€ docs/              # ν•œκ΅­μ–΄ λ¬Έμ„œ
└── examples/          # 예제 μ½”λ“œ
```

## ✨ Key Features

### 🎯 ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ°
- Result/Maybe/Either λͺ¨λ‚˜λ“œ
- ν•¨μˆ˜ ν•©μ„±κ³Ό 컀링
- λΆˆλ³€μ„±κ³Ό 순수 ν•¨μˆ˜
- [상세 λ¬Έμ„œ β†’](./docs/01-core-patterns.md)

### ⚑ λ°˜μ‘ν˜• 슀트림
- 비동기 Mono/Flux νŒ¨ν„΄
- λ°±ν”„λ ˆμ…” 지원
- 30+ μ—°μ‚°μž
- [상세 λ¬Έμ„œ β†’](./docs/README.md#reactive-programming)

### πŸ”’ μ—”ν„°ν”„λΌμ΄μ¦ˆ λ³΄μ•ˆ
- RBAC/ABAC μ ‘κ·Ό μ œμ–΄
- JWT 인증
- 취약점 μŠ€μΊλ‹
- [상세 λ¬Έμ„œ β†’](./docs/11-security.md)

### πŸš€ ν”„λ‘œλ•μ…˜ μ€€λΉ„
- Blue-Green/Canary 배포
- Circuit Breaker νŒ¨ν„΄
- μ„±λŠ₯ λͺ¨λ‹ˆν„°λ§
- [상세 λ¬Έμ„œ β†’](./docs/05-deployment.md)

## πŸ“Š Performance

| Metric | Value | Note |
|--------|-------|------|
| **μ‹œμž‘ μ‹œκ°„** | ~50ms | CLI μ΄ˆκΈ°ν™” |
| **λ©”λͺ¨λ¦¬ μ‚¬μš©** | ~25MB | κΈ°λ³Έ μ‹€ν–‰ |
| **응닡 μ‹œκ°„** | <100ms | API 호좜 |
| **μ²˜λ¦¬λŸ‰** | 1200 RPS | 벀치마크 |

## 🚧 Status

- **완성도**: 93% (v4.3.0)
- **ν”„λ‘œλ•μ…˜ μ€€λΉ„**: βœ… Ready
- **λ―Έμ™„μ„± ν•­λͺ©**: [TODO.md](./TODO.md) μ°Έμ‘°

## 🀝 Contributing

κΈ°μ—¬λ₯Ό ν™˜μ˜ν•©λ‹ˆλ‹€! [Contributing Guide](./CONTRIBUTING.md)λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

```bash
# 개발 ν™˜κ²½ μ„€μ •
git clone https://github.com/interactord/rfs-framework
cd rfs-framework
pip install -e ".[dev]"

# ν…ŒμŠ€νŠΈ μ‹€ν–‰
pytest

# PR 제좜
git checkout -b feature/your-feature
git commit -m "feat: add feature"
git push origin feature/your-feature
```

## πŸ“„ License

MIT License - [LICENSE](./LICENSE) μ°Έμ‘°

## πŸ†˜ Support

- **문제 보고**: [GitHub Issues](https://github.com/interactord/rfs-framework/issues)
- **ν† λ‘ **: [Discussions](https://github.com/interactord/rfs-framework/discussions)
- **λ¬Έμ„œ**: [Wiki](https://github.com/interactord/rfs-framework/wiki)

---

**Made with ❀️ by the RFS Framework Team**
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "rfs-framework",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "async, cloud-native, enterprise, framework, functional, microservices, monad, optimization, production-ready, reactive, result-pattern, security, serverless, validation",
    "author": null,
    "author_email": "RFS Framework Team <team@rfs-framework.dev>",
    "download_url": "https://files.pythonhosted.org/packages/9f/29/0760690c374bce832dd0f2b4ecad8eea6b0a4d9cf5cc589fefcbf762be5c/rfs_framework-4.6.5.tar.gz",
    "platform": null,
    "description": "# RFS Framework \ud83d\ude80\n\n> **Enterprise-Grade Reactive Functional Serverless Framework for Python**\n\n[![Python 3.10+](https://img.shields.io/badge/Python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![Version](https://img.shields.io/badge/Version-4.3.0-green.svg)](https://pypi.org/project/rfs-framework/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Cloud Run Ready](https://img.shields.io/badge/Cloud%20Run-Ready-green.svg)](https://cloud.google.com/run)\n\n\ud604\ub300\uc801\uc778 \uc5d4\ud130\ud504\ub77c\uc774\uc988 Python \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc704\ud55c \ud568\uc218\ud615 \ud504\ub85c\uadf8\ub798\ubc0d \ud504\ub808\uc784\uc6cc\ud06c\uc785\ub2c8\ub2e4.\n\n## \ud83c\udfaf Why RFS Framework?\n\n- **\ud0c0\uc785 \uc548\uc804\uc131**: Result \ud328\ud134\uc73c\ub85c \uc608\uc678 \uc5c6\ub294 \uc5d0\ub7ec \ucc98\ub9ac\n- **\ubc18\uc751\ud615 \uc2a4\ud2b8\ub9bc**: Mono/Flux \ud328\ud134\uc758 \ube44\ub3d9\uae30 \ucc98\ub9ac\n- **\ud074\ub77c\uc6b0\ub4dc \ub124\uc774\ud2f0\ube0c**: Google Cloud Run \ucd5c\uc801\ud654\n- **\ud504\ub85c\ub355\uc158 \uc900\ube44**: \ubaa8\ub2c8\ud130\ub9c1, \ubcf4\uc548, \ubc30\ud3ec \uc804\ub7b5 \ub0b4\uc7a5\n\n## \u26a1 Quick Start\n\n### Installation\n\n```bash\n# PyPI\uc5d0\uc11c \uc124\uce58 (v4.0.0 - \uc548\uc815 \ubc84\uc804)\npip install rfs-framework\n\n# \uc120\ud0dd\uc801 \ubaa8\ub4c8 \uc124\uce58\npip install rfs-framework[web]       # FastAPI \uc6f9 \ud504\ub808\uc784\uc6cc\ud06c (\uc644\ub8cc)\npip install rfs-framework[database]  # \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc9c0\uc6d0 (\uc644\ub8cc)\npip install rfs-framework[test]      # \ud14c\uc2a4\ud305 \ub3c4\uad6c (\uc644\ub8cc)\npip install rfs-framework[dev]       # \uac1c\ubc1c \ub3c4\uad6c (\uc644\ub8cc)\npip install rfs-framework[docs]      # \ubb38\uc11c\ud654 \ub3c4\uad6c (TBD)\npip install rfs-framework[ai]        # AI/ML \ud1b5\ud569 (TBD)\n\n# \ubaa8\ub4e0 \uae30\ub2a5 \ud3ec\ud568\npip install rfs-framework[all]\n\n# GitHub\uc5d0\uc11c \ucd5c\uc2e0 \ubc84\uc804 \uc124\uce58 (v4.3.0)\npip install git+https://github.com/interactord/rfs-framework.git\n```\n\n\uc790\uc138\ud55c \uc124\uce58 \uc635\uc158\uc740 [\uc124\uce58 \uac00\uc774\ub4dc](./INSTALLATION.md)\ub97c \ucc38\uc870\ud558\uc138\uc694.\n\n### Basic Example\n\n```python\nfrom rfs import Result, Success, Failure\n\ndef divide(a: int, b: int) -> Result[float, str]:\n    if b == 0:\n        return Failure(\"Cannot divide by zero\")\n    return Success(a / b)\n\n# \uc548\uc804\ud55c \uc5d0\ub7ec \ucc98\ub9ac\nresult = divide(10, 2)\nif result.is_success:\n    print(f\"Result: {result.unwrap()}\")  # Result: 5.0\n```\n\n### Reactive Streams\n\n```python\nfrom rfs.reactive import Flux\nimport asyncio\n\nasync def process_data():\n    result = await (\n        Flux.from_iterable(range(100))\n        .parallel(4)  # 4\uac1c \uc2a4\ub808\ub4dc \ubcd1\ub82c \ucc98\ub9ac\n        .map(lambda x: x * x)\n        .filter(lambda x: x % 2 == 0)\n        .collect_list()\n    )\n    return result\n```\n\n\ub354 \ub9ce\uc740 \uc608\uc81c\ub294 [Examples Directory](./examples/)\ub97c \ucc38\uc870\ud558\uc138\uc694.\n\n## \ud83c\udfd7\ufe0f Architecture\n\n```\nApplication Layer\n\u251c\u2500\u2500 CLI & Tools       \u2192 \uac1c\ubc1c\uc790 \ub3c4\uad6c\n\u251c\u2500\u2500 Web Framework     \u2192 FastAPI \ud1b5\ud569\n\u2514\u2500\u2500 Cloud Services    \u2192 GCP \ud1b5\ud569\n\nCore Layer\n\u251c\u2500\u2500 Result Pattern    \u2192 \ud568\uc218\ud615 \uc5d0\ub7ec \ucc98\ub9ac\n\u251c\u2500\u2500 Reactive Streams  \u2192 \ube44\ub3d9\uae30 \uc2a4\ud2b8\ub9bc\n\u251c\u2500\u2500 State Machine     \u2192 \uc0c1\ud0dc \uad00\ub9ac\n\u2514\u2500\u2500 Event Sourcing    \u2192 CQRS/\uc774\ubca4\ud2b8 \uc2a4\ud1a0\uc5b4\n\nInfrastructure Layer\n\u251c\u2500\u2500 Security          \u2192 RBAC/ABAC, JWT\n\u251c\u2500\u2500 Monitoring        \u2192 \uba54\ud2b8\ub9ad, \ub85c\uae45\n\u251c\u2500\u2500 Deployment        \u2192 Blue-Green, Canary\n\u2514\u2500\u2500 Optimization      \u2192 \uc131\ub2a5 \ucd5c\uc801\ud654\n```\n\n## \ud83d\udcda Documentation\n\n### \ud575\uc2ec \ubb38\uc11c\n- **[\ud575\uc2ec \uac1c\ub150](./docs/01-core-patterns.md)** - Result \ud328\ud134\uacfc \ud568\uc218\ud615 \ud504\ub85c\uadf8\ub798\ubc0d\n- **[API Reference](./docs/API_REFERENCE.md)** - \uc804\uccb4 API \ubb38\uc11c\n- **[\uc0ac\uc6a9\uc790 \uac00\uc774\ub4dc](./docs/USER_GUIDE.md)** - \ub2e8\uacc4\ubcc4 \uc0ac\uc6a9 \uc548\ub0b4\n\n### \uc8fc\uc81c\ubcc4 \uac00\uc774\ub4dc\n- **[\uc124\uc815 \uad00\ub9ac](./docs/03-configuration.md)** - \ud658\uacbd\ubcc4 \uc124\uc815\n- **[\ubcf4\uc548](./docs/11-security.md)** - \uc778\uc99d, \uc778\uac00, \ubcf4\uc548 \uac15\ud654\n- **[\ubc30\ud3ec](./docs/05-deployment.md)** - \ud504\ub85c\ub355\uc158 \ubc30\ud3ec \uc804\ub7b5\n- **[CLI \ub3c4\uad6c](./docs/14-cli-interface.md)** - \uba85\ub839\ud589 \uc778\ud130\ud398\uc774\uc2a4\n\n### \uc804\uccb4 \ubb38\uc11c\n- **[\ud83d\udcd6 Docs (\ud55c\uad6d\uc5b4)](./docs/)** - 17\uac1c \ubaa8\ub4c8 \uc0c1\uc138 \ubb38\uc11c\n- **[\ud83d\udcda HOF Library](./docs/16-hot-library.md)** - Higher-Order Functions\n- **[\ub9c8\uc774\uadf8\ub808\uc774\uc158 \uac00\uc774\ub4dc](./MIGRATION_GUIDE.md)** - v3\uc5d0\uc11c v4\ub85c \uc5c5\uadf8\ub808\uc774\ub4dc\n\n## \ud83d\udee0\ufe0f Development\n\n### Commands\n\n```bash\n# \uac1c\ubc1c \uc11c\ubc84\nrfs-cli dev --reload\n\n# \ud14c\uc2a4\ud2b8\npytest --cov=rfs\n\n# \ucf54\ub4dc \ud488\uc9c8\nblack src/ && mypy src/\n\n# \uc2dc\uc2a4\ud15c \uc0c1\ud0dc\nrfs status  # 16\uac1c \ud575\uc2ec \uae30\ub2a5 \ubaa8\ub2c8\ud130\ub9c1\n```\n\n### Project Structure\n\n```\nrfs-framework/\n\u251c\u2500\u2500 src/rfs/\n\u2502   \u251c\u2500\u2500 core/          # Result \ud328\ud134, DI, \uc124\uc815\n\u2502   \u251c\u2500\u2500 reactive/      # Mono/Flux \uc2a4\ud2b8\ub9bc\n\u2502   \u251c\u2500\u2500 hof/           # Higher-Order Functions\n\u2502   \u251c\u2500\u2500 production/    # \ud504\ub85c\ub355\uc158 \uc2dc\uc2a4\ud15c\n\u2502   \u2514\u2500\u2500 cloud_run/     # Cloud Run \ud1b5\ud569\n\u251c\u2500\u2500 tests/             # \ud14c\uc2a4\ud2b8 \uc2a4\uc704\ud2b8\n\u251c\u2500\u2500 docs/              # \ud55c\uad6d\uc5b4 \ubb38\uc11c\n\u2514\u2500\u2500 examples/          # \uc608\uc81c \ucf54\ub4dc\n```\n\n## \u2728 Key Features\n\n### \ud83c\udfaf \ud568\uc218\ud615 \ud504\ub85c\uadf8\ub798\ubc0d\n- Result/Maybe/Either \ubaa8\ub098\ub4dc\n- \ud568\uc218 \ud569\uc131\uacfc \ucee4\ub9c1\n- \ubd88\ubcc0\uc131\uacfc \uc21c\uc218 \ud568\uc218\n- [\uc0c1\uc138 \ubb38\uc11c \u2192](./docs/01-core-patterns.md)\n\n### \u26a1 \ubc18\uc751\ud615 \uc2a4\ud2b8\ub9bc\n- \ube44\ub3d9\uae30 Mono/Flux \ud328\ud134\n- \ubc31\ud504\ub808\uc154 \uc9c0\uc6d0\n- 30+ \uc5f0\uc0b0\uc790\n- [\uc0c1\uc138 \ubb38\uc11c \u2192](./docs/README.md#reactive-programming)\n\n### \ud83d\udd12 \uc5d4\ud130\ud504\ub77c\uc774\uc988 \ubcf4\uc548\n- RBAC/ABAC \uc811\uadfc \uc81c\uc5b4\n- JWT \uc778\uc99d\n- \ucde8\uc57d\uc810 \uc2a4\uce90\ub2dd\n- [\uc0c1\uc138 \ubb38\uc11c \u2192](./docs/11-security.md)\n\n### \ud83d\ude80 \ud504\ub85c\ub355\uc158 \uc900\ube44\n- Blue-Green/Canary \ubc30\ud3ec\n- Circuit Breaker \ud328\ud134\n- \uc131\ub2a5 \ubaa8\ub2c8\ud130\ub9c1\n- [\uc0c1\uc138 \ubb38\uc11c \u2192](./docs/05-deployment.md)\n\n## \ud83d\udcca Performance\n\n| Metric | Value | Note |\n|--------|-------|------|\n| **\uc2dc\uc791 \uc2dc\uac04** | ~50ms | CLI \ucd08\uae30\ud654 |\n| **\uba54\ubaa8\ub9ac \uc0ac\uc6a9** | ~25MB | \uae30\ubcf8 \uc2e4\ud589 |\n| **\uc751\ub2f5 \uc2dc\uac04** | <100ms | API \ud638\ucd9c |\n| **\ucc98\ub9ac\ub7c9** | 1200 RPS | \ubca4\uce58\ub9c8\ud06c |\n\n## \ud83d\udea7 Status\n\n- **\uc644\uc131\ub3c4**: 93% (v4.3.0)\n- **\ud504\ub85c\ub355\uc158 \uc900\ube44**: \u2705 Ready\n- **\ubbf8\uc644\uc131 \ud56d\ubaa9**: [TODO.md](./TODO.md) \ucc38\uc870\n\n## \ud83e\udd1d Contributing\n\n\uae30\uc5ec\ub97c \ud658\uc601\ud569\ub2c8\ub2e4! [Contributing Guide](./CONTRIBUTING.md)\ub97c \ucc38\uc870\ud558\uc138\uc694.\n\n```bash\n# \uac1c\ubc1c \ud658\uacbd \uc124\uc815\ngit clone https://github.com/interactord/rfs-framework\ncd rfs-framework\npip install -e \".[dev]\"\n\n# \ud14c\uc2a4\ud2b8 \uc2e4\ud589\npytest\n\n# PR \uc81c\ucd9c\ngit checkout -b feature/your-feature\ngit commit -m \"feat: add feature\"\ngit push origin feature/your-feature\n```\n\n## \ud83d\udcc4 License\n\nMIT License - [LICENSE](./LICENSE) \ucc38\uc870\n\n## \ud83c\udd98 Support\n\n- **\ubb38\uc81c \ubcf4\uace0**: [GitHub Issues](https://github.com/interactord/rfs-framework/issues)\n- **\ud1a0\ub860**: [Discussions](https://github.com/interactord/rfs-framework/discussions)\n- **\ubb38\uc11c**: [Wiki](https://github.com/interactord/rfs-framework/wiki)\n\n---\n\n**Made with \u2764\ufe0f by the RFS Framework Team**",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Enterprise-Grade Reactive Functional Serverless Framework for Python",
    "version": "4.6.5",
    "project_urls": {
        "Bug Tracker": "https://github.com/interactord/rfs-framework/issues",
        "Changelog": "https://github.com/interactord/rfs-framework/blob/main/CHANGELOG.md",
        "Documentation": "https://github.com/interactord/rfs-framework#documentation",
        "Homepage": "https://github.com/interactord/rfs-framework",
        "Repository": "https://github.com/interactord/rfs-framework"
    },
    "split_keywords": [
        "async",
        " cloud-native",
        " enterprise",
        " framework",
        " functional",
        " microservices",
        " monad",
        " optimization",
        " production-ready",
        " reactive",
        " result-pattern",
        " security",
        " serverless",
        " validation"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1e5b3713a9a348f3b7530cfab965b74a1a19accebbe80a4935ae49377c583533",
                "md5": "9d8c655609273b5890e8a717de9322c4",
                "sha256": "52610a37152534a8a15b2f3ec7b5e7ab9485a1f54d00aa169fc9956a5545af00"
            },
            "downloads": -1,
            "filename": "rfs_framework-4.6.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9d8c655609273b5890e8a717de9322c4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 767374,
            "upload_time": "2025-09-12T09:38:26",
            "upload_time_iso_8601": "2025-09-12T09:38:26.841596Z",
            "url": "https://files.pythonhosted.org/packages/1e/5b/3713a9a348f3b7530cfab965b74a1a19accebbe80a4935ae49377c583533/rfs_framework-4.6.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9f290760690c374bce832dd0f2b4ecad8eea6b0a4d9cf5cc589fefcbf762be5c",
                "md5": "9aac4df695cc090c951303f846f81dfe",
                "sha256": "3c9a62104ec3d613e3429df468d76eb6ba4cbf6772ce182de56ee5c533a65799"
            },
            "downloads": -1,
            "filename": "rfs_framework-4.6.5.tar.gz",
            "has_sig": false,
            "md5_digest": "9aac4df695cc090c951303f846f81dfe",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 687303,
            "upload_time": "2025-09-12T09:38:28",
            "upload_time_iso_8601": "2025-09-12T09:38:28.587558Z",
            "url": "https://files.pythonhosted.org/packages/9f/29/0760690c374bce832dd0f2b4ecad8eea6b0a4d9cf5cc589fefcbf762be5c/rfs_framework-4.6.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-12 09:38:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "interactord",
    "github_project": "rfs-framework",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "rfs-framework"
}
        
Elapsed time: 2.30632s