From 4f3dfe0e723cd43eb8311db87dc0184fb66a088f Mon Sep 17 00:00:00 2001 From: Dominic Grimm Date: Wed, 16 Feb 2022 21:45:39 +0100 Subject: [PATCH] Added base wiki --- Makefile | 28 ++++++++++++++++++++++++++++ README.md | 4 +++- docs/.gitignore | 17 +++++++++++++++++ docs/book.toml | 27 +++++++++++++++++++++++++++ docs/src/SUMMARY.md | 6 ++++++ docs/src/development/README.md | 6 ++++++ docs/src/installation/README.md | 9 +++++++++ docs/src/installation/build.md | 19 +++++++++++++++++++ docs/src/installation/clone.md | 14 ++++++++++++++ 9 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 Makefile create mode 100644 docs/.gitignore create mode 100644 docs/book.toml create mode 100644 docs/src/SUMMARY.md create mode 100644 docs/src/development/README.md create mode 100644 docs/src/installation/README.md create mode 100644 docs/src/installation/build.md create mode 100644 docs/src/installation/clone.md diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..d7eedb7 --- /dev/null +++ b/Makefile @@ -0,0 +1,28 @@ +# Mentorenwahl: A fullstack application for assigning mentors to students based on their whishes. +# Copyright (C) 2022 Dominic Grimm + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +.PHONY: all dev prod docs + +all: docs prod + +dev: + docker-compose build --build-arg BUILD_ENV=development + +prod: + docker-compose build + +docs: + cd docs && mdbook build diff --git a/README.md b/README.md index 7361c50..14b47d8 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,12 @@ # mentorenwahl +[![Build Status](https://drone.dergrimm.net/api/badges/mentorenwahl/mentorenwahl/status.svg)](https://drone.dergrimm.net/mentorenwahl/mentorenwahl) + A fullstack application for assigning mentors to students based on their whishes. # Documentation -To build the documentation, run `make docs` in `docker/backend/`. +To build the documentation, run `make docs`. # License diff --git a/docs/.gitignore b/docs/.gitignore new file mode 100644 index 0000000..7c4f5e5 --- /dev/null +++ b/docs/.gitignore @@ -0,0 +1,17 @@ +# Mentorenwahl: A fullstack application for assigning mentors to students based on their whishes. +# Copyright (C) 2022 Dominic Grimm + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +book diff --git a/docs/book.toml b/docs/book.toml new file mode 100644 index 0000000..da076b9 --- /dev/null +++ b/docs/book.toml @@ -0,0 +1,27 @@ +# Mentorenwahl: A fullstack application for assigning mentors to students based on their whishes. +# Copyright (C) 2022 Dominic Grimm + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +[book] +authors = ["Dominic Grimm"] +language = "en" +multilingual = false +src = "src" +title = "Mentorenwahl" + +[output.html] +git-repository-url = "https://git.dergrimm.net/mentorenwahl/mentorenwahl" +git-repository-icon = "fa-code-fork" +no-section-label = true diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md new file mode 100644 index 0000000..049a857 --- /dev/null +++ b/docs/src/SUMMARY.md @@ -0,0 +1,6 @@ +# Summary + +- [Installation](./installation/README.md) + - [Clone the repository](./installation/clone.md) + - [Build the containers](./installation/build.md) +- [Development](./development/README.md) diff --git a/docs/src/development/README.md b/docs/src/development/README.md new file mode 100644 index 0000000..9dde281 --- /dev/null +++ b/docs/src/development/README.md @@ -0,0 +1,6 @@ +# Development + +For development, you will need: + +- [Crystal](https://crystal-lang.org/) +- [NodeJs](https://nodejs.org/) diff --git a/docs/src/installation/README.md b/docs/src/installation/README.md new file mode 100644 index 0000000..dc5bf0d --- /dev/null +++ b/docs/src/installation/README.md @@ -0,0 +1,9 @@ +# Installation + +To install the docker-compose app, you will need to have the following dependencies installed: + +- [Git](https://git-scm.com/) +- [GNU Make](https://www.gnu.org/software/make/) +- [MdBook](https://github.com/rust-lang/mdBook) +- [Docker](https://www.docker.com/products/overview) +- [Docker Compose](https://docs.docker.com/compose/install/) diff --git a/docs/src/installation/build.md b/docs/src/installation/build.md new file mode 100644 index 0000000..ea58565 --- /dev/null +++ b/docs/src/installation/build.md @@ -0,0 +1,19 @@ +# Build the containers + +Building the project is as simple as invoking the `make` command according to following options: + +```bash +# All: documentation + production build +make + +# Documentation +make docs + +# Production build +make prod + +# ----- + +# Development build +make dev +``` diff --git a/docs/src/installation/clone.md b/docs/src/installation/clone.md new file mode 100644 index 0000000..b9af491 --- /dev/null +++ b/docs/src/installation/clone.md @@ -0,0 +1,14 @@ +# Clone the repository + +For building the containers from scratch, the repository's packages are required. + +```bash +git clone https://git.dergrimm.net/mentorenwahl/mentorenwahl.git +cd mentorenwahl +``` + +After that you will need to create an environment configuration file. + +```bash +cp .example.env .env +```