// the find
anasfik/openai
Dart/Flutter SDK for ChatGPT and all OpenAI APIs (GPT, Dall-e..)
Unofficial Dart/Flutter SDK for the OpenAI API, covering most current endpoints including chat completions, audio, images, embeddings, vector stores, evals, and containers. It's the de facto choice for Flutter devs hitting OpenAI since there's no official Dart library. Actively maintained with recent additions for newer APIs.
- Broad API coverage that tracks OpenAI's releases reasonably quickly — vector stores, evals, graders, containers all present and recently updated
- Streaming support for chat completions works via Dart streams, which integrates naturally with Flutter's StreamBuilder
- Custom HTTP client injection (visible in examples like request_with_custom_client.dart) lets you swap in proxies or mock clients for testing
- Honest about its status — the README flags what's planned vs. complete vs. not planned, so you won't discover missing endpoints after you've already built around them
- Global singleton config via static fields (OpenAI.apiKey, OpenAI.baseUrl) makes it awkward in multi-tenant or multi-key scenarios and is hostile to dependency injection patterns common in larger Flutter apps
- Real-time API, Batch, and Assistants are absent or unplanned — if you need any of these, you're writing raw HTTP yourself
- Chat completion streaming is excluded from the 'complete' classification in the API table, which is one of the most common use cases in Flutter chat UIs
- Test coverage appears thin from the file tree — no visible unit or integration test files for the core library itself, only examples, so regressions from OpenAI breaking changes are likely to slip through