Yet Another inDEX page.
Designed to work with other servers like nginx -- yadex does not serve files, instead it only generates index pages for directories.
Modified from: https://github.com/kxxt/yadex/
Enabled with template_index config option in [service] (default: true). You need to set index_file in [template] config section (relative to config dir).
Template example: etc/index.html
Enabled with json_api config option in [service] (default: false). The path is /api/files, and shall be called with a POST request with a JSON body:
{
"path": "/path/to/directory"
}Example response (note: entries are not sorted; directory sizes are always 0):
{
"entries": [
{
"name": "hooks",
"is_dir": true,
"size": 0,
"href": "/.git/hooks/",
"datetime": 1762543427
},
{
"name": "info",
"is_dir": true,
"size": 0,
"href": "/.git/info/",
"datetime": 1762543427
},
{
"name": "description",
"is_dir": false,
"size": 73,
"href": "/.git/description",
"datetime": 1762543427
},
{
"name": "objects",
"is_dir": true,
"size": 0,
"href": "/.git/objects/",
"datetime": 1762968018
},
{
"name": "refs",
"is_dir": true,
"size": 0,
"href": "/.git/refs/",
"datetime": 1762543429
},
{
"name": "packed-refs",
"is_dir": false,
"size": 216,
"href": "/.git/packed-refs",
"datetime": 1762543429
},
{
"name": "logs",
"is_dir": true,
"size": 0,
"href": "/.git/logs/",
"datetime": 1762543429
},
{
"name": "HEAD",
"is_dir": false,
"size": 21,
"href": "/.git/HEAD",
"datetime": 1762543429
},
{
"name": "COMMIT_EDITMSG",
"is_dir": false,
"size": 26,
"href": "/.git/COMMIT_EDITMSG",
"datetime": 1762968009
},
{
"name": "FETCH_HEAD",
"is_dir": false,
"size": 82,
"href": "/.git/FETCH_HEAD",
"datetime": 1762968018
},
{
"name": "config",
"is_dir": false,
"size": 284,
"href": "/.git/config",
"datetime": 1762546352
},
{
"name": "index",
"is_dir": false,
"size": 1635,
"href": "/.git/index",
"datetime": 1762968009
},
{
"name": "ORIG_HEAD",
"is_dir": false,
"size": 41,
"href": "/.git/ORIG_HEAD",
"datetime": 1762968018
}
],
"maybe_truncated": false
}