# Data And Providers

hidden: true

## Data And Providers

### Infrastructure Arrangement

The generated FlexBase infrastructure wires all data stores, AI providers, messaging, and email sources through shared abstractions so `YourApplication` only depends on the interface contracts. Flex Studio scaffolds provider folders, NuGet references, configuration sections, and README examples while the hosted builder registers each provider with telemetry, resiliency, and secrets integration.

### Highlights

* **AI Providers**: Offer `IFlexAIProvider` implementations (OpenAI, Azure OpenAI, Anthropic, Gemini, Ollama) with samples showing how to resolve completions and surface configuration hints such as deployments, secrets, and throttling.
* **Data Stores**: Cover vector, full-text, document, file, graph, and time-series stores with interface-based wiring (`IFlexVectorStore`, `IFlexSearchStore`, `IFlexDocumentStore<T>`, `IFlexFileStore`, `IFlexGraphStore`, `IFlexTimeSeriesStore`), usage snippets, and config guidance for endpoints, indexes, credentials, and qos settings.
* **Email + Messaging**: Document `IFlexEmailProvider` and `IFlexTextMessageProvider` implementations (AWS SES, SendGrid, SMTP, Azure Communication, console, Twilio, etc.) including configuration keys and example usage.
* **Generated Docs**: Each subfolder contains provider-specific markdown that explains the infrastructure arrangement, shows a `{YourApplication}` consumer, and lists configuration hints aligned with the generated infrastructure.

### Next Steps

1. Use Flex Studio to add the provider you need; the generated folder will mirror these docs and provide registration snippets.
2. Inject the shared interface in your services (e.g., `IFlexAIProvider`, `IFlexDocumentStore<T>`, `IFlexFileStore`) and call the provided methods.
3. Maintain configuration under `FlexBase:AI:*`, `FlexBase:DataStores:*`, and `FlexBase:Providers:*` so the builder can resolve secrets, endpoints, and provider-specific metadata.
