starlette-admin


Namestarlette-admin JSON
Version 0.13.2 PyPI version JSON
download
home_pageNone
SummaryFast, beautiful and extensible administrative interface framework for Starlette/FastApi applications
upload_time2024-02-04 21:27:58
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords admin dashboard datatables fastapi mongoengine odmantic sqlalchemy sqlmodel starlette
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # starlette-admin

*Starlette-Admin* is a fast, beautiful and extensible administrative interface framework for Starlette/FastApi applications.

<p align="center">
<a href="https://github.com/jowilf/starlette-admin/actions/workflows/test.yml">
    <img src="https://github.com/jowilf/starlette-admin/actions/workflows/test.yml/badge.svg" alt="Test suite">
</a>
<a href="https://github.com/jowilf/starlette-admin/actions">
    <img src="https://github.com/jowilf/starlette-admin/actions/workflows/publish.yml/badge.svg" alt="Publish">
</a>
<a href="https://codecov.io/gh/jowilf/starlette-admin">
    <img src="https://codecov.io/gh/jowilf/starlette-admin/branch/main/graph/badge.svg" alt="Codecov">
</a>
<a href="https://pypi.org/project/starlette-admin/">
    <img src="https://badge.fury.io/py/starlette-admin.svg" alt="Package version">
</a>
<a href="https://pypi.org/project/starlette-admin/">
    <img src="https://img.shields.io/pypi/pyversions/starlette-admin?color=2334D058" alt="Supported Python versions">
</a>
</p>

