|
1 | | -# Arranger - Data Portal API and UI component Generation |
| 1 | +# Arranger |
2 | 2 |
|
3 | | -[<img hspace="5" src="https://img.shields.io/badge/chat-on--slack-blue?style=for-the-badge">](http://slack.overture.bio) |
4 | | -[<img hspace="5" src="https://img.shields.io/badge/License-gpl--v3.0-blue?style=for-the-badge">](https://github.com/overture-stack/arranger/blob/develop/LICENSE) |
5 | | -[<img hspace="5" src="https://img.shields.io/badge/Code%20of%20Conduct-2.1-blue?style=for-the-badge">](code_of_conduct.md) |
6 | | - |
7 | | -<div> |
8 | | -<img align="right" width="120vw" src="icon-arranger.png" alt="arranger-logo"/> |
9 | | -</div> |
10 | | - |
11 | | -Arranger integrates with your underlying Elasticsearch cluster to automatically generate a powerful search API based on your configured index mapping. It consists of two main modules, **Arranger Server** and **Arranger Components**. |
12 | | - |
13 | | -**Arranger Server** is a GraphQL API that communicates with an Elasticsearch index. Arranger Server uses a consistent and custom filter notation called SQON. SQON is designed to be user-friendly, allowing humans to easily understand and create custom filters while being straightforward for software systems to interpret and process. |
14 | | - |
15 | | -**Arranger Components** are interactive and configurable UI components specifically designed to display and query complex datasets from a web browser. |
16 | | - |
17 | | -<!--Blockqoute--> |
| 3 | +Arranger is a versatile, data-agnostic GraphQL search API that leverages Elasticsearch, designed to simplify the process of creating powerful search interfaces for complex datasets. It's accompanied by its own React component library to generate interactive and highly configurable search UIs. |
18 | 4 |
|
19 | 5 | </br> |
20 | 6 |
|
21 | | -> |
22 | | -> <div> |
23 | | -> <img align="left" src="ov-logo.png" height="90"/> |
24 | | -> </div> |
25 | | -> |
26 | | -> *Arranger is a core service within the [Overture](https://www.overture.bio/) research software ecosystem. See our [related products](#related-products) for more information on how Overture helps organize data and enable discovery.* |
27 | | -> |
28 | | -> |
29 | | -
|
30 | | -<!--Blockqoute--> |
| 7 | +> <img align="left" src="ov-logo.png" height="50"/> |
| 8 | +> |
| 9 | +> _Arranger is part of [Overture](https://www.overture.bio/), a collection of open-source software microservices used to create platforms for researchers to organize and share genomics data._ |
31 | 10 |
|
32 | 11 | ## Documentation |
33 | 12 |
|
34 | | -- For development resources, including set up and technical details, see our [Developer Documentation.](https://github.com/overture-stack/arranger/wiki) |
35 | | - |
36 | | -- For more information on installation, configuration, and usage see our [User Documentation.](https://www.overture.bio/documentation/arranger/installation/installation/) |
37 | | - |
38 | | -## Quickstart Docker Install |
39 | | - |
40 | | -To install Arranger using Docker, follow these steps: |
| 13 | +Technical resources for those working with or contributing to the project are available from our official documentation site, the following content can also be read and updated within the `/docs` folder of this repository. |
41 | 14 |
|
42 | | -1. Clone the Arranger repository |
43 | | -2. Navigate to the project directory |
44 | | -3. With Docker running, execute the quickstart `make` target: |
| 15 | +- **[Arranger Overview](https://docs.overture.bio/docs/core-software/Arranger/overview)** |
| 16 | +- [**Setting up the Development Enviornment**](https://docs.overture.bio/docs/core-software/Arranger/setup) |
| 17 | +- [**Common Usage Docs**](https://docs.overture.bio/docs/core-software/Arranger/setup) |
45 | 18 |
|
46 | | -```shell |
47 | | -make start |
48 | | -``` |
| 19 | +## Development Environment |
49 | 20 |
|
50 | | -The deployed services will be accessible through the following ports: |
51 | | - |
52 | | -| Service | Port | |
53 | | -|--|--| |
54 | | -| Arranger Server | localhost:5050/graphql | |
55 | | -| Elasticsearch | localhost:9200 | |
56 | | -| Kibana | localhost:5601 | |
57 | | - |
58 | | -**Note(s):** |
59 | | - |
60 | | -- To generate the API Arranger requires an Elasticsearch Instance and an index mapping. For information on setting Arranger up with a default index mapping, see our [official documentation page on supplying an index mapping.](https://www.overture.bio/documentation/arranger/installation/configuration/es/) |
61 | | - |
62 | | -- Arranger is undergoing refactoring work for what will become version 3+. An _upgrade guide_ is on its way. Current users of v2 may look at the `legacy` branch, meanwhile, where we will continue fixing newly reported bugs until further notice. |
63 | | - |
64 | | -- You may need to add the `--legacy-peer-deps` flag when integrating our modules into your apps. Along with the rewrite, we're steadily updating the internal dependencies, so this isn't necessary. |
| 21 | +- [Node.js](https://nodejs.org/) (v22 or higher) |
| 22 | +- [Docker](https://www.docker.com/) (v4.39.0 or higher) |
65 | 23 |
|
66 | 24 | ## Support & Contributions |
67 | 25 |
|
68 | | -- Filing an [issue](https://github.com/overture-stack/arranger/issues) |
69 | | -- Making a [contribution](CONTRIBUTING.md) |
70 | | -- Connect with us on [Slack](https://overture-bio.slack.com/) |
71 | | -- Add or Upvote a [feature request](https://github.com/overture-stack/arranger/issues?q=is%3Aopen+is%3Aissue+label%3Anew-feature+sort%3Areactions-%2B1-desc) |
72 | | - |
73 | | -## Related Products |
| 26 | +- For support, feature requests, and bug reports, please see our [Support Guide](https://docs.overture.bio/community/support). |
| 27 | +- For detailed information on how to contribute to this project, please see our [Contributing Guide](https://docs.overture.bio/docs/contribution). |
74 | 28 |
|
75 | | -<div> |
76 | | - <img align="right" alt="Overture overview" src="https://www.overture.bio/static/124ca0fede460933c64fe4e50465b235/a6d66/system-diagram.png" width="45%" hspace="5"> |
77 | | -</div> |
| 29 | +## Related Software |
78 | 30 |
|
79 | | -Overture is an ecosystem of research software tools, each with narrow responsibilities, designed to reduce redundant programming efforts and enable developers and data scientists to build reliable systems that organize and share big data. |
| 31 | +The Overture platform includes the following components: |
80 | 32 |
|
81 | | -All our core microservices are included in the Overture **Data Management System** (DMS). The DMS offers turnkey installation, configuration, and deployment of Overture software. For more information on the DMS, read our [DMS documentation](https://www.overture.bio/documentation/dms/). |
| 33 | +</br> |
82 | 34 |
|
83 | | -See the links below for additional information on our other research software tools: |
| 35 | +| Software | Description | |
| 36 | +| ------------------------------------------------------- | ----------------------------------------------------------------------------------------- | |
| 37 | +| [Score](https://github.com/overture-stack/score/) | Transfer data to and from any cloud-based storage system | |
| 38 | +| [Song](https://github.com/overture-stack/song/) | Catalogue and manage metadata associated to file data spread across cloud storage systems | |
| 39 | +| [Maestro](https://github.com/overture-stack/maestro/) | Organizing your distributed data into a centralized Elasticsearch index | |
| 40 | +| [Arranger](https://github.com/overture-stack/arranger/) | A search API with reusable UI components | |
| 41 | +| [Stage](https://github.com/overture-stack/stage) | A React-based web portal scaffolding | |
| 42 | +| [Lyric](https://github.com/overture-stack/lyric) | A model-agnostic, tabular data submission system | |
| 43 | +| [Lectern](https://github.com/overture-stack/lectern) | Schema Manager, designed to validate, store, and manage collections of data dictionaries. | |
84 | 44 |
|
85 | | -</br> |
| 45 | +If you'd like to get started using our platform [check out our quickstart guides](https://docs.overture.bio/guides/getting-started) |
86 | 46 |
|
87 | | -|Software|Description| |
88 | | -|---|---| |
89 | | -|[Ego](https://www.overture.bio/products/ego/)|An authorization and user management service| |
90 | | -|[Ego UI](https://www.overture.bio/products/ego-ui/)|A UI for managing Ego authentication and authorization services| |
91 | | -|[Score](https://www.overture.bio/products/score/)| Transfer data to and from any cloud-based storage system| |
92 | | -|[Song](https://www.overture.bio/products/song/)|Catalog and manage metadata associated to file data spread across cloud storage systems| |
93 | | -|[Maestro](https://www.overture.bio/products/maestro/)|Organizing your distributed data into a centralized Elasticsearch index| |
94 | | -|[Arranger](https://www.overture.bio/products/arranger/)|A search API with reusable UI components that build into configurable and functional data portals| |
95 | | -|[DMS-UI](https://github.com/overture-stack/dms-ui)|A simple web browser UI that integrates Ego and Arranger| |
96 | | - |
97 | | -## Acknowledgements |
| 47 | +## Funding Acknowledgement |
98 | 48 |
|
99 | 49 | Overture is supported by grant #U24CA253529 from the National Cancer Institute at the US National Institutes of Health, and additional funding from Genome Canada, the Canada Foundation for Innovation, the Canadian Institutes of Health Research, Canarie, and the Ontario Institute for Cancer Research. |
0 commit comments