MeowIndex
A cute, feature-rich file listing module to replace nginx's autoindex / fancyindex.
Features
- List files
- Show file icons
- Clickable, length-safe breadcrumb path
- Fix mobile view
- Infinite-scroll
- Search
- Show 404 page
TODO
- Show image/video previews
- Use file magic instead of file suffix to determine mime type
How to use
1. Installation
You can install from source by cloning the repository:
cd /etc/nginx
git clone https://github.com/hykilpikonna/MeowIndex
cd MeowIndex
yarn install
yarn build
To update, simply do git pull
and yarn build
in the same directory.
2. Setup File Listing in Nginx
This module uses the json file listing api in nginx. If you already have an autoindex file server set up, you can make the following changes. If you're new to nginx, you can check out our example configs.
The following example serves /data/file-server
on http path /
Before:
# ...
server_name your.domain.com;
root /data/file-server;
location / {
fancyindex on;
fancyindex_exact_size off;
}
After:
# ...
server_name your.domain.com;
set $title "Meow Index";
set $dir_path /data/file-server;
include "/etc/nginx/MeowIndex/docs/nginx.conf";
location / {
try_files $uri $uri/index.html /__meowindex__/index.html;
}