diff --git a/README.md b/README.md index fbc74a9..6322f6b 100644 --- a/README.md +++ b/README.md @@ -5,23 +5,26 @@ _A research hub for universities_ ## Goal -The goal of this project is developing a platform that universities can use to **host** and **share** their _datasets_, _research projects_ and resulting -_papers_. +The goal of this project is developing a platform that universities can use to **host** and **share** their _datasets_, _research projects_ and resulting _ +papers_. -## Development +## Structure The project consists of four parts: -- a **single-page-app** built with [React][react] (`/frontend`); -- a **web API** built with [Django Rest Framework][drf] (`/backend`); -- a **dynamic proxy** implemented on the [Apache HTTP Server][httpd] (`/proxy`); -- a **Docker image** containing a single instance of [JupyterLab][jupyterlab] (`/jupyter`) +- a **single-page-app** built with [React][what-is-react] (`/frontend`); +- a **web API** built with [Django Rest Framework][what-is-drf] (`/backend`); +- a **dynamic proxy** implemented on the [Apache HTTP Server][what-is-httpd] (`/proxy`); +- a **Docker image** containing a single instance of [JupyterLab][what-is-jupyterlab] (`/jupyter`) -[react]: https://reactjs.org/ -[drf]: https://www.django-rest-framework.org/ -[httpd]: https://httpd.apache.org/ -[jupyterlab]: https://jupyter.org/ +[what-is-react]: https://reactjs.org/ + +[what-is-drf]: https://www.django-rest-framework.org/ + +[what-is-httpd]: https://httpd.apache.org/ + +[what-is-jupyterlab]: https://jupyter.org/ For more details on the underlying libraries, packages, modules and plugins used, see the following files: @@ -31,27 +34,42 @@ For more details on the underlying libraries, packages, modules and plugins used - [`/jupyter/Dockerfile`][lib-jupyter] [lib-frontend]: https://github.com/Steffo99/sophon/blob/main/frontend/package.json + [lib-backend]: https://github.com/Steffo99/sophon/blob/main/backend/pyproject.toml + [lib-proxy]: https://github.com/Steffo99/sophon/blob/main/proxy/httpd.conf + [lib-jupyter]: https://github.com/Steffo99/sophon/blob/main/jupyter/Dockerfile +## Development + ### Progress -Development progress is tracked on [issue #20](https://github.com/Steffo99/sophon/issues/20). +Development progress is tracked on issues [#20][issue-#20] and [#67][issue-#67]. +Also see the [issue tracker][issue-tracker]. + +[issue-#20]: https://github.com/Steffo99/sophon/issues/20 + +[issue-#67]: https://github.com/Steffo99/sophon/issues/67 + +[issue-tracker]: https://github.com/Steffo99/sophon/issues ### Tools -Sophon is being developed using [IntelliJ IDEA Ultimate](https://www.jetbrains.com/idea/): its metadata is included in the `.idea` directory so that the code -style and tools are consistent across all machines used during the development. +Sophon is developed using [IntelliJ IDEA Ultimate][what-is-idea]. -Run configurations for *running the backend*, *testing the backend* and *running the frontend* are included. +Metadata is included in the `/.idea` directory so that code style and run configuration are consistent across all machines used during the development. + +Run configurations for *running the backend*, *testing the backend*, *running the frontend* and *testing the frontend* are included. + +[what-is-idea]: https://www.jetbrains.com/idea/ ### Commits -Commits names are prefixed with a variant of [Gitmoji](https://gitmoji.dev/) which follows roughly this legend: +Commits names are prefixed with a variant of [Gitmoji][what-is-gitmoji] which follows roughly this legend: - ✨ New feature - 🔧 Refactor or tweak @@ -63,8 +81,41 @@ Commits names are prefixed with a variant of [Gitmoji](https://gitmoji.dev/) whi - 📦 Packaging - 🔨 Tool update - 🚧 Work in progress +- 🔀 Merge + +[what-is-gitmoji]: https://gitmoji.dev/ -### People +### Continuous Deployment (CD) -The project is currently being developed by [Stefano Pigozzi](https://github.com/Steffo99/), under the tutoring of [Francesco Faenza](https://github.com/Cicciodev) and [Claudia Canali](https://weblab.ing.unimore.it/people/canali/). +Sophon uses [GitHub Actions][what-is-github-actions] and [Vercel][what-is-vercel] for Continuous Deployment. + +[what-is-vercel]: https://vercel.com/ + +[what-is-github-actions]: https://docs.github.com/en/actions + +Docker images for the frontend, backend, proxy and jupyterlab are built by GitHub Actions **on each push to the `main` branch** of this repository, +and [automatically published][list-containers] to the [GitHub Container Registry][what-is-github-containers] + +[list-containers]: https://github.com/Steffo99?tab=packages&repo_name=sophon + +[what-is-github-containers]: https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry + +A generic version of the frontend is build automatically by Vercel **on each push to the `main` branch** and **on every pull request** to this repository, and +automatically published to the [sophon.steffo.eu](https://sophon.steffo.eu) domain. + + +### Releases + +Releases are created on each milestone and are available on the [Releases page][list-releases]. + +[list-releases]: https://github.com/Steffo99/sophon/releases + + +## People + +The project is developed by [Stefano Pigozzi][who-is-stefano-pigozzi] for [Università degli studi di Modena e Reggio Emilia][what-is-unimore]. + +[who-is-stefano-pigozzi]: https://steffo.eu + +[what-is-unimore]: https://www.unimore.it/