Skip to main content

A modern git based age-encrypted secrets manager for teams.

Project description

The cottage logo

cottage

Cottage is a gitops tool for teams to manage age-encrypted secrets in git repositories.

It provides a simple workflow to encrypt/decrypt secrets, manage recipients, and keep secrets out of the repo while still allowing for easy sharing via VCS. Cottage also generates redacted previews of encrypted secrets for better visibility and supports both persistent and temporary decryption workflows, while ensuring secrets are never committed in plaintext.

Intro Demo

Table of contents

  1. Features
  2. Installation
  3. Quick Start
  4. Sharing with a team member
  5. Git Hooks
  6. Access Control
  7. Learn More
  8. Alternatives
  9. Troubleshooting
  10. License

Features

  • Exposure safe: Uses Rust's type system to make sure bugs can never accidentally expose secrets.
  • Team-friendly: Share public keys (recipients) in the repo, keep private keys (identities) local.
  • Manages .gitignore: Automatically updates .gitignore to keep unencrypted secrets out of the repo.
  • Previews: Generates timestamped redacted previews of encrypted secrets for better visibility.
  • Rich diffs: Keeps git diff clean & reviewable, while ctg diff shows diff of locally modified secrets with tracked encrypted counterparts.
  • Checksum verification: Prevents tampering by verifying that encrypted secrets and recipient lists match the metadata on both encryption and decryption.
  • Persistent secrets workflow: ctg decrypt/edit/sync keeps decrypted secrets on disk.
  • Temporary secrets workflow: ctg run (shortcut ctgx) decrypts secrets temporarily to run a command, then deletes them regardless of the command's success or failure.
  • Clean up: ctg clean deletes all decrypted secrets from local repo to let you run your AI agents with a tiny bit less worry.
  • Supports jj and non-git directories: ctg init turns any directory into a secret store.

Installation

# rust cargo-binstall
cargo binstall --locked cottage

# rust cargo
cargo install --locked cottage

# python pip
pip install cottage

# python uv
uv pip install cottage

Or download the latest release from GitHub.

Quick Start

Init project:

mkdir project && cd project

git init  # Optional, cottage works better with git but it's not required
ctg init  # Sets up the .cottage directory and necessary files

tree -a
# .
# ├── .cottage/           <- Auto-generated by `ctg init`
# │   ├── identity        <- Your private key, keep it safe. Move it to `~/.config/cottage/identity` to use it globally, or replace it with a soft link to one of your existing private keys.
# │   └── recipients/     <- This is where your team keeps the public keys of all the recipients.
# │       └── sayanarijit <- Your public key. Commit it. To use an existing public key, just copy (don't softlink) that key here.
# ├── .git/...
# ├── .gitattributes      <- Added `*.cott.age binary export-ignore filter=cottage-encrypted -diff` to avoid polluting git diff
# └── .gitignore          <- Added `/.cottage/identity` for obvious reasons

Create or edit a secret.

ctg edit secret.yml --clean    # Opens secret.yml in $EDITOR
ctg encrypt secret.yml --clean # Another way to encrypt secrets
# encrypt secret.yml
#    into secret.yml.cott.age
#    edit secret.yml.cott.toml
#    edit .gitignore
# delete secret.yml

Run a command with temporary decrypted secrets:

cat secret.yml
# cat: secret.yml: No such file or directory

ctg run kubectl apply -f secret.yml          # decrypts secret.yml.cott.age to secret.yml and runs the command
ctg run kubectl apply -f secret.yml.cott.age # also replaces the path argument with the decrypted file path
ctg run kubectl apply -f .                   # decrypts all .cott.age files in . and runs the command
ctg run ./deploy.sh                          # decrypts all .cott.age files in repo and runs the command

cat secret.yml
# cat: secret.yml: No such file or directory

Or use the shortcut:

ctgx ./deploy.sh  # same as ctg run -- ./deploy.sh

Sharing with a team member

To share your secrets, just push to the git repo.

git add .
git commit -m "Add secret.yml"
git push origin main

Ask your teammates to add their public keys to .cottage/recipients and push the changes. Then you can pull and re-encrypt the secrets for them.

git pull origin main

