Skip to main content

single-threaded redis (subset) in async python3

Project description

blues

redis subset in python3

0 AI. Check out "Build Your Own Redis" Challenge to do something similar!

Motivation

  1. get some additional practice with async programming in python3
  2. get better with pytest-asyncio and hypothesis
  3. (some) learning on data structures and redis internals

What's done

  1. Blues Stanza Protocol (RESP2 compatible)
  2. Blues Server (async), (strings, lists, streams) TODO: list implemented commands
  3. Blues Client (async)
  4. Blues CLI Client (async), mostly for manual testing, but pretty functional
  5. Transactions

What's coming

  1. Optimistic Locking
  2. Replication
  3. Persistence
  4. More if I can finish the above before the free challenge changes

Dev Tools

  1. uv
  2. pytest
  3. hypothesis
  4. Zed

Attribution and Thanks

  1. "Build Your Own Redis" Challenge
  2. StringTrie implementation

License

Apache 2.0

Author

© Chaitanya Mittal, 2026

Notice

Reach out if I have missed out an attribution or something needs to be removed! No harm intended.

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

blues-0.1.0.tar.gz (37.7 kB view details)

Uploaded Source

Built Distribution

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

blues-0.1.0-py3-none-any.whl (34.0 kB view details)

Uploaded Python 3

File details

Details for the file blues-0.1.0.tar.gz.

File metadata

  • Download URL: blues-0.1.0.tar.gz
  • Upload date:
  • Size: 37.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for blues-0.1.0.tar.gz
Algorithm Hash digest
SHA256 af830506200c8005acc8ecab93f54a84e869b23e8576e53f8929d026479c1a27
MD5 af52094fef04bedf651c2201b799c120
BLAKE2b-256 23e18986c8ea40d0b6fbe9aaf04cd076218f280963e0d881ffa6197b66356d8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for blues-0.1.0.tar.gz:

Publisher: python-publish.yml on chtnnh/blues

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file blues-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: blues-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 34.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for blues-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b9b9dbe594c92002b7b616065c55e4fdffccd36f5975fee24d566146d7161d2b
MD5 662ac8e0bcfb29dae5e98ecb946d976a
BLAKE2b-256 a0ca19ebc2798c3d024a2888f5834d939deda6d81dc0e83639301836e4d7656e

See more details on using hashes here.

Provenance

The following attestation bundles were made for blues-0.1.0-py3-none-any.whl:

Publisher: python-publish.yml on chtnnh/blues

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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