![Preview image](https://raw.githubusercontent.com/jowilf/starlette-admin/main/docs/images/preview.jpg)

## Getting started

* Check out [the documentation](https://jowilf.github.io/starlette-admin).
* Try the [live demo](https://starlette-admin-demo.jowilf.com/). ([Source code](https://github.com/jowilf/starlette-admin-demo))
* Try the several usage examples included in the [/examples](https://github.com/jowilf/starlette-admin/tree/main/examples) folder
* If you find this project helpful or interesting, please consider giving it a star ⭐️

## Features

- CRUD any data with ease
- Automatic form validation
- Advanced table widget with [Datatables](https://datatables.net/)
- Search and filtering
- Search highlighting
- Multi-column ordering
- Export data to CSV/EXCEL/PDF and Browser Print
- Authentication
- Authorization
- Manage Files
- Custom views
- Custom batch actions
- Supported ORMs
    * [SQLAlchemy](https://www.sqlalchemy.org/)
    * [SQLModel](https://sqlmodel.tiangolo.com/)
    * [MongoEngine](http://mongoengine.org/)
    * [ODMantic](https://github.com/art049/odmantic/)
    * Custom backend ([doc](https://jowilf.github.io/starlette-admin/advanced/base-model-view/), [example](https://github.com/jowilf/starlette-admin/tree/main/examples/custom-backend))
- Internationalization

## Installation

### PIP

```shell
$ pip install starlette-admin
```

### Poetry

```shell
$ poetry add starlette-admin
```

## Example

This is a simple example with SQLAlchemy model

```python
from sqlalchemy import Column, Integer, String, create_engine
from sqlalchemy.ext.declarative import declarative_base
from starlette.applications import Starlette
from starlette_admin.contrib.sqla import Admin, ModelView

Base = declarative_base()
engine = create_engine("sqlite:///test.db", connect_args={"check_same_thread": False})


# Define your model
class Post(Base):
    __tablename__ = "posts"

    id = Column(Integer, primary_key=True)
    title = Column(String)


Base.metadata.create_all(engine)

app = Starlette()  # FastAPI()

# Create admin
admin = Admin(engine, title="Example: SQLAlchemy")

# Add view
admin.add_view(ModelView(Post))

# Mount admin to your app
admin.mount_to(app)
```
Access your admin interface in your browser at [http://localhost:8000/admin](http://localhost:8000/admin)

## Third party

*starlette-admin* is built with other open source projects:

- [Tabler](https://tabler.io/)
- [Datatables](https://datatables.net/)
- [jquery](https://jquery.com/)
- [Select2](https://select2.org/)
- [flatpickr](https://flatpickr.js.org/)
- [moment](http://momentjs.com/)
- [jsoneditor](https://github.com/josdejong/jsoneditor)
- [fontawesome](https://fontawesome.com/)
- [TinyMCE](https://www.tiny.cloud/)

## Contributing

Contributions are welcome and greatly appreciated! Before getting started, please read
[our contribution guidelines](https://github.com/jowilf/starlette-admin/blob/main/CONTRIBUTING.md)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "starlette-admin",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "admin,dashboard,datatables,fastapi,mongoengine,odmantic,sqlalchemy,sqlmodel,starlette",
    "author": null,
    "author_email": "Jocelin Hounon <hounonj@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/93/d8/a8ef24865b9eae9474dd17dc9f64507e4a466fd542ec38ae019c8735bfdc/starlette_admin-0.13.2.tar.gz",
    "platform": null,
    "description": "# starlette-admin\n\n*Starlette-Admin* is a fast, beautiful and extensible administrative interface framework for Starlette/FastApi applications.\n\n<p align=\"center\">\n<a href=\"https://github.com/jowilf/starlette-admin/actions/workflows/test.yml\">\n    <img src=\"https://github.com/jowilf/starlette-admin/actions/workflows/test.yml/badge.svg\" alt=\"Test suite\">\n</a>\n<a href=\"https://github.com/jowilf/starlette-admin/actions\">\n    <img src=\"https://github.com/jowilf/starlette-admin/actions/workflows/publish.yml/badge.svg\" alt=\"Publish\">\n</a>\n<a href=\"https://codecov.io/gh/jowilf/starlette-admin\">\n    <img src=\"https://codecov.io/gh/jowilf/starlette-admin/branch/main/graph/badge.svg\" alt=\"Codecov\">\n</a>\n<a href=\"https://pypi.org/project/starlette-admin/\">\n    <img src=\"https://badge.fury.io/py/starlette-admin.svg\" alt=\"Package version\">\n</a>\n<a href=\"https://pypi.org/project/starlette-admin/\">\n    <img src=\"https://img.shields.io/pypi/pyversions/starlette-admin?color=2334D058\" alt=\"Supported Python versions\">\n</a>\n</p>\n\n![Preview image](https://raw.githubusercontent.com/jowilf/starlette-admin/main/docs/images/preview.jpg)\n\n## Getting started\n\n* Check out [the documentation](https://jowilf.github.io/starlette-admin).\n* Try the [live demo](https://starlette-admin-demo.jowilf.com/). ([Source code](https://github.com/jowilf/starlette-admin-demo))\n* Try the several usage examples included in the [/examples](https://github.com/jowilf/starlette-admin/tree/main/examples) folder\n* If you find this project helpful or interesting, please consider giving it a star \u2b50\ufe0f\n\n## Features\n\n- CRUD any data with ease\n- Automatic form validation\n- Advanced table widget with [Datatables](https://datatables.net/)\n- Search and filtering\n- Search highlighting\n- Multi-column ordering\n- Export data to CSV/EXCEL/PDF and Browser Print\n- Authentication\n- Authorization\n- Manage Files\n- Custom views\n- Custom batch actions\n- Supported ORMs\n    * [SQLAlchemy](https://www.sqlalchemy.org/)\n    * [SQLModel](https://sqlmodel.tiangolo.com/)\n    * [MongoEngine](http://mongoengine.org/)\n    * [ODMantic](https://github.com/art049/odmantic/)\n    * Custom backend ([doc](https://jowilf.github.io/starlette-admin/advanced/base-model-view/), [example](https://github.com/jowilf/starlette-admin/tree/main/examples/custom-backend))\n- Internationalization\n\n## Installation\n\n### PIP\n\n```shell\n$ pip install starlette-admin\n```\n\n### Poetry\n\n```shell\n$ poetry add starlette-admin\n```\n\n## Example\n\nThis is a simple example with SQLAlchemy model\n\n```python\nfrom sqlalchemy import Column, Integer, String, create_engine\nfrom sqlalchemy.ext.declarative import declarative_base\nfrom starlette.applications import Starlette\nfrom starlette_admin.contrib.sqla import Admin, ModelView\n\nBase = declarative_base()\nengine = create_engine(\"sqlite:///test.db\", connect_args={\"check_same_thread\": False})\n\n\n# Define your model\nclass Post(Base):\n    __tablename__ = \"posts\"\n\n    id = Column(Integer, primary_key=True)\n    title = Column(String)\n\n\nBase.metadata.create_all(engine)\n\napp = Starlette()  # FastAPI()\n\n# Create admin\nadmin = Admin(engine, title=\"Example: SQLAlchemy\")\n\n# Add view\nadmin.add_view(ModelView(Post))\n\n# Mount admin to your app\nadmin.mount_to(app)\n```\nAccess your admin interface in your browser at [http://localhost:8000/admin](http://localhost:8000/admin)\n\n## Third party\n\n*starlette-admin* is built with other open source projects:\n\n- [Tabler](https://tabler.io/)\n- [Datatables](https://datatables.net/)\n- [jquery](https://jquery.com/)\n- [Select2](https://select2.org/)\n- [flatpickr](https://flatpickr.js.org/)\n- [moment](http://momentjs.com/)\n- [jsoneditor](https://github.com/josdejong/jsoneditor)\n- [fontawesome](https://fontawesome.com/)\n- [TinyMCE](https://www.tiny.cloud/)\n\n## Contributing\n\nContributions are welcome and greatly appreciated! Before getting started, please read\n[our contribution guidelines](https://github.com/jowilf/starlette-admin/blob/main/CONTRIBUTING.md)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Fast, beautiful and extensible administrative interface framework for Starlette/FastApi applications",
    "version": "0.13.2",
    "project_urls": {
        "Changelog": "https://jowilf.github.io/starlette-admin/changelog/",
        "Documentation": "https://jowilf.github.io/starlette-admin",
        "Homepage": "https://github.com/jowilf/starlette-admin",
        "Repository": "https://github.com/jowilf/starlette-admin"
    },
    "split_keywords": [
        "admin",
        "dashboard",
        "datatables",
        "fastapi",
        "mongoengine",
        "odmantic",
        "sqlalchemy",
        "sqlmodel",
        "starlette"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bcd5da9bd541d9b865402f462355135fe46b73f63832561ea8cf3b4c50914a73",
                "md5": "3b88d11be5d2353f8a9f13fd8f44137e",
                "sha256": "95b60ce71f05696df49d95b8664726abb9e3f76a44b49aeea25d1d6b68c039ed"
            },
            "downloads": -1,
            "filename": "starlette_admin-0.13.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3b88d11be5d2353f8a9f13fd8f44137e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 2152592,
            "upload_time": "2024-02-04T21:27:56",
            "upload_time_iso_8601": "2024-02-04T21:27:56.442100Z",
            "url": "https://files.pythonhosted.org/packages/bc/d5/da9bd541d9b865402f462355135fe46b73f63832561ea8cf3b4c50914a73/starlette_admin-0.13.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "93d8a8ef24865b9eae9474dd17dc9f64507e4a466fd542ec38ae019c8735bfdc",
                "md5": "94683f4bfe8e7797fc8dfb2fd5ab98ef",
                "sha256": "4a2ee4e5e24b49aaaa6c034ba7f538a6accdd736c4ae7ea2c38cfb0c2c09bcce"
            },
            "downloads": -1,
            "filename": "starlette_admin-0.13.2.tar.gz",
            "has_sig": false,
            "md5_digest": "94683f4bfe8e7797fc8dfb2fd5ab98ef",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 2094619,
            "upload_time": "2024-02-04T21:27:58",
            "upload_time_iso_8601": "2024-02-04T21:27:58.727495Z",
            "url": "https://files.pythonhosted.org/packages/93/d8/a8ef24865b9eae9474dd17dc9f64507e4a466fd542ec38ae019c8735bfdc/starlette_admin-0.13.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-04 21:27:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jowilf",
    "github_project": "starlette-admin",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "starlette-admin"
}
        
Elapsed time: 0.17487s