Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/py-package/masonite-filemanager

A simple yet powerful file management solution for your masonite application.
https://github.com/py-package/masonite-filemanager

filemanager filemanager-masonite masonite-framework package python

Last synced: about 1 month ago
JSON representation

A simple yet powerful file management solution for your masonite application.

Awesome Lists containing this project

README

        

# filemanager





GitHub Workflow Status
PyPI
Python Version
GitHub release (latest by date including pre-releases)
License
star
Code style: black

## Introduction

A simple yet powerful file management solution for your masonite application.

## Features

- [x] Manager Server Files (Currently only supports local files)
- [x] Upload Files
- [x] Preview Files
- [x] Rename Files/Folders
- [x] Delete Files/Folders
- [x] Download Files
- [x] Move Files
- [x] Search Files
- [x] Protect Routes
- [ ] Image Editing
- [ ] Third Party Driver Support (S3, DigitalOcean Space, etc)
- [x] File Picker (Form)

## Installation

```bash
pip install masonite-filemanager
```

## Configuration

Add FileManagerProvider to your project in `config/providers.py`:

```python
# config/providers.py
# ...
from filemanager.providers import FileManagerProvider

# ...
PROVIDERS = [
# ...
# Third Party Providers
FileManagerProvider,
# ...
]
```

Then you can publish the package resources (if needed) by doing:

```bash
python craft package:publish filemanager
```

Finally add following to `STATICFILES` section in `config/filesystem.py`:

```python
# config/filesystem.py

STATICFILES = {
# ...
# FileManager resources
'resources/vendor/filemanager': 'filemanager-assets/',
"storage/framework/filesystem/filemanager": "filemanager-uploads/",
}
```

## Usage

Once finishing configurations, you can access the file manager by using the following route:

`http://localhost:8000/filemanager`

If you want to use file picker then all you have to do is include then follow the following guidelines:

1. Add style in the header of your base template:
```html

```
2. Add script before the `