Metadata-Version: 2.4
Name: sfai-sdk
Version: 0.13b0
Summary: A zero-config Python CLI to scaffold, containerize, and deploy FastAPI apps
Author-email: Jaswanth Rao Billakanti <jbillakanti@salesforce.com>
Classifier: Development Status :: 4 - Beta
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: typer>=0.9.0
Requires-Dist: rich>=13.7.1
Requires-Dist: pydantic>=2.0.0
Requires-Dist: PyYAML>=6.0
Requires-Dist: click>=8.1.7
Requires-Dist: boto3>=1.24.0
Requires-Dist: kubernetes>=27.2.0
Requires-Dist: termcolor>=2.0.0
Requires-Dist: requests
Requires-Dist: fastapi>=0.100.0
Provides-Extra: dev
Requires-Dist: build; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: pytest-html; extra == "dev"
Requires-Dist: pytest-xdist; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: isort; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: absolufy-imports>=0.3.1; extra == "dev"
Requires-Dist: pytest-mock>=3.10.0; extra == "dev"
Requires-Dist: nbstripout>=0.6.0; extra == "dev"
Provides-Extra: docs
Requires-Dist: mkdocs>=1.5.0; extra == "docs"
Requires-Dist: mkdocs-material>=9.0.0; extra == "docs"
Requires-Dist: mkdocs-jupyter>=0.24.0; extra == "docs"
Requires-Dist: mkdocstrings[python]>=0.22.0; extra == "docs"
Requires-Dist: mkdocs-git-authors-plugin>=0.7.0; extra == "docs"
Requires-Dist: mkdocs-git-revision-date-localized-plugin>=1.2.0; extra == "docs"
Requires-Dist: pymdown-extensions>=10.0.0; extra == "docs"
Provides-Extra: all
Requires-Dist: sfai[dev,docs]; extra == "all"
Dynamic: license-file

# SFAI SDK

A powerful toolkit for developing, connecting, and deploying AI applications within the Salesforce ecosystem. Build sophisticated FastAPI-powered AI services, deploy seamlessly to Heroku for native Salesforce integration, publish them to MuleSoft, and connect with Salesforce for enhanced agent capabilities. This SDK simplifies the entire AI application lifecycle—from local development to enterprise deployment on Heroku Private Spaces—with zero configuration, Kubernetes or container support, and secure connectivity between AI services and Salesforce.

## Terms of the use
Use of this project with Salesforce is subject to the [TERMS OF USE](https://github.com/salesforce/sfai-sdk/blob/main/TERMS%20OF%20USE)

## 🚀 Features

- Scaffold a FastAPI app with Docker + Helm support
- Deploy to Kubernetes (local or cloud) using Helm
- Persistent context system for app configuration
- Simplified environment management
- Built-in networking tools (port-forwarding, tunnels)
- MuleSoft API integration
- **Seamless Heroku deployment** for Salesforce ecosystem integration

## Salesforce Ecosystem Integration

SFAI SDK is designed to work natively with the Salesforce ecosystem:

- **Heroku Deployment**: Deploy directly to Salesforce's preferred application platform with enterprise features like Private Spaces and internal routing
- **MuleSoft Connectivity**: Publish and deploy APIs to MuleSoft for Salesforce integration
- **Zero Configuration**: Context system manages all environment settings automatically
- **Enterprise Security**: Support for Salesforce SSO and secure network configurations

## Installation

```bash
pip install sfai-sdk
```

### Prerequisites

- Python 3.9+
- Docker
- kubectl
- Helm
- For AWS deployments: AWS CLI configured with appropriate permissions
- For Heroku deployments: Heroku CLI installed

For detailed documentation, see the [SFAI-DOCS](https://opensource.salesforce.com/sfai-sdk/).

## Contributing

We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.

## License

This project is licensed under the Apache License 2.0 - see the [LICENSE.txt](LICENSE.txt) file for details.
