This is the base REPOSITORY for Gen3.2 data commons.
Gen3 Data Commons using the Gen3 Frontend Framework is a matter of the following:
-
create a clone of Gen3 Data Commons Application
-
Configure the commons by editing the configuration files in the
config -
Add your pages and content
-
Deploy via helm charts or Docker.
Changes to the Gen3 Data Commons Application can be pulled from the Common Frontend Repository. You need configure git to pull from the Common Frontend Repository.
git remote add upstream https://github.com/uc-cdis/commons-frontend-app.gitor
git remote add upstream git@github.com:uc-cdis/commons-frontend-app.gitchanges to main can be pulled from the Common Frontend Repository by running:
git pull upstream mainPlease see Styling and Theming and Local Development with Helm Charts for more information on setting up and configuring the Gen3 Data Commons Application. This documentation is currently less complete than we would like, but we will be adding to it as development progresses.
The minimum node version is set to v20.11.0 only from an LTS perspective. Node can be downloaded from the official Node.js site. You may also consider using a Node version manager. Your version of Node may not ship with npm v10. To install it, run:
npm install npm@10.2.4 -gNote: if you see this error:
npm ERR! code ENOWORKSPACES
npm ERR! This command does not support workspaces.
you can run npx next telemetry disable
Alternatively, you can use nvm to install the correct version of npm:
nvm install 20.11.0From the root of the project, install dependencies by running:
npm installnpm run devOpen http://localhost:3000 with your browser to see the result.
You build a Docker image by:
docker build .The following steps usually apply to update a forked commons.
Get the changes from the parent fork:
git remote add upstream git@github.com:uc-cdis/commons-frontend-app.git
git fetch upstreamCreate a branch and merge changes from upstream:
git merge upstream/mainIf the above has the error message: "fatal: refusing to merge unrelated histories" error.
This often happens when the repo was created as a template, not a fork.
To resolve this, the --allow-unrelated-histories flag can be used during the merge operation. This flag forces Git to merge the branches despite lacking a common history.
git merge upstream/main --allow-unrelated-historiesIf you use this flag, it is recommended that you carefully review the changes and resolve any conflicts before finalizing the merge.
You will see merge conflicts. In general: take the remote's version for everything except the config files, as those are customized to the commons config. Resolve any remaining config issues and open a PR. Test the new common by running it locally or in a staging environment.