openbb-core
Developing with the openbb-core allows you to build once, then deploy everywhere.
The package serves as the foundational component of the OpenBB open-source ecosystem,
encapsulating essential services and infrastructure for other extensions.
The majority of users will not need to install, or interact with, this package directly, beyond running openbb-build.
Key Features
- Extendable API Routing Mechanism (
RouterClass): Simplifies the process of defining API routes and endpoints - out of the box Python and Web endpoints. - Standardized Data Model (
DataClass): A flexible and dynamic Pydantic model capable of handling various data structures. - Standardized Query Params (
QueryParamsClass): A Pydantic model for handling querying to different providers. - Dynamic Field Support: Enables handling of undefined fields, providing versatility in data processing.
- Robust Data Validation: Utilizes Pydantic's validation features to ensure data integrity.
Installation
Install openbb-core as a standalone package from PyPI with:
pip install openbb-core
Dependencies
Current specifications can be found in the pyproject.toml file of the GitHub repository.
The top-level dependencies are:
- pydantic
- fastapi
- uvicorn
- requests
- aiohttp
- websockets
- python-multipart
- uuid7
- html5lib
- importlib-metadata
- python-dotenv
- ruff
- pyjwt
- pandas
Usage
Most usage is described in other parts of this documentation.
General concepts and classes are explained on the Architecture Overview page.
Go to the Extension Types page to learn about, or get started building, OpenBB extensions.