Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions .github/workflows/deploy-docs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
---
name: Deploy docs to GitHub Pages

# yamllint disable-line rule:truthy
on:
push:
branches: [main, feature/migrate-from-read-the-docs]
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: pages
cancel-in-progress: false

jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v4.1.1
with:
fetch-depth: 0
- name: 🏗 Set up Python
uses: actions/setup-python@v5.0.0
with:
python-version: "3.12"
- name: 🏗 Install uv
uses: astral-sh/setup-uv@v7
- name: 🏗 Install project dependencies
run: uv sync
- name: 🏗 Install pydoc-markdown
run: uv pip install pydoc-markdown --system
- name: 🏗 Set up Node.js
uses: actions/setup-node@v4.0.2
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: 🏗 Install dependencies
run: npm ci
- name: 🔨 Build with VitePress
run: npm run docs:build
- name: 📦 Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: docs/.vitepress/dist

deploy:
name: Deploy
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
needs: build
runs-on: ubuntu-latest
steps:
- name: 🚀 Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
10 changes: 8 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,14 @@ coverage.xml
# Django stuff:
*.log

# Sphinx documentation
docs/_build/
# VitePress
docs/.vitepress/cache
docs/.vitepress/dist

# Auto-generated docs (created by scripts/generate_docs.py via pydoc-markdown)
docs/api.md
docs/models.md
docs/exceptions.md

# pyenv
.python-version
Expand Down
10 changes: 8 additions & 2 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,14 @@ coverage.xml
# Django stuff:
*.log

# Sphinx documentation
docs/_build/
# VitePress
docs/.vitepress/cache
docs/.vitepress/dist

# Auto-generated docs
docs/api.md
docs/models.md
docs/exceptions.md

# pyenv
.python-version
Expand Down
29 changes: 0 additions & 29 deletions .readthedocs.yaml

This file was deleted.

9 changes: 5 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

[![Build Status][build-shield]][build]
[![Code Coverage][codecov-shield]][codecov]
[![Documentation][docs-shield]][docs]
[![Quality Gate Status][sonarcloud-shield]][sonarcloud]
[![Documentation Status][readthedocs-shield]][readthedocs]
[![Open in Dev Containers][devcontainer-shield]][devcontainer]

Asynchronous Python client to control Tado devices.
Expand All @@ -22,7 +22,8 @@ Not all endpoints and features are fully supported.
This is the continuation project of PyTado.

## Documentation
A full documentation can be found at [Read the Docs][readthedocs].

Full documentation is available at [GitHub Pages][docs].

## Installation

Expand Down Expand Up @@ -168,6 +169,8 @@ SOFTWARE.
[contributors]: https://github.com/erwindouna/python-tado/graphs/contributors
[devcontainer-shield]: https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode
[devcontainer]: https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/erwindouna/python-tado
[docs]: https://erwindouna.github.io/python-tado/
[docs-shield]: https://github.com/erwindouna/python-tado/actions/workflows/deploy-docs.yaml/badge.svg
[erwindouna]: https://github.com/erwindouna
[github-sponsors-shield]: https://erwindouna.dev/wp-content/uploads/2019/12/github_sponsor.png
[github-sponsors]: https://github.com/sponsors/erwindouna
Expand All @@ -185,5 +188,3 @@ SOFTWARE.
[semver]: http://semver.org/spec/v2.0.0.html
[sonarcloud-shield]: https://sonarcloud.io/api/project_badges/measure?project=erwindouna_python-tado&metric=alert_status
[sonarcloud]: https://sonarcloud.io/summary/new_code?id=erwindouna_python-tado
[readthedocs-shield]: https://readthedocs.org/projects/python-tado/badge/?version=latest
[readthedocs]: https://python-tado.readthedocs.io/en/latest/index.html
43 changes: 43 additions & 0 deletions docs/.vitepress/config.mts
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import { defineConfig } from "vitepress";

// https://vitepress.dev/reference/site-config
export default defineConfig({
base: "/python-tado/",
title: "Tado Async",
description:
"Asynchronous Python client for controlling Tado devices, mainly used for Home Assistant",
themeConfig: {
// https://vitepress.dev/reference/default-theme-config
nav: [
{ text: "Home", link: "/" },
{ text: "Usage", link: "/usage" },
{ text: "API", link: "/api" },
{ text: "Models", link: "/models" },
{ text: "Exceptions", link: "/exceptions" },
],

sidebar: [
{
text: "Documentation",
items: [
{ text: "Home", link: "/" },
{ text: "Usage", link: "/usage" },
{ text: "API Reference", link: "/api" },
{ text: "Models Reference", link: "/models" },
{ text: "Exceptions Reference", link: "/exceptions" },
],
},
],

search: {
provider: "local",
},

socialLinks: [
{
icon: "github",
link: "https://github.com/erwindouna/python-tado",
},
],
},
});
20 changes: 0 additions & 20 deletions docs/Makefile

This file was deleted.

1 change: 0 additions & 1 deletion docs/__init__.py

This file was deleted.

35 changes: 35 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
# https://vitepress.dev/reference/default-theme-home-page
layout: home

hero:
name: "Tado Async"
text: "Asynchronous Python client for the Tado API"
tagline: Control Tado devices from within Python, mainly used for Home Assistant.
actions:
- theme: brand
text: Get Started
link: /usage
- theme: alt
text: API Reference
link: /api

features:
- title: Async Support
details: Fully asynchronous Python client using aiohttp for non-blocking I/O.
- title: Home Assistant
details: Designed for use within Home Assistant, but can also be used standalone.
- title: Comprehensive API
details: Covers zones, devices, weather, capabilities, overlays, and more.
---

## About

**Tado Async** is a Python library that allows you to control Tado devices.
Although it can be used as a standalone package, its current scope is to be used within Home Assistant.
Not all endpoints and features are fully supported.
This is the continuation project of PyTado.

::: warning
This project is under active development.
:::
35 changes: 0 additions & 35 deletions docs/make.bat

This file was deleted.

2 changes: 0 additions & 2 deletions docs/requirements.txt

This file was deleted.

1 change: 0 additions & 1 deletion docs/source/__init__.py

This file was deleted.

9 changes: 0 additions & 9 deletions docs/source/api.rst

This file was deleted.

43 changes: 0 additions & 43 deletions docs/source/conf.py

This file was deleted.

23 changes: 0 additions & 23 deletions docs/source/index.rst

This file was deleted.

Loading
Loading