https://github.com/alexslemonade/refinebio-web

Refinebio Web

https://github.com/alexslemonade/refinebio-web

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.3%) to scientific vocabulary
Last synced: 9 months ago · JSON representation

Repository

Refinebio Web

Basic Info
  • Host: GitHub
  • Owner: AlexsLemonade
  • License: bsd-3-clause
  • Language: JavaScript
  • Default Branch: dev
  • Homepage: https://staging.web.refine.bio
  • Size: 15.7 MB
Statistics
  • Stars: 1
  • Watchers: 5
  • Forks: 0
  • Open Issues: 33
  • Releases: 0
Created almost 4 years ago · Last pushed about 1 year ago
Metadata Files
Readme Funding License

README.md

Node.js Yarn formatter: prettier license: BSD-3-Clause

refine.bio Web

This is a web client for refine.bio that enables users to search, build, and download custom datasets for their needs including gene expression matrices and sample metadata.

Table of Contents
- [Getting Started](#getting-started) - [Prerequisites](#prerequisites) - [Development](#development) - [Initialization](#initialization) - [Services](#services) - [Linter](#linter) - [Build](#build) - [Deployment](#deployment) - [Environments](#environments) - [Staging](#staging) - [Production](#production) - [Tech Stacks](#tech-stacks) - [Framework and Tool](#framework-and-tool) - [Formatting](#formatting) - [Linting](#linting) - [Styling](#styling) - [Support](#support) - [License](#license)

Getting Started

Prerequisites

To run the application on localhost, the following requirements must be installed on your environment:

Yarn

For macOS, Yarn can be installed using the Homebrew package manager which also installs Node.js if it's not already installed.

In the terminal, run:

  1. brew install yarn to install Yarn
  2. yarn set version 3.6.1 to specify the Yarn version

npm

Alternatively, Yarn can be installed using npm which comes with Node.js.

Node.js

To switch the Node.js version, we recommend using a node version manager such as fnm or nvm.

Development

The following commands must be run from the project root directory.

Initialization

To install the packages and dependencies, run the following command:

yarn install

Services

These ports are used by a client and a storybook services that run locally in separate Docker containers.

| Service | Port | URL | | :-------- | :--- | :--------------------------------------------- | | Client | 3002 | http://localhost:3002 | | Storybook | 6006 | http://localhost:6006 |

To start the services, run the following commands:

Run the client

yarn start-client

Run the storybook

yarn start-storybook

Run all services

yarn start-local

Stop all services

yarn stop-local

Linter

To lint the code, run the following command:

yarn lint

You can run this command with options such as --fix which automatically corrects minor linting errors (e.g., module import order, layout formatting).

Build

To generate the production build, run the following command:

yarn build

Next.js will autogenerate the .next build directory which is optimized and exportable.

Deployment

Environments

Staging

The staging environment is a close replica of the production environment and we use it to run QA tests before releasing it to the production server. The staging server is deployed automatically by merging PR into the dev branch.

Production

The production environment is the latest release of the application that is available to end users. We manually promote a staging deployment to the production server in Vecel once all the QA tests are passed.

Tech Stacks

Framework and tool

This project is using Next.js (currently version 13) as a frontend framework and Storybook (currently version 7) as a collaboration tool for the UI development.

Formatting

We use Prettier for JS code formatting to automatically format the changed files on each commit. It can be integrated into various IDEs.

Linting

We use ESlint to statically analyze our JS code to correct common issues to write a bug free application.

Styling

Support

refine.bio is developed by Childhood Cancer Data Lab and powered by Alex's Lemonade Stand Foundation.

You can support the CCDL’s efforts to give researchers the tools to create a healthier, more prosperous future for kids fighting cancer and beyond.

License

Distrubuted under the 3-Clause BSD License.

Owner

  • Name: Alex's Lemonade Stand Foundation
  • Login: AlexsLemonade
  • Kind: organization

Childhood Cancer Data Lab of ALSF

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 93
  • Total pull requests: 52
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 6 days
  • Total issue authors: 3
  • Total pull request authors: 2
  • Average comments per issue: 0.71
  • Average comments per pull request: 1.19
  • Merged pull requests: 39
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 90
  • Pull requests: 52
  • Average time to close issues: 28 days
  • Average time to close pull requests: 6 days
  • Issue authors: 3
  • Pull request authors: 2
  • Average comments per issue: 0.7
  • Average comments per pull request: 1.19
  • Merged pull requests: 39
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • nozomione (154)
  • davidsmejia (12)
  • dvenprasad (1)
  • jaclyn-taroni (1)
Pull Request Authors
  • nozomione (101)
  • davidsmejia (1)
Top Labels
Issue Labels
QA (34) bug (11) Epic (9) enhancement (1)
Pull Request Labels
bug (11) QA (5)

Dependencies

package.json npm
  • @testing-library/jest-dom ^5.16.5 development
  • @testing-library/react ^13.4.0 development
  • eslint ^7.32.0 development
  • eslint-config-airbnb ^19.0.4 development
  • eslint-config-next 12.2.5 development
  • eslint-config-prettier ^8.5.0 development
  • eslint-plugin-prettier ^4.2.1 development
  • eslint-plugin-react ^7.31.1 development
  • jest ^29.0.2 development
  • jest-environment-jsdom ^29.0.2 development
  • prettier ^2.7.1 development
  • @sentry/nextjs ^7.12.1
  • next 12.2.5
  • react 18.2.0
  • react-dom 18.2.0
yarn.lock npm
  • 730 dependencies
Dockerfile docker
  • node $NODE_VER build
docker-compose.yml docker
  • refinebio-web latest
  • refinebio-web-storybook latest