Skip to content

ustclug/yadex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

yadex

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/

Endpoints

Template-rendered index page

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

JSON API

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
}

About

Yet Another Directory inDEX

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •