fractional-indexing
Provides functions for generating ordering strings
Decision gist · record as of 2026-08-14
Yes, if you need to maintain ordered sequences in a collaborative or distributed context. The package is lightweight, permissively licensed, and solves a specific problem well. The main caveat is that the last release was over a year ago despite active repository commits—verify it works with your target Python version before relying on it in production.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction: pure Python wheel with only setuptools as a runtime dependency.
- Repository is active with a recent commit (2026-08-06), though the last release was over a year ago (2023-08-13).
License · maintenance · safety
CC0 1.0 Universal (permissive) — CC0 1.0 Universal (public domain equivalent) means no restrictions on use, modification, or distribution—you can use this freely in any project without attribution requirements.
last release 2023-08-13 (1097 days) · last repo commit 2026-08-06 · 38 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 217,545 downloads/mo, #9,356 on PyPI
Alternatives
Verify before relying
from fractional_indexing import generate_key_between
# Insert at the beginning
first = generate_key_between(None, None)
# Returns 'a0'
# Insert after first
second = generate_key_between(first, None)
# Returns 'a1'- Whether the package works with modern Python versions (requires_python is empty in metadata)
What it is and what it does
Fractional indexing is a technique for generating sortable string keys that represent positions in an ordered sequence. Instead of storing explicit numeric indices that require recalculation when items are inserted, you generate a key that sorts between any two existing keys—or at the beginning or end if no neighbors exist. This is particularly useful in collaborative editing systems where multiple clients insert items concurrently without coordinating a central sequence number.
The package provides three main functions: `generate_key_between()` to create a single key between two positions, `generate_n_keys_between()` to generate multiple keys at once, and `validate_order_key()` to check if a key is valid. By default it uses Base62 encoding, but you can supply custom digit sets. The implementation includes variable-length integers and prepend/append optimizations from the original design.
Use it for
- Collaborative document editors where multiple users insert paragraphs/sections concurrently without a central server assigning indices
- Todo list applications storing item order as string keys in a database, allowing insertions between items without updating all subsequent records
- Real-time multiplayer games maintaining player action order or entity positions in a way that merges concurrent updates
- CMS systems storing content hierarchy where new pages can be inserted between existing ones without reordering the entire tree
- Distributed databases or event logs where you need a total ordering that can be computed locally without coordination
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to maintain ordered sequences in a collaborative or distributed context.
The package is lightweight, permissively licensed, and solves a specific problem well. The main caveat is that the last release was over a year ago despite active repository commits—verify it works with your target Python version before relying on it in production.
Install
fractional-indexing on PyPI
Before you install
Low friction: pure Python wheel with only setuptools as a runtime dependency. Repository is active with a recent commit (2026-08-06), though the last release was over a year ago (2023-08-13).
License in practice
CC0 1.0 Universal (public domain equivalent) means no restrictions on use, modification, or distribution—you can use this freely in any project without attribution requirements.
Quickstart
from fractional_indexing import generate_key_between
# Insert at the beginning
first = generate_key_between(None, None)
# Returns 'a0'
# Insert after first
second = generate_key_between(first, None)
# Returns 'a1'
Verify before relying
- Whether the package works with modern Python versions (requires_python is empty in metadata)
Package facts
| License | CC0 1.0 Universal permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagesetuptools |
| Maintenance | Actively maintained 1,097 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 217,545 / month, #9,356 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: fractional_indexing-0.1.3-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “fractional indexing keys”
- fractional-indexingGenerates sortable string keys for inserting items into ordered…
- fxpmathFxpmath provides fixed-point arithmetic with arbitrary word and…
- uuid7Generates version 7 UUIDs that are time-sortable with chronological…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also ksuid · orderedmultidict · ordereddict · sortedcollections · django-ordered-model · orderings · django-sequences · ulid · fxpmath · ulid-py