Building from Source¶
Follow these instructions to either build
SWS project from the source or the HTML documentation.
Building project from source¶
If you want to build SWS from the source, all you need is a Rust 2021 Edition installed.
So make sure to install Rust 1.66.0 or higher (or nightly) along with the toolchain(s) of your preference.
Then clone the repository and use Cargo to build the project from the source.
git clone https://github.com/static-web-server/static-web-server.git cd static-web-server cargo build --release
Finally, the release binary should be available at
target/release/static-web-server or under your toolchain directory chosen.
Don't use the project's
Please don't use the project's
Makefile since it's only intended for development and some on-demand tasks.
Building documentation from source¶
All HTML documentation is located in the
docs/ project's directory and is built using Material for MkDocs.
It's only necessary to have Docker installed.
Some features are optional when running or building from the source. For example, if you want to run without the default features like
http2 just try.
cargo run --no-default-features -- -h
For more optional features take a look a the
[features] section of the
cargo.toml file adjusting them on demand.
By default the docs will be built in the
/tmp/docs directory, to do so follow these steps.
git clone https://github.com/static-web-server/static-web-server.git cd static-web-server mkdir /tmp/docs docker run -it --rm \ -v $PWD/docs:/docs \ -v /tmp/docs:/tmp/docs squidfunk/mkdocs-material build
Output the docs in a different directory
If you want to output the docs in a different directory then append the
--site-dir=/new/dir/path/ argument to the "squidfunk/mkdocs-material"
build command and make sure to provide the new directory path.
If you want to improve the documentation then run the built-in development server via
git clone https://github.com/static-web-server/static-web-server.git cd static-web-server docker-compose -f docs/docker-compose.yml up
Now the server will be available at