ctg sync  # or `ctg decrypt && ctg encrypt`
# encrypt secret.yml
#    into secret.yml.cott.age
#    edit secret.yml.cott.toml

ctg clean  # optional
# delete secret.yml

# review changes, commit and push
git add .
git commit -m "Add new recipient to secrets"
git push origin main

Now your teammates can pull the latest changes and decrypt secrets for themselves.

Git Hooks

You can use prek or pre-commit to set up git hooks to automatically check/encrypt secrets before commit and decrypt them after checkout.

See the example prek configuration here.

Access Control

In the metadata file, you can annotate which recipients the secret should be encrypted for. This allows you to have different secrets for different environments (e.g. staging vs production) and only encrypt them for the relevant recipients.

# secret.yml.cott.toml
[secret]
allow = ["sayanarijit"]  # Only encrypt for sayanarijit
# secret.yml.cott.toml
[secret]
deny = ["sayanarijit"]  # Encrypt for everyone except sayanarijit
# secret.yml.cott.toml
[secret]
allow = ["env/staging/*"]  # Supports glob patterns, only encrypt for recipients in env/staging
deny = ["env/staging/badservice"]  # Encrypt for everyone in env/staging except badservice

Deny rules take precedence over allow rules.

Learn More

See examples directory for more usage examples.

Alternatives

  • agebox: Very similar in core philosophy but lacking many features.
  • git-crypt: Uses PGP (requires an agent), complex, 100% tied to Git.
  • SOPS: Lots of features and very complex for simple use cases.

Troubleshooting

# See debug logs with -v, -vv or -vvv
ctg run -vvv -- ./deploy.sh

License

MIT OR Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cottage-0.4.0.tar.gz (4.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

cottage-0.4.0-py3-none-win_arm64.whl (3.4 MB view details)

Uploaded Python 3Windows ARM64

cottage-0.4.0-py3-none-win_amd64.whl (3.7 MB view details)

Uploaded Python 3Windows x86-64

cottage-0.4.0-py3-none-win32.whl (3.5 MB view details)

Uploaded Python 3Windows x86

cottage-0.4.0-py3-none-musllinux_1_2_x86_64.whl (4.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

cottage-0.4.0-py3-none-musllinux_1_2_i686.whl (4.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

cottage-0.4.0-py3-none-musllinux_1_2_armv7l.whl (3.8 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

cottage-0.4.0-py3-none-musllinux_1_2_aarch64.whl (3.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

cottage-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

cottage-0.4.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (4.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

cottage-0.4.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (4.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

cottage-0.4.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (4.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

cottage-0.4.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (3.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

cottage-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

cottage-0.4.0-py3-none-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

cottage-0.4.0-py3-none-macosx_10_12_x86_64.whl (3.8 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file cottage-0.4.0.tar.gz.

File metadata

  • Download URL: cottage-0.4.0.tar.gz
  • Upload date:
  • Size: 4.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0.tar.gz
Algorithm Hash digest
SHA256 99315f22dcaaa690c41e0a7c7fa6e4036b5dd6ca5eff843363a192112b0718c8
MD5 9d19e84b5e8d3b0ea94b914f6faf2cf5
BLAKE2b-256 ae1b2ba2cef2fe66d8efa9ed2c7813888399b5764ab8e1f878a0ff428a56c8e4

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-win_arm64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 ea40e5702c433cddc43cce2bc2e0108af0f32d3b4aa8a5d59ad27420e588ea97
MD5 408004ff2539e63639663afacf347608
BLAKE2b-256 8c95afbe66583102c56e3348c922691a4dc5da6d7d3f0cdc25b65d4c5d5e6581

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 3.7 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 a9f99e2ccfeb59626bac770d03faa82f3349cb3d2c69e8d12768acc267cba9ce
MD5 f7a4d043ae9456abd003f6623013b0c3
BLAKE2b-256 99901cb268911e531f14fd34f5f62c1967adc81af71579ba4f3a150a1b2dc947

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-win32.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-win32.whl
  • Upload date:
  • Size: 3.5 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-win32.whl
Algorithm Hash digest
SHA256 aa84dce202c3f04a037ae5c106d903db7367ce6e69c4980df8eeddcc96ebdc46
MD5 27f71beb3497610ac1e6f1937f799778
BLAKE2b-256 055450806add3becc9b4267e52743364f1c57540564bcff78dd8678e2a4e5910

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 4.1 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 30b569809aa11e3dfd5cce394f070bad6e1619555e429f5662844a42d55841f3
MD5 d112cef5411f48e945f6e3b859976124
BLAKE2b-256 ff96ecc6063d6be223e2390cc767816b542f9aec9459d2bd54223c91c83bb4f5

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-musllinux_1_2_i686.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 4.0 MB
  • Tags: Python 3, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 e47ba29339d3a22934dc29ecb4832659febbeb88c627ebf0d4dd3f87b2956546
MD5 6db51ea5ce36c399e3008090d01eb35f
BLAKE2b-256 ab9f8de2e580381c8dcf1e6a476f2fbfa2d2c81425528afd238851b407416daa

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9259b5f97783332cb872afb63ceb187611a1a0e063e6660a26a65ba4bb536d19
MD5 139d02bd139a9eac2f797d8735d1b6cc
BLAKE2b-256 e8f940e1a08d238d2c0e23814f0ec7c02d864e147279a148a8fbdcc789d75025

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 3.7 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 94cc038f540629c9401ac437c542a4c7f727fbe66125377cd412d8bb8e098b43
MD5 8c7151d78fd6ba62a81a98683d2e2c28
BLAKE2b-256 4672ac8a41f0946d66ad4c9884294428792779f407ade6191cc0f4bcbe10d46e

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.0 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b4891790c2219b376532cafa6498a036e40f8ca30f063be6f767635ce3f765a9
MD5 d68614155b78109d0f86c1e3c378006d
BLAKE2b-256 c7d8e9b085ee7236965d2244884167cd8be9236b3a4024932c4a69b22d8db351

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 4.1 MB
  • Tags: Python 3, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 75f7998cfc44ecda005c1b2b09340ac319022f7cca9f43aa22d4edb31aef01f8
MD5 e4ea2328cf83d914fc276bb9adce0d65
BLAKE2b-256 eaff31339a65e912023c65144cafc10f40c1a5e274d6aa21f58d5f1c893ddd50

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 1a99911e05b1ca595e459f1070f81adea47d63ca5768bd88d7a9db4ff2825f09
MD5 d3cd9c33eacc205bf6489b6d8fcf1b71
BLAKE2b-256 8713086cc1c2ef894b2c024d798a0d3145ffdced2c3b831abe6ac92da385a274

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.1 MB
  • Tags: Python 3, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 07e0ea9cc3ef811277bfc1ec44ba87040b4563f1c143ea1454b2ba89af1c4d7c
MD5 c1ef131e8aa1f689485d8aa4893ccba4
BLAKE2b-256 0687dec917b843b24ca5ae556c29c809f9e63cd490e6f7499d82fdb8fbeeedf8

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 e85c72d3249667f1fe7aeac4c5ad00603c24a7f43db754f308ac3cb1090c93ee
MD5 71ebbd5122a1ebcdd770e3818d002c35
BLAKE2b-256 36c31b7da56fd789a4064dd33eddd4edd2c3d50591f6c71f6197ea2c113b9fd0

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 3.7 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6733cb541c9946dcdadcf6d842869c47c0a496015a40628c442c515af46332a6
MD5 7ee6e075f9b8695c51b5d221330d71a6
BLAKE2b-256 26acffe90196f380121114729252a33885aed1b9c470c8637d57c38e1257a984

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2be8a3a5258f5c7d8edc5b036d0d34daa092677437e3d2a591fe9e2c8060e205
MD5 f6f0a62cc0cb9b6cfd472d090ba2867f
BLAKE2b-256 b84587372303aae67101ac4b612cc34c35debc0480bd8542629c13e9bc420e40

See more details on using hashes here.

File details

Details for the file cottage-0.4.0-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: cottage-0.4.0-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cottage-0.4.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a12e7c24d4d03395d7f32da736449a68cf7365dfa2722d373f98f6f482bcafab
MD5 4960288d2791878de2df2328dad9639f
BLAKE2b-256 04a7493d0fe6aa53d51a826d4be4672fb2e66d6301d047b05c9b8b50479faf9f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page