Adapter
Converts one interface into another that the calling code expects — lets incompatible interfaces work together without modifying either side.
Why we need this / what value this brings
Lets code written against one interface work with a class that has an incompatible interface, without modifying either.
When to use this
Integrating a third-party library/API whose interface doesn't match what your code expects.
How to use or implement this
Write a thin wrapper class implementing your expected interface, delegating internally to the incompatible one — this is exactly what ProviderAdapter does for the 4 LLM providers.
Research questions
- This is exactly the shape of
ProviderAdapterin AI/LLMIntegration: four different LLM provider APIs, one adapter interface the rest of the app calls against.
Empty folder — drop notes, links, and findings here as you research.