Skip to content

Commit

Permalink
docs(goosymock): add base for documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
Icikowski committed Dec 18, 2022
1 parent c421228 commit 10b19a3
Show file tree
Hide file tree
Showing 8 changed files with 152 additions and 0 deletions.
8 changes: 8 additions & 0 deletions docs/hooks/links.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import re

def on_page_markdown(markdown: str, **kwargs):
links = [el[0] for el in re.findall(r"((?<!!)\[((X[^\]]+?)|([^X].*?))\]\(http[s]?://.*?\))", markdown)]
content = markdown
for link in links:
content = content.replace(link, link + '{: rel="nofollow noopener" target="_blank" }')
return content
99 changes: 99 additions & 0 deletions docs/mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
site_name: GoosyMock
site_author: Piotr Icikowski
site_description: Fully functional API was never an option
site_url: https://icikowski.github.io/GoosyMock
copyright: "&copy; Copyright by <strong>Piotr Icikowski</strong>"

repo_url: https://github.com/Icikowski/GoosyMock
repo_name: Icikowski/GoosyMock
edit_uri: ""

docs_dir: sources

theme:
name: material
logo: assets/img/logo.png
favicon: assets/img/logo.png
palette:
- scheme: default
media: "(prefers-color-scheme: light)"
toggle:
icon: material/weather-night
name: Switch to dark mode
- scheme: slate
media: "(prefers-color-scheme: dark)"
toggle:
icon: material/weather-sunny
name: Switch to light mode
font:
code: Fira Code
text: Roboto
features:
- navigation.tracking
- navigation.tabs
- navigation.tabs.sticky
- navigation.indexes
- toc.follow
- toc.integrate
- navigation.top
- search.suggest
- search.highlight
- search.share

plugins:
- search
- social:
cards_dir: assets/img/social
cards_color:
fill: "#547AA5"
text: "#FFFFFF"
- git-revision-date

markdown_extensions:
- admonition
- footnotes
- toc:
permalink: true
toc_depth: 3
- tables
- pymdownx.betterem
- pymdownx.caret
- pymdownx.mark
- pymdownx.tilde
- pymdownx.details
- pymdownx.highlight:
anchor_linenums: true
- pymdownx.superfences
- pymdownx.highlight
- pymdownx.inlinehilite
- pymdownx.keys
- pymdownx.smartsymbols
- pymdownx.tabbed:
alternate_style: true
- pymdownx.tasklist:
custom_checkbox: true
- attr_list

extra:
generator: false
social:
- icon: fontawesome/brands/github
link: https://github.com/Icikowski
- icon: fontawesome/brands/linkedin
link: https://linkedin.com/in/piotr-icikowski

extra_css:
- assets/css/extra.css

hooks:
- hooks/links.py

nav:
- Home:
- index.md
- Installation:
- installation/index.md
- Usage:
- usage/index.md
- Examples:
- examples/index.md
8 changes: 8 additions & 0 deletions docs/sources/assets/css/extra.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
:root > * {
--md-primary-fg-color: #547AA5;
--md-primary-fg-color--light: #547AA5;
--md-primary-fg-color--dark: #22223B;

--md-accent-fg-color: #FED766;
--md-accent-fg-color--transparent: rgba(254, 215, 102, 0.1);
}
Binary file added docs/sources/assets/img/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file added docs/sources/examples/index.md
Empty file.
37 changes: 37 additions & 0 deletions docs/sources/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
title: "About project"
hide: ["navigation"]
---

# GoosyMock

**GoosyMock** is a configurable test service for mocking HTTP responses,
featuring SSL support, dedicated administration API and custom payloads
(binary files that can be served on particular routes). It's also prepared
for Kubernetes deployments (Helm chart), making it easy to adapt and use.

This project is successor to [**GPTS**](https://github.com/Icikowski/GPTS)
and was initially meant to be an improvement over existing solution by
introducing new internal architecture, better approach for serving custom
content and overall improvements to both code's and repository's structure.
Changes turned out to be hard to apply, which led to rewriting whole source
code from scratch.

## Features

- [X] Default response for
- [X] Declarative configuration
- [X] Support `YAML` and `JSON` configuration formats
- [X] Support per-method response definitions (`GET`, `POST`, `PUT`, `PATCH`, `DELETE`)
- [X] Support default response definition (for not configured methods)
- [X] Support sub paths handling
- [X] Well-documented administration API
- [X] Docker support
- [X] Based on latest [Google's "distroless"](https://github.com/GoogleContainerTools/distroless) image
- [X] Small size (≈ 20MB)
- [X] Running in rootless mode
- [X] Kubernetes support
- [X] Helm chart available
- [X] Image running as non-root
- [X] All settings can be configured via chart values
- [X] Support Ingress controllers
Empty file.
Empty file added docs/sources/usage/index.md
Empty file.

0 comments on commit 10b19a3

Please sign in to comment.