Skip to content

Commit 056910e

Browse files
committed
docs: add mkdocs publication to github pages
1 parent eabe281 commit 056910e

File tree

10 files changed

+245
-147
lines changed

10 files changed

+245
-147
lines changed

.github/workflows/release_docs.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Release docs
2+
on:
3+
push:
4+
branches: [ main ]
5+
pull_request:
6+
branches: [ main ]
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
deploy:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v4
16+
- name: Configure Git Credentials
17+
run: |
18+
git config user.name github-actions[bot]
19+
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
20+
- uses: astral-sh/setup-uv@v6
21+
- run: uv sync --only-dev
22+
- run: uv run mkdocs gh-deploy --force

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
include src/taskiq_pg/py.typed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99

1010
PostgreSQL integration for Taskiq with support for asyncpg, psqlpy and aiopg drivers.
1111

12+
See example of usage in documentation.
13+
1214
## Installation
1315

1416
Depend on your preferred PostgreSQL driver, you can install this library:
@@ -65,5 +67,5 @@ Your experience with other drivers will be pretty similar. Just change the impor
6567

6668
## Motivation
6769

68-
There are too many libraries for PostgreSQL and Taskiq integration. Although they have different view on interface and different functionality.
69-
To address this issue I created this library with a common interface for most popular PostgreSQL drivers that handle similarity across functionality of result backends and brokers.
70+
There are too many libraries for PostgreSQL and Taskiq integration. Although they have different view on interface and different functionality.
71+
To address this issue I created this library with a common interface for most popular PostgreSQL drivers that handle similarity across functionality of result backends, brokers and schedule sources.

docs/assets/favicon.svg

Lines changed: 11 additions & 0 deletions
Loading

docs/contributing.md

Whitespace-only changes.

docs/index.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
title: Overview
3+
---
4+
5+
--8<-- "README.md"

docs/reference.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
title: API
3+
# hide:
4+
# - navigation
5+
---
6+
7+
# ::: taskiq_pg
8+
options:
9+
show_submodules: true

mkdocs.yml

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
# yaml-language-server: $schema=https://squidfunk.github.io/mkdocs-material/schema.json
2+
3+
site_name: taskiq-postgres
4+
repo_url: https://github.com/danfimov/taskiq-postgres
5+
repo_name: taskiq-postgres
6+
edit_uri: edit/main/docs/
7+
8+
nav:
9+
- Overview:
10+
- index.md
11+
- API:
12+
- reference.md
13+
- Contributing:
14+
- contributing.md
15+
16+
17+
theme:
18+
name: material
19+
language: ru
20+
favicon: assets/favicon.svg
21+
features:
22+
- toc.follow
23+
- toc.integrate
24+
- navigation.expand
25+
- navigation.tabs
26+
- navigation.top
27+
- navigation.sections
28+
- navigation.path
29+
- content.action.edit
30+
- content.code.annotate
31+
- content.code.select
32+
- content.code.copy
33+
- content.tabs.link
34+
palette:
35+
- media: "(prefers-color-scheme)"
36+
toggle:
37+
icon: material/brightness-auto
38+
name: Use light mode
39+
40+
- media: "(prefers-color-scheme: light)"
41+
scheme: default
42+
primary: blue grey
43+
accent: blue
44+
toggle:
45+
icon: material/brightness-4
46+
name: Use dark mode
47+
48+
- media: "(prefers-color-scheme: dark)"
49+
scheme: slate
50+
primary: blue grey
51+
accent: blue
52+
toggle:
53+
icon: material/brightness-7
54+
name: Use system colors
55+
56+
validation:
57+
omitted_files: warn
58+
absolute_links: warn
59+
unrecognized_links: warn
60+
links:
61+
absolute_links: relative_to_docs
62+
63+
markdown_extensions:
64+
- toc:
65+
permalink: true
66+
slugify: !!python/object/apply:pymdownx.slugs.slugify
67+
kwds:
68+
case: lower
69+
70+
- pymdownx.highlight:
71+
anchor_linenums: true
72+
line_spans: __span
73+
pygments_lang_class: true
74+
use_pygments: true
75+
76+
- pymdownx.emoji:
77+
emoji_index: !!python/name:material.extensions.emoji.twemoji
78+
emoji_generator: !!python/name:material.extensions.emoji.to_svg
79+
80+
- pymdownx.tabbed:
81+
alternate_style: true
82+
83+
- pymdownx.inlinehilite
84+
- pymdownx.snippets
85+
- pymdownx.superfences
86+
- pymdownx.critic
87+
- pymdownx.caret
88+
- pymdownx.keys
89+
- pymdownx.mark
90+
- pymdownx.tilde
91+
- pymdownx.blocks.caption
92+
- tables
93+
- attr_list
94+
- admonition
95+
- md_in_html # for badges in readme.md
96+
97+
98+
plugins:
99+
- search
100+
- mkdocstrings:
101+
handlers:
102+
python:
103+
inventories:
104+
- url: https://docs.python.org/3/objects.inv
105+
domains: [ py, std ]
106+
options:
107+
docstring_style: google
108+
filters:
109+
- '!^_'
110+
show_root_heading: true
111+
show_if_no_docstring: true
112+
inherited_members: true
113+
members_order: source
114+
separate_signature: true
115+
unwrap_annotated: true
116+
merge_init_into_class: true
117+
docstring_section_style: list
118+
signature_crossrefs: true
119+
show_symbol_type_heading: true
120+
show_symbol_type_toc: true

pyproject.toml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ classifiers = [
1313
"Programming Language :: Python",
1414
"Programming Language :: Python :: 3",
1515
"Programming Language :: Python :: 3 :: Only",
16-
"Programming Language :: Python :: 3.9",
1716
"Programming Language :: Python :: 3.10",
1817
"Programming Language :: Python :: 3.11",
1918
"Programming Language :: Python :: 3.12",
@@ -30,7 +29,7 @@ keywords = ["taskiq", "tasks", "distributed", "async", "postgresql"]
3029
authors = [
3130
{name = "Anfimov Dima", email = "lovesolaristics@gmail.com"}
3231
]
33-
requires-python = ">=3.9,<3.14"
32+
requires-python = ">=3.10,<3.14"
3433
dependencies = [
3534
"taskiq>=0.11.17",
3635
]
@@ -52,13 +51,19 @@ psqlpy = [
5251

5352
[dependency-groups]
5453
dev = [
54+
# linting and formating
5555
"ruff>=0.14.0",
56-
"pytest>=8.4.2",
57-
"pytest-asyncio>=1.1.0",
56+
# type check
5857
"mypy>=1.18.1",
5958
"asyncpg-stubs>=0.30.2",
60-
"mkdocs-material>=9.6.21",
59+
# tests
60+
"pytest>=8.4.2",
61+
"pytest-asyncio>=1.1.0",
62+
# pre-commit hooks
6163
"prek>=0.2.4",
64+
# docs
65+
"mkdocs-material>=9.6.21",
66+
"mkdocstrings-python>=1.18.2",
6267
]
6368

6469
[build-system]
@@ -77,7 +82,6 @@ asyncio_default_fixture_loop_scope = "function"
7782
markers = [
7883
"unit: marks unit tests",
7984
"integration: marks tests with real infrastructure env",
80-
"linting: marks tests as linter/static analyzers",
8185
]
8286

8387
[tool.ruff]

0 commit comments

Comments
 (0)