starlette-admin-infinite-scroll
Infinite scrolling for the starlette-admin list view.
Scroll to the bottom of a list and the next page is appended to the table, keeping the current search, sort, filters, visible columns and page size. Appended rows are rendered by starlette-admin itself, so selection, bulk and row actions, row click navigation and inline editing keep working.
Install
pip install starlette-admin-infinite-scroll
Requires Python 3.11+ and starlette-admin 1.0+.
Usage
from starlette_admin.contrib.sqla import Admin
from starlette_admin_infinite_scroll import InfiniteScrollPlugin
admin = Admin(engine, plugins=[InfiniteScrollPlugin()])
Configure it through the constructor:
InfiniteScrollPlugin(
views=["product", "order"], # only these list views (default: all)
exclude_views=["audit-log"], # keep these paginated
root_margin="600px", # start loading earlier (default: "400px")
hide_pagination=True, # hide page links (default: True)
max_auto_pages=5, # then show "Load more" (default: 0 = unlimited)
)
See docs/index.md for details, behavior notes and the JavaScript API.
Development
uv sync
uv run pytest
uv run python example/app.py # demo at http://localhost:8000/admin/product/list
make lint, make format, make test and make build wrap the usual tasks.
Releasing
- Bump
__version__insrc/starlette_admin_infinite_scroll/__init__.pyand add an entry to CHANGELOG.md. - Commit and push to
main. - Create a GitHub release with the tag
v<version>(e.g.v0.2.0).
Publishing the release runs publish.yml:
CI, a check that the tag matches the package version, the build, the upload
to PyPI via Trusted Publishing, and attaching the built files to the release.
License
Metadata
Release files for starlette-admin-infinite-scroll 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| starlette_admin_infinite_scroll-0.1.0.tar.gz | 14.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| starlette_admin_infinite_scroll-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 26.5 kB
Release files / starlette_admin_infinite_scroll-0.1.0.tar.gz
| Download URL | starlette_admin_infinite_scroll-0.1.0.tar.gz |
|---|---|
| Size | 14.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2a15e749f4223953d17973914e163f2ada5a490722f6dbe9fd527d0a4a683006
|
|
BLAKE2b-256 checksum How to use checksums |
682aba6f38fd65088c77cd8ddb3ba1ba886d00768762623d15144c7ac315de8c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.
Transparency logRelease files / starlette_admin_infinite_scroll-0.1.0-py3-none-any.whl
| Download URL | starlette_admin_infinite_scroll-0.1.0-py3-none-any.whl |
|---|---|
| Size | 12.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4ca4badc2bcbeaa7e0a5d596cac04a1c835dc7bfd8eaecc39c51278105e9c10a
|
|
BLAKE2b-256 checksum How to use checksums |
9c3d82dd0ab7183536ca2345dbc223fc4b089921674b8e951597f3c174d0048a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.
Transparency log