AVERELL(1)

πŸ“¦ version 1.2.5, in ubuntu jammy, ubuntu noble

✨ AVERELL(1) ✨

okay so this is the averell manual page, from the averell User Manual bestie, and we're gonna get through it together πŸ’–


πŸ’… NAME

averell β€” an incredibly stupid (but fast) web server 🫢


🌸 SYNOPSIS

averell [-h | --help] [-p PORT | --port=PORT] [-c | --cors]
        [-v | --verbose] [-d | --debug] [-a | --access]
        [-I | --no-index] [directory]

πŸ¦‹ DESCRIPTION

so this page documents averell, briefly, because honestly? there's not a lot to say and that's the whole point ✨

averell is an incredibly simple web server, and its entire goal in life is serving a single directory</>, fast. that's it. that's the girl. no cap. πŸ‘‘


πŸŽ€ OPTIONS

okay so the program follows the usual GNU command line syntax, meaning long options start with two dashes (`-`). a summary of options is included below, and yes we're going through every single one because every single one matters πŸ’…

  • -h, --help β€” show help and dip out. exit. gone. πŸ‘‹
  • -p PORT, --port=PORT β€” set the listening port (default: 8000). pick your fave number bestie 🌈
  • -c, --cors β€” enable CORS (allowed origins: *). everybody's welcome, no gatekeeping πŸ’–
  • -v, --verbose β€” be more verbose. give me words, give me details πŸ“’
  • -d, --debug β€” debug mode (and it overrides verbose mode if any): it prints request and response headers. full transparency, we love to see it πŸ”
  • -a, --access β€” read .avlaccess for per-directory properties. the ✨customization✨ era begins
  • -I, --no-index β€” do not serve the index.html file automatically (this can be overridden by .avlaccess). lowkey a rebel move 🚫
  • directory β€” the directory to server (default: current dir). yes the original says "to server" and honestly? she said what she said πŸ“

🧚 .AVLACCESS FILE FORMAT

this section describes the .avlaccess file format, and it's giving ✨config✨

.avlaccess files can be placed anywhere in a directory served by averell. it contains properties applicable to this directory. and the best part? properties are inherited from parent directories. generational wealth but for config 🫢

⭐ SYNTAX

the file is parsed using the file:consult/1 function of erlang/OTP (see erlang/OTP documentation[1] in the notes, iykyk). the parser is strict, so be careful bestie: watch the ending dot, the comma between tuples, and no comma after the last tuple. she will not forgive you πŸ’€

example of such file is given below:

          [
              {option1, value1},
            {option2, value2}
          ].

🌈 OPTIONS

  • {index, <<"index.html">>} β€” when requesting a directory path, look for the given filename and serves it if it exists. 403 otherwise. slay if it's there, blocked if it's not 😭
  • {index, noindex} β€” do not server any index file when requesting a directory path. such requests will return 403. literally "no index, no entry" πŸ™ˆ

πŸ‘‘ AUTHOR

Jean Parpaillon <jean.parpaillon@free.fr>

  • Author of averell and this marvellous manpage. iconic behaviour, we stan πŸ’–

Copyright Β© 2014 Jean Parpaillon

permission is granted to copy, distribute and/or modify this document under the terms of the Apache License Version 2 or (at your option) any later version published by the Apache Foundation.

on Debian systems, the complete text of the Apache can be found in /usr/share/common-licenses/Apache-2.0. go read it, it's right there bestie πŸŽ€


πŸ“ NOTES

  1. erlang/OTP documentation http://www.erlang.org/doc/man/file.html#consult-1

okay that's the whole page bestie, you made it to the end and I'm so proud πŸ₯Ή this was averell, dated 02/10/2019, and the version/source sign-off at the bottom of the original said averell and AVERELL(1) β€” so consider yourself officially signed off, mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from