Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 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
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,14 @@
site/
.DS_Store

# --------------------------------- uv ---------------------------------
# Python-generated files
__pycache__/
*.py[oc]
build/
dist/
wheels/
*.egg-info

# Virtual environments
.venv
1 change: 1 addition & 0 deletions .python-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
3.14
Comment thread
timtogan marked this conversation as resolved.
22 changes: 22 additions & 0 deletions docs/contributing/with-uv.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
## uv

uv is a Python package manager that simplifies the process of installing dependencies and running development servers.

### Installing uv
If you do not have uv installed, go to [the uv documentation](https://docs.astral.sh/uv/getting-started/installation/) and follow the instructions for your OS. This will also install Python 3 onto your machine.

### Source Code
Clone the [training docs repo](https://github.com/DeepBlueRobotics/training>) from GitHub, with your preferred method.
Comment thread
timtogan marked this conversation as resolved.

### Python Dependencies
This site uses the MkDocs Python package to convert Markdown files to a website, and a few more packages to provide additional functionality and theming. You can install all the necessary dependencies by running `uv sync` in your terminal while in the root directory of this repo.


## Development Workflow
To develop locally, run `uv run -m mkdocs serve` in the root directory of this project. This will generate a local website.

The terminal will output a line something like __this below__, where you can find the link of your local website.

`INFO - [19:08:41] Serving on http://127.0.0.1:8000/`

When you are done making a change, simply create a new branch of <https://github.com/DeepBlueRobotics/training> and make a pull request. ReadTheDocs will automatically update the site within a few minutes, if your pull request is accepted.
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ nav:
- Contributing:
- Introduction: contributing/intro.md
- With Python: contributing/with-python.md
- With uv: contributing/with-uv.md
- With Docker: contributing/with-docker.md
- Yearly Checklist: contributing/yearly-checklist.md
- Resources: contributing/resources.md
Expand Down
13 changes: 13 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[project]
name = "training"
version = "0.1.0"
description = "Add your description here"
Comment thread
timtogan marked this conversation as resolved.
Outdated
readme = "README.md"
requires-python = ">=3.14"
Comment thread
timtogan marked this conversation as resolved.
dependencies = [
"mkdocs-material>=9.7.6",
"pymdown-extensions>=10.21.2",
"python-markdown-math>=0.9",
]


Copy link

Copilot AI Apr 1, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This repository now has two sources of truth for Python dependencies: requirements.txt (used by Read the Docs) and pyproject.toml/uv.lock (used by uv). Without an explicit sync process, these can drift and lead to different builds; consider generating requirements.txt from the lock (or updating RTD to install via uv) to keep environments consistent.

Suggested change
[tool.uv]
# This project uses uv as the single source of truth for dependencies.
# The requirements.txt file used by Read the Docs must be generated from
# the uv lockfile to avoid drift between environments. Regenerate it with:
# uv export --format requirements-txt --output requirements.txt

Copilot uses AI. Check for mistakes.
Loading
Loading