* missing decorator * missing optional statements * us-gov to optional and right position * removing redundant call * lazy load mappings * docstrings * introducing the extension loader class * misleading docstring * using the extension loader on the router * using the extension loader on the credentials * docstrings * lazy load of entry points * checkout dev_install * using the extension loader to get the entry points instead of recalling the function * improved auth service and charting service * using the extension loader on the registry * typos * adding properties to extension loader for easy access * using the extension loader on the package builder * avoiding circular imports by using forward references * fix charting service tests * test for the extension loader * Update openbb_platform/core/openbb_core/app/model/credentials.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/app/router.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Update openbb_platform/core/openbb_core/provider/registry.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * adjustments --------- Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
OpenBB Platform - Core
Overview
The Core extension serves as the foundational component of the OpenBB Platform. It encapsulates essential functionalities and serves as an infrastructural base for other extensions. This extension is vital for maintaining the integrity and standardization of the platform.
Key Features
- 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.
- API Routing Mechanism (
RouterClass): Simplifies the process of defining API routes and endpoints - out of the box Python and Web endpoints.
Getting Started
Prerequisites
- Python 3.8 or higher.
- Familiarity with FastAPI and Pydantic.
Installation
Installing through pip:
pip install openbb-core
Note that, the openbb-core is an infrastructural component of the OpenBB Platform. It is not intended to be used as a standalone package.
Usage
The Core extension is used as the basis for building and integrating new data sources, providers, and extensions into the OpenBB Platform. It provides the necessary classes and structures for standardizing and handling data.
Contributing
We welcome contributions! If you're looking to contribute, please:
- Follow the existing coding standards and conventions.
- Write clear, documented code.
- Ensure your code does not negatively impact performance.
- Test your contributions thoroughly.
Please refer to our Contributing Guidelines.
Collaboration
Engage with the development team and the community. Be open to feedback and collaborative discussions.
Support
For support, questions, or more information, please visit OpenBB Platform Documentation.
License
This project is licensed under the MIT License - see the LICENSE.md file for details.