Introduction#

bfabric_web_apps is a Python library designed for developing and integrating satellite applications with the B-Fabric Laboratory Information Management System (LIMS).


Overview#

Built to work seamlessly with Dash, bfabric_web_apps simplifies the development of web applications that interact with B-Fabric. Using a template-based approach, it standardizes common patterns, streamlines development, and provides a modular foundation for extending B-Fabric with satellite applications.

Key Features#

  • Seamless B-Fabric Integration

    • Token Management – Securely handle authentication tokens for API access.

    • Entity Data Handling – Retrieve, modify, and update B-Fabric entities dynamically.

    • Integrated Logging – Track API calls, application events, and errors for debugging and auditing.

  • Prebuilt UI Components & Layouts

    • Utilize predefined Dash components, layouts, and callbacks to accelerate development, maintain consistency, and enhance user experience.


What Is This Library?#

bfabric_web_apps is your foundation for building web applications that interface directly with B-Fabric. Its core objectives include:

  • Automating repetitive tasks like token handling and entity lookups.

  • Simplifying the creation of dashboards with Dash and Plotly for data visualization.

To see the full source code or to contribute, visit the main GitHub repository:
bfabric_web_apps


Quickstart#

Developers can hit the ground running with the bfabric_web_app_template, a ready-made project that demonstrates how to configure and deploy a bfabric_web_apps application end-to-end. It includes:

  • Preconfigured layout using Dash and Bootstrap.

  • Authentication flow for B-Fabric.

  • Examples of logging, API interaction, and entity handling.

By combining the template with the bfabric_web_apps library, you’ll have a flexible, scalable starting point for building custom web apps that tap into B-Fabric’s powerful capabilities.

Alternatively, if you want to get started quickly, you can find a simple template example here:
Basic Usage Example


What Is B-Fabric?#

B-Fabric is a Laboratory Information Management System (LIMS) developed for managing scientific experiments and their associated data. It offers a robust platform to track samples, analyze results, and organize workflows efficiently for researchers, laboratories, and core facilities.

For more information, visit the B-Fabric official website.


What Is BfabricPy?#

BfabricPy is a Python library that serves as a programmatic interface to interact with the B-Fabric API. It enables developers to perform operations such as querying data, uploading results, and managing B-Fabric entities seamlessly from Python-based applications.

BfabricPy is a core dependency of bfabric_web_apps and powers API connections for building custom applications.

For more information, visit the BfabricPy GitHub repository.


What Is Dash?#

Dash is a Python framework for building interactive web applications with a focus on data visualization and analytics. It combines the power of Plotly for frontend visualizations and Flask for backend support, making it ideal for creating scientific and analytical dashboards.

For more details, refer to the Dash official documentation.