Metadata-Version: 2.4
Name: red-tidegear
Version: 1.18.2
Summary: A small collection of utilities for cog creation with Red-DiscordBot.
Project-URL: Homepage, https://c.csw.im/cswimr/tidegear
Project-URL: Issues, https://c.csw.im/cswimr/tidegear/issues
Project-URL: Source Archive, https://c.csw.im/cswimr/tidegear/archive/1ad6c7ea954a088d05188bc7acd87d7df8e645a8.tar.gz
Author-email: cswimr <cswimr@csw.im>
License-Expression: MPL-2.0
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.11
Requires-Python: <3.12,>=3.11
Requires-Dist: humanize>=4.12.3
Requires-Dist: pip
Requires-Dist: red-discordbot>=3.5.6
Provides-Extra: pydantic
Requires-Dist: pydantic>=2.11.0; extra == 'pydantic'
Provides-Extra: sentinel
Requires-Dist: phx-class-registry>=5.1.1; extra == 'sentinel'
Requires-Dist: piccolo[sqlite]>=1.27.1; extra == 'sentinel'
Requires-Dist: pydantic>=2.11.0; extra == 'sentinel'
Requires-Dist: redbot-orm>=0.0.4; extra == 'sentinel'
Description-Content-Type: text/markdown

<!--
SPDX-FileCopyrightText: 2025 cswimr <copyright@csw.im>
SPDX-License-Identifier: MPL-2.0
-->

# Tidegear

[<img alt="Discord" src="https://img.shields.io/discord/1070058354925383681?logo=discord&color=%235661f6">](https://discord.gg/eMUMe77Yb8)
<!-- [<img alt="Documentation" src="https://img.shields.io/badge/docs-CoastalCommits%20Pages-3e83fd?logo=materialformkdocs">](https://tidegear.csw.im) -->
[<img alt="Actions Status" src="https://c.csw.im/cswimr/tidegear/badges/workflows/actions.yaml/badge.svg">](https://c.csw.im/cswimr/tidegear/actions?workflow=actions.yaml)
[<img alt="PyPI - Version" src="https://img.shields.io/pypi/v/red-tidegear">](https://pypi.org/project/red-tidegear/)
[<img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/red-tidegear">](https://pypi.org/project/red-tidegear/)
[<img alt="PyPI - License" src="https://img.shields.io/pypi/l/red-tidegear">](https://c.csw.im/cswimr/tidegear/src/tag/v1.18.2/LICENSES/MPL-2.0.txt)  

A collection of utilities for use with [Red-DiscordBot](https://github.com/Cog-Creators/Red-DiscordBot), made for [SeaCogs](https://c.csw.im/cswimr/SeaCogs).

## Licensing

Tidegear is licensed under the [Mozilla Public License 2.0](https://choosealicense.com/licenses/mpl-2.0/). Asset files and documentation are licensed under [CCO 1.0](https://creativecommons.org/publicdomain/zero/1.0/). Additionally, Tidegear uses the [Reuse](https://reuse.software/) tool to validate license compliance. If a file does not have an explicit license header - which most should! - you may check the [`REUSE.toml`](https://c.csw.im/cswimr/tidegear/src/tag/v1.18.2/REUSE.toml) file to determine the file's license.

## Developing

You'll need some prerequisites before you can start working on Tidegear.  
[git](https://git-scm.com) - [uv](https://docs.astral.sh/uv)  
Additionally, I recommend a code editor of some variety. [Visual Studio Code](https://code.visualstudio.com) is a good, beginner-friendly option.

### Installing Prerequisites

_This section of the guide only applies to Windows systems.
If you're on Linux, refer to the documentation of the projects listed above. I also offer a [Nix Flake](https://c.csw.im/cswimr/tidegear/src/tag/v1.18.2/flake.nix) that contains all of the required prerequisites, if you're a Nix user._

#### [`git`](https://git-scm.com)

You can download git from the [git download page](https://git-scm.com/downloads/win).

Alternatively, you can use `winget`:

```ps1
winget install --id=Git.Git -e --source=winget
```

#### [`uv`](https://docs.astral.sh/uv)

You can install uv with the following Powershell command:

```ps1
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
```

Alternatively, you can use `winget`:

```ps1
winget install --id=astral-sh.uv -e
```

### Getting the Source Code

Once you have [`git`](https://git-scm.com) installed, you can use the `git clone` command to get a copy of the repository on your system.

```bash
git clone https://c.csw.im/cswimr/tidegear.git
```

Then, you can use `uv` to install the Python dependencies required for development.

```bash
uv sync --all-groups --all-extras --frozen
```
