Add documentation page

This commit is contained in:
CasVT
2023-06-21 00:19:49 +02:00
parent 97bde5dc07
commit 47e5854f42
11 changed files with 409 additions and 29 deletions

View File

@@ -151,3 +151,9 @@ LICENSE
# Tests
tests/
# Project management files
release.sh
docs/
docs-requirements.txt
mkdocs.yml

20
.github/workflows/deploy.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: Build and deploy docs
on:
push:
branches:
- Development
jobs:
deploy:
name: Deploy docs
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- uses: actions/setup-python@v2
with:
python-version: 3.x
- run: pip install -r docs-requirements.txt
- run: mkdocs gh-deploy --force

3
.gitignore vendored
View File

@@ -133,3 +133,6 @@ dmypy.json
# VS code
*.code-workspace
# Project management files
release.sh

View File

@@ -1,30 +1,28 @@
# MIND Reminders
A simple self hosted reminder platform that uses push to send notifications to your device. Set the reminder and forget about it! 📢
# MIND
[![Docker Pulls](https://img.shields.io/docker/pulls/mrcas/mind.svg)](https://hub.docker.com/r/mrcas/mind)
[![GitHub Downloads](https://img.shields.io/github/downloads/Casvt/MIND/total.svg)](https://github.com/Casvt/MIND/releases)
__A simple self hosted reminder application that can send push notifications to your device. Set the reminder and forget about it!__
Mind is a simple self hosted application for creating reminders that get pushed to your device using the [Apprise](https://github.com/caronc/apprise) API. You can send messages to just about every platform, including scheduled emails!
## Screenshots
![mind-reminders-home](https://user-images.githubusercontent.com/57927413/213593220-495aeb86-2bf8-4c43-895d-c7cba38c3cee.png)
## Workings
MIND can be used for sending notifications at the desired time. This can be a set time, like a yearly reminder for a birthday, or at a button click, to easily send a predefined notification when you want to.
![mind-reminders-add-notification-services](https://user-images.githubusercontent.com/57927413/212755314-1104531e-7feb-4e59-af1d-927576e47152.png)
## Features
- Works cross-timezone
- Notifications are sent with second-precision
- Uses the [apprise library](https://github.com/caronc/apprise), giving you 80+ platforms to send notifications to
- Easily manage the reminders with sorting options, search ability and color coding
- Docker image available
- Mobile friendly web-interface
- API available
![mind-reminders-edit](https://user-images.githubusercontent.com/57927413/213594471-ecc99a72-cf0f-4570-8e78-92ffbf37e59d.png)
### Planned Features
You can see the planned features in the [Project board](https://github.com/users/Casvt/projects/3).
![mind-reminders-settings](https://user-images.githubusercontent.com/57927413/212755327-b45da53c-72f7-480c-9a77-eaad28803fbb.png)
## Core Features
* Basic auth
* Utilizes Apprise
* Create, edit and delete reminders
* Schedule reminders
* Recurring reminders
* Docker image
* Mobile friendly
## Planned Features
You can see our planned features in our [Project board](https://github.com/users/Casvt/projects/3).
## Installation
## Getting started
Replace the timezone value (`TZ=`) to the [TZ database name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) of your timezone!
```bash
docker run -d \
@@ -34,13 +32,9 @@ docker run -d \
-p 8080:8080 \
mrcas/mind:latest
```
## Getting Started
- Create a new account
- Click the bell icon on the left side to add an Apprise push option and save it (Here is an example using Pushover)
![mind-reminders-notification-service](https://user-images.githubusercontent.com/57927413/213593832-6c62307c-cf7c-4d11-b6ce-dea33676d477.png)
More information about installing can be found [in the wiki](https://casvt.github.io/MIND/).
- Click the home icon and create a reminder!
You can see the [wiki](https://github.com/Casvt/MIND/wiki) for instructions on how to install MIND on other OS'es.
## Contact
- For support, a [discord server](https://discord.gg/nMNdgG7vsE) is available
- Alternatively, [make an issue](https://github.com/Casvt/MIND/issues)

6
docs-requirements.txt Normal file
View File

@@ -0,0 +1,6 @@
wheel>=0.38.4
mkdocs-material>=8.5.11
mkdocs-redirects>=1.2.0
mkdocs-git-revision-date-localized-plugin>=1.1.0
Pygments>=2.13.0
pymdown-extensions>=9.9

3
docs/api.md Normal file
View File

@@ -0,0 +1,3 @@
# API
Coming soon

34
docs/index.md Normal file
View File

@@ -0,0 +1,34 @@
# MIND Docs
[![Docker Pulls](https://img.shields.io/docker/pulls/mrcas/mind.svg)](https://hub.docker.com/r/mrcas/mind)
[![GitHub Downloads](https://img.shields.io/github/downloads/Casvt/MIND/total.svg)](https://github.com/Casvt/MIND/releases)
__A simple self hosted reminder application that can send push notifications to your device. Set the reminder and forget about it!__
Getting started:
- [Installation](./installation.md)
- [Setup After Installation](./setup_after_installation.md)
General Information:
- [API Docs](./api.md)
## Workings
MIND can be used for sending notifications at the desired time. This can be a set time, like a yearly reminder for a birthday, or at a button click, to easily send a predefined notification when you want to.
## Features
- Works cross-timezone
- Notifications are sent with second-precision
- Uses the [apprise library](https://github.com/caronc/apprise), giving you 80+ platforms to send notifications to
- Easily manage the reminders with sorting options, search ability and color coding
- Docker image available
- Mobile friendly web-interface
- API available
### Planned Features
You can see the planned features in the [Project board](https://github.com/users/Casvt/projects/3).
## Contact
- For support, a [discord server](https://discord.gg/nMNdgG7vsE) is available
- Alternatively, [make an issue](https://github.com/Casvt/MIND/issues)

3
docs/installation.md Normal file
View File

@@ -0,0 +1,3 @@
# Installation
Coming soon

View File

@@ -0,0 +1,3 @@
# Setup After Installation
Coming Soon

226
docs/stylesheets/extra.css Normal file
View File

@@ -0,0 +1,226 @@
:root {
--color-light: #ffffff;
--color-dim-light: #b5b5b5;
--color-gray: #3c3c3c;
--color-dark: #1b1b1b;
}
.md-typeset code {
border-radius: 6px;
}
.md-clipboard {
color: var(--color-gray);
}
:hover > .md-clipboard {
color: var(--color-dark);
}
.md-clipboard:hover {
color: var(--color-light);
}
/* */
/* Light mode */
/* */
[data-md-color-scheme="MIND"] {
/* Background color of header */
--md-primary-fg-color: var(--color-gray);
/* Header and code background color and clipboard color */
--md-default-fg-color--light: var(--color-dim-light);
--md-primary-fg-color--lighter: #00000052;
--md-default-fg-color--lightest: var(--color-dim-light);
/* Color in header */
--md-primary-bg-color: var(--color-light);
/* Color in placeholder of search and non-hover for nav */
--md-primary-bg-color--light: var(--color-dim-light);
--md-primary-bg-color--lighter: #ffffff4d;
--md-primary-bg-color--lightest: #ffffff1f;
/* Background color */
--md-default-bg-color: var(--color-light);
/* Color in search */
--md-default-fg-color: var(--color-dark);
/* Hover color for mark and ToC */
--md-accent-fg-color: var(--color-gray);
/* Code color */
--md-code-fg-color: var(--color-light);
/* Code background color */
--md-code-bg-color: var(--color-gray);
--md-code-hl-color: #ffff0080;
--md-code-hl-number-color: #d52a2a;
--md-code-hl-special-color: #db1457;
--md-code-hl-function-color: #a846b9;
--md-code-hl-constant-color: #6e59d9;
--md-code-hl-keyword-color: #3f6ec6;
--md-code-hl-string-color: #1c7d4d;
/* Slashes in code */
--md-code-hl-name-color: var(--md-code-fg-color);
--md-code-hl-operator-color: var(--color-dim-light);
--md-code-hl-punctuation-color: var(--color-dim-light);
--md-code-hl-comment-color: var(--color-dim-light);
--md-code-hl-generic-color: var(--color-dim-light);
--md-code-hl-variable-color: var(--color-dim-light);
/* Text color */
--md-typeset-color: var(--color-dark);
/* Link color */
--md-typeset-a-color: var(--color-dim-light);
--md-typeset-mark-color: #ffff0080;
--md-typeset-del-color: #f5503d26;
--md-typeset-ins-color: #0bd57026;
--md-typeset-kbd-color: #fafafa;
--md-typeset-kbd-accent-color: #fff;
--md-typeset-kbd-border-color: #b8b8b8;
--md-typeset-table-color: #0000001f;
--md-typeset-table-color--light: rgba(0,0,0,.035);
--md-admonition-fg-color: var(--color-dark);
--md-admonition-bg-color: var(--color-light);
--md-warning-fg-color: #000000de;
--md-warning-bg-color: #ff9;
/* Footer color */
--md-footer-fg-color: var(--color-light);
/* Footer background color */
--md-footer-bg-color: var(--color-gray);
--md-shadow-z1: 0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a;
--md-shadow-z2: 0 0.2rem 0.5rem #0000001a,0 0 0.05rem #00000040;
--md-shadow-z3: 0 0.2rem 0.5rem #0003,0 0 0.05rem #00000059;
}
[data-md-color-scheme="MIND"] button[data-md-component="top"],
[data-md-color-scheme="MIND"] h1,
[data-md-color-scheme="MIND"] [data-md-component="search"] {
--md-default-fg-color--light: var(--color-dark);
}
[data-md-color-scheme="MIND"] [data-md-component="toc"] {
color: var(--color-dark);
}
[data-md-color-scheme="MIND"] [data-md-component="toc"] nav {
color: var(--color-gray);
}
[data-md-color-scheme="MIND"] .tabbed-block {
--md-default-fg-color--light: var(--color-dark);
}
[data-md-color-scheme="MIND"] details {
border-color: var(--color-gray);
}
[data-md-color-scheme="MIND"] details > summary {
background-color: transparent;
}
[data-md-color-scheme="MIND"] details > summary::before {
background-color: var(--color-dark);
}
/* */
/* Dark mode */
/* */
[data-md-color-scheme="MIND-dark"] {
/* Background color of header */
--md-primary-fg-color: var(--color-gray);
/* Header and code background color and clipboard color */
--md-default-fg-color--light: var(--color-gray);
--md-primary-fg-color--lighter: #00000052;
--md-default-fg-color--lightest: var(--color-gray);
/* Color in header */
--md-primary-bg-color: var(--color-light);
/* Color in placeholder of search and non-hover for nav */
--md-primary-bg-color--light: var(--color-dim-light);
--md-primary-bg-color--lighter: #ffffff4d;
--md-primary-bg-color--lightest: #ffffff1f;
/* Background color */
--md-default-bg-color: var(--color-dark);
/* Color in search */
--md-default-fg-color: var(--color-light);
/* Hover color for mark and ToC */
--md-accent-fg-color: var(--color-dim-light);
/* Code color */
--md-code-fg-color: var(--color-light);
/* Code background color */
--md-code-bg-color: var(--color-gray);
--md-code-hl-color: #ffff0080;
--md-code-hl-number-color: #d52a2a;
--md-code-hl-special-color: #db1457;
--md-code-hl-function-color: #a846b9;
--md-code-hl-constant-color: #6e59d9;
--md-code-hl-keyword-color: #3f6ec6;
--md-code-hl-string-color: #1c7d4d;
/* Slashes in code */
--md-code-hl-name-color: var(--md-code-fg-color);
--md-code-hl-operator-color: var(--color-dim-light);
--md-code-hl-punctuation-color: var(--color-dim-light);
--md-code-hl-comment-color: var(--color-dim-light);
--md-code-hl-generic-color: var(--color-dim-light);
--md-code-hl-variable-color: var(--color-dim-light);
/* Text color */
--md-typeset-color: var(--color-light);
/* Link color */
--md-typeset-a-color: var(--color-dim-light);
--md-typeset-mark-color: #ffff0080;
--md-typeset-del-color: #f5503d26;
--md-typeset-ins-color: #0bd57026;
--md-typeset-kbd-color: #fafafa;
--md-typeset-kbd-accent-color: #fff;
--md-typeset-kbd-border-color: #b8b8b8;
--md-typeset-table-color: #0000001f;
--md-typeset-table-color--light: rgba(0,0,0,.035);
--md-admonition-fg-color: var(--color-light);
--md-admonition-bg-color: var(--color-dark);
--md-warning-fg-color: #000000de;
--md-warning-bg-color: #ff9;
/* Footer color */
--md-footer-fg-color: var(--color-light);
/* Footer background color */
--md-footer-bg-color: var(--color-gray);
--md-shadow-z1: 0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a;
--md-shadow-z2: 0 0.2rem 0.5rem #0000001a,0 0 0.05rem #00000040;
--md-shadow-z3: 0 0.2rem 0.5rem #0003,0 0 0.05rem #00000059;
}
[data-md-color-scheme="MIND-dark"] button[data-md-component="top"],
[data-md-color-scheme="MIND-dark"] h1,
[data-md-color-scheme="MIND-dark"] [data-md-component="search"] {
--md-default-fg-color--light: var(--color-light);
}
[data-md-color-scheme="MIND-dark"] [data-md-component="toc"] nav {
color: var(--color-dim-light);
}
[data-md-color-scheme="MIND-dark"] .tabbed-block {
--md-default-fg-color--light: var(--color-dark);
}
[data-md-color-scheme="MIND-dark"] details {
border-color: var(--color-gray);
}
[data-md-color-scheme="MIND-dark"] details > summary {
background-color: transparent;
}
[data-md-color-scheme="MIND-dark"] details > summary::before {
background-color: var(--color-dim-light);
}

82
mkdocs.yml Normal file
View File

@@ -0,0 +1,82 @@
# Site Details
site_name: MIND Docs
site_description: The official guide for MIND
site_author: MrCas
#edit_uri: https://github.com/??
repo_url: https://github.com/Casvt/MIND
repo_name: Casvt/MIND
extra_css:
- stylesheets/extra.css
# Site appearance (logos, colours, icons)
theme:
name: material
language: en
code_wrap: true
features:
- content.tabs.link
- content.code.copy
- header.autohide
- navigation.expand
- navigation.indexes
- navigation.instant
- navigation.sections
- navigation.tabs
- navigation.tabs.sticky
- navigation.top
- navigation.tracking
#favicon: assets/logo/favicon.ico
#logo: assets/logo/kapowarr-logo.png?
palette:
# Light mode
- media: "(prefers-color-scheme: light)"
scheme: MIND
toggle:
icon: material/toggle-switch-off-outline
name: Switch to dark mode
# Dark mode
- media: "(prefers-color-scheme: dark)"
scheme: MIND-dark
toggle:
icon: material/toggle-switch
name: Switch to light mode
# Markdown extensions
markdown_extensions:
- abbr
- attr_list
- meta
- pymdownx.details
- pymdownx.highlight:
guess_lang: true
anchor_linenums: true
- pymdownx.inlinehilite
- pymdownx.keys
- pymdownx.saneheaders
- pymdownx.smartsymbols
- pymdownx.snippets
- pymdownx.superfences
- pymdownx.tabbed:
alternate_style: true
- sane_lists
- toc:
permalink: true
toc_depth: 5
# mkdocs function extensions
plugins:
- search
- git-revision-date-localized:
type: timeago
locale: en
fallback_to_build_date: false
# Navigation Layout
nav:
- Home: index.md
- Getting Started:
- Installation: installation.md
- Setup After Installation: setup_after_installation.md
- Other Docs:
- API: api.md