UV Devcontainer Template
This template is designed to streamline the setup of a Python development environment using the uv package manager on Debian Bookworm. It's equipped with a collection of tools and extensions specifically chosen to enhance the Python development workflow, from code writing to testing and deployment.
Features Overview
| Feature | Description |
|---|---|
| Operating System | Debian Bookworm, providing a stable foundation for development. |
| Package Management | uv, a lightweight and efficient package and environment manager. |
| Programming Language | Python, ready for development right out of the box. |
| Version Control | Git integrated for robust version control. |
| VSCode Extensions | A curated list of VSCode extensions installed, including essentials for Python development. |
| Testing Framework | Pytest configured to run tests from the tests directory, utilizing VSCode's test runner for ease of testing. |
Getting Started
- Clone and Open: Clone this repository and open it in VSCode. The project will prompt to reopen in a devcontainer.
- Dev Environment Initialization: The
uv synctask can be run manually, preparing and updating your development environment. - Rename the Project Directory: Rename the
/projectdirectory to match the name of your new project to get started. Update the project name in the pyproject.toml file as well.
Managing Dependencies
- Application Dependencies: Defined in
pyproject.toml. A frozen set of these dependencies is created and stored inuv.lockfor reproducible deployments.
Running Tests
Tests are run using VSCode's integrated test runner:
- Navigate to the testing sidebar in VSCode.
- You'll see your tests listed there. Test can be run directly from the UI.
Running the Application
VSCode's launch.json is configured to debug the currently open Python file, allowing you to run and debug any part of your project easily.
Note: You may need to tweak
launch.jsonfor specific project requirements, such as adding arguments or setting environment variables.
Quick Start
- Open
project/main.pyor any Python file you intend to run. - Use
F5or the green play button in the "Run and Debug" sidebar to start debugging.
Deployment
Deploy your application using the dependencies detailed in uv.lock to guarantee that your deployment mirrors the tested state of your application.
Contributing
We welcome contributions to improve the uv-devcontainer-template. Please follow the standard fork and pull request workflow. Make sure to add tests for new features and update the documentation as necessary.
License
This project is licensed under the MIT License.
Metadata
Release files for repository-management-api 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| repository_management_api-0.0.1.tar.gz | 4.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| repository_management_api-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.7 kB
Release files / repository_management_api-0.0.1.tar.gz
| Download URL | repository_management_api-0.0.1.tar.gz |
|---|---|
| Size | 4.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
38977c498e95b82f53fd51d8734e29d7465c1b72ecb6c920621d9687eae11aaa
|
|
BLAKE2b-256 checksum How to use checksums |
ed6b20928945cf48495c1d180c8b7d39cacfaa53dc7ce5639e94c92271c63389
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|
Release files / repository_management_api-0.0.1-py3-none-any.whl
| Download URL | repository_management_api-0.0.1-py3-none-any.whl |
|---|---|
| Size | 5.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2b4ca87d1ecfa23551d724994735503e5c35e1b5a1a9ff6322a0fd217fcc9e2a
|
|
BLAKE2b-256 checksum How to use checksums |
c2f47d17922b7a5297fbd06864ae89587ee530762a7fcfa4ac46f968a2358639
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|