As part of AI-READI, a data generation project supported by the NIH-funded Bridge2AI program, we are developing FAIRhub. This is a web platform for easily managing, curating, and sharing clinical and biomedical research data such that the data is FAIR (Findable, Accessible, Interoperable, Reusable) and ready for downstream AI-based analysis. For the duration of the project, we anticipate the platform to support the mangement, curation, and sharing of data generated by the AI-READI project where we expect to collect diabetes-related multimodal data from 4,000 study participant during 2022-2026 (more details are available on the project website aireadi.org). This repository contains the source code of FAIRhub along with instructions for using the source code as well as pointers to various documentation and resources related to the platform.
VSCode + Volar (and disable Vetur) + TypeScript Vue Plugin (Volar).
TypeScript cannot handle type information for .vue
imports by default, so we replace the tsc
CLI with vue-tsc
for type checking. In editors, we need TypeScript Vue Plugin (Volar) to make the TypeScript language service aware of .vue
types.
If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a Take Over Mode that is more performant. You can enable it by the following steps:
- Disable the built-in TypeScript Extension
- Run
Extensions: Show Built-in Extensions
from VSCode's command palette - Find
TypeScript and JavaScript Language Features
, right click and selectDisable (Workspace)
- Run
- Reload the VSCode window by running
Developer: Reload Window
from the command palette.
See Vite Configuration Reference.
yarn install
yarn dev
yarn build
Run Unit Tests with Vitest
yarn test:unit
Run End-to-End Tests with Cypress
yarn build
yarn test:e2e # or `npm run test:e2e:ci` for headless testing
Lint with ESLint
yarn lint
This repository is automatically deployed to Azure on every push to the repository. If you need to reference a specific branch or pull request, you can do so by using the following URL pattern:
- https://brave-ground-07b6bfb10-
BRANCH_NAME
.centralus.2.azurestaticapps.net - https://brave-ground-07b6bfb10-
GITHUB_PR_NUMBER
.centralus.2.azurestaticapps.net
The production
branch is automatically deployed to the following URL: fairhub.io.
The storybook for the FAIRhub UI library is automatically deployed to Azure on every push to the repository. If you need to reference a specific branch or pull request, you can do so by using the following URL pattern:
- https://white-ocean-00e852610--
BRANCH_NAME
.centralus.2.azurestaticapps.net - https://white-ocean-00e852610--
GITHUB_PR_NUMBER
.centralus.2.azurestaticapps.net
The production
branch is automatically deployed to the following URL: style.fairhub.io.
Our user documentation for FAIRhub is available at docs.fairhub.io (STATUS: not active). The source code of the user documentation is maintained from its dedicated GitHub repository.
The basic instructions for running a local version of FAIRhub for development purposes are provided above in this README. Details about our high-level development best practices and standards are available at dev.aireadi.org (the source code is maintained from its dedicated GitHub repository). Details about our development practices specific to FAIRhub are available at dev.fairhub.io (the source code is maintained from its dedicated GitHub repository).
The APIs of FAIRhub are documented at api.fairhub.io (STATUS: not active). The source code of the API documentation is maintained from its dedicated GitHub repository.
We use Storybook for documenting our design system. It is available at style.fairhub.io. You can refer to that for design guidelines, component documentation, and resources for editing components locally. The source code of the storybook in included in this repository in the storybook folder. Changes between different versions of the storybook are documented in its dedicated CHANGELOG. Instructions for running the storybook locally for editing and suggesting changes are provided below:
// You will need to be on node 16.13.0 or higher
yarn install
yarn storybook
Changes between different versions of FAIRhub are documented in the CHANGELOG.
The typical inputs of FAIRhub will be clinical and biomedical research related data uploaded by the users. The typical output of FAIRhub will be FAIR and AI-ready datasets shared by the users.
Contributions are always welcome!
If you are interested in reporting/fixing issues and contributing directly to the code base, please see CONTRIBUTING.md for more information on what we're looking for and how to get started.
We recommend to look at the documentation for more information.
If you have any questions or suggestions, please contact us using GitHub issues.
This work is licensed under MIT. See LICENSE for more information.
If you are using FAIRhub or reusing the source code from this repository for any purpose, please cite:
ADD Citation here
This project is supported by the NIH-funded Bridge2AI program (1OT2OD032644). The content is solely the responsibility of the authors and does not necessarily represent the official views of the NIH.