Skip to content

Progenetix Websites

The Progenetix sites are build from this project using 2 different toolchains:

Progenetix Resource Site

The Progenetix data site is built as a React project, i.e. a pre-compiled JavaScript package.

How to use

Installation of libraries:

npm install

The developer version can be run with

npm run dev

... on 127.0.0.1:3000 for live testing of modifications etc.

For the current Progenetix setup we use Apache and therefore export a static build with

npm run build && npm run export && sudo rsync -av out/* /Library/WebServer/Documents/Sites/progenetix

Otherwise a production build can be run with:

npm run build
npm run start

Directory structure

  • out
  • the compiled website files
  • for use of the static build those should be copied to the server root or another target directory
  • public
  • contents will be moved to the web server, in the given directory structure and naming
  • public/img/IonTichy.png => http://myserver.org/img/IonTichy.png
  • src all the code ...

src/

  • components
  • bits and pieces such as form and navigation scripts / page components which may be used by different parts of the project
  • hooks
  • React functions to add lifecycle events and state management to other functional components
  • modules
  • page-specific scripts and resources
  • in contrast to the pages themselves they are not part of the web hierarchy but compiled into the project
  • pages
  • directories and included scripts correspond to website structure

Progenetix Documentation

The Progenetix documentation docs.progenetix.org is a Mkdocs project with

  • source files (Markdown, images, extra css etc.) in docs/
  • configuration in mkdocs.yaml
  • additional configuration files in extra/

On Github the site is auto-generated on push actions using Github actions with this workflow.

Locally the site can be served from its root directory (i.e. the main project directory) through mkdocs serve.