ELIXIR Cloud Components (ECC) are lightweight, fast and reusable Web Components for operationalizing various ELIXIR Cloud & AAI and GA4GH Cloud services.
For comprehensive guides, API references, and examples, visit our documentation:
https://cloud-components.2.rahtiapp.fi/
- Node.js (v18 or higher)
- npm or yarn
-
Clone the repository:
git clone https://github.com/elixir-cloud-aai/cloud-components.git cd cloud-components
-
Install dependencies:
npm install
-
Start development:
# Run the design package first (required by all other packages) npm run dev --workspace=@elixir-cloud/design # In another terminal, run a specific package: npm run dev --workspace=@elixir-cloud/<package-name>
Package | Description |
---|---|
@elixir-cloud/design |
Design system and utility components |
@elixir-cloud/service-registry |
GA4GH Service Registry components |
@elixir-cloud/cloud-registry |
ELIXIR Cloud Registry components |
@elixir-cloud/trs |
GA4GH Tool Registry Service components |
@elixir-cloud/trs-filer |
TRS-Filer service components |
@elixir-cloud/wes |
GA4GH Workflow Execution Service components |
# Install dependencies
npm install
# Run specific package in development mode
npm run dev --workspace=@elixir-cloud/<package-name>
# Build all packages
npm run build
# Run tests
npm test
# Lint code
npm run lint
# Format code
npm run format
ECC is built on modern web standards:
- Web Components: Platform-agnostic, framework-independent components
- TypeScript: Type-safe development with excellent IDE support
- Lit: Efficient web component library for building reactive UIs
- Vite: Fast build tool and development server
- Monorepo: Organized workspace with shared dependencies and tooling
This project is a community effort and lives off your contributions, be it in the form of bug reports, feature requests, discussions, fixes or any other form of contribution!
Please refer to the guidelines available at CONTRIBUTING.md
if
you are interested in contributing.
Please mind the code of conduct described in
CODE_OF_CONDUCT.md
for all interactions with the community.
Please be nice to one another! :)
If you experience any unacceptable behavior by any member of the community,
please refer to the contact method specified in
CODE_OF_CONDUCT.md
to report the incident to the community
leaders.
The project adopts the semantic versioning scheme for versioning. Currently the service is in a pre-release stage, so changes to the API, including breaking changes, may occur at any time without further notice.
This project is distributed under the Apache License 2.0, a
copy of which is also available in LICENSE
.
The project is maintained by ELIXIR Cloud & AAI, a Driver Project of the Global Alliance for Genomics and Health (GA4GH), under the umbrella of the ELIXIR Compute Platform.
To get in touch with use, please use one of the following routes:
- For filing bug reports, feature requests or other code-related issues, please make use of the project's issue tracker.
- For private/personal issues, more involved communication, or if you would like to join our team as a regular contributor, you can either join our chat board or email the community leaders.