Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Getting Started

From Wikven
More actions

On this page, we build a basic Hello World page with Wikven.

This page assumes a unix-like shell. The standalone binary is Linux-only; on macOS or Windows, use the Docker image.

Wikven builds a static website from a directory of wikitext. There are three ways to install it: the standalone binary, the Docker image, or built from source. This guide uses the binary or Docker, pick whichever you have.

Requirement

Create a source directory and add a wikitext file. Any file ending in .wikitext becomes a wiki article. Name your entry page index so it builds to index.html, the file a browser opens at the site root.

mkdir src
echo 'Hello, World!' > src/index.wikitext

Then build the site. The rendered pages are written to dist/. Pick the tab for how you run Wikven:

Run it in the directory that holds src/ (see Installation to get it):

wikven build

Mount the source and output directories into the container:

docker run --rm \
  -v "$(pwd)/src:/workspace/src" \
  -v "$(pwd)/dist:/workspace/dist" \
  ghcr.io/chaotic-ground/wikven

The untagged image tracks the latest build; append a release tag such as :1.0.0 to pin a specific version.

Preview the site locally, then open http://localhost:8080:

wikven serve

docker run --rm -p 8080:8080 \
  -v "$(pwd)/dist:/workspace/dist" \
  ghcr.io/chaotic-ground/wikven serve

Opening dist/index.html directly also works, though some links and assets resolve correctly only when served. To publish it online, see Deploying.

Setting the title of the site

For configuration, create a .wikven.yaml file in your src directory.

cat <<EOF > src/.wikven.yaml
config:
  Sitename: My Site
EOF

Build again with the same command as before, and the site is titled "My Site".

Adding a second page

Every .wikitext file becomes a page. Add another one and link to it from the first with [[...]]:

echo 'This is the help page.' > src/Help.wikitext
echo 'Read the [[Help]].' >> src/index.wikitext

Build again: the home page now links to Help.html, and the link works with no server. See Pages for how file names map to page titles and namespaces.

Adding a template

Templates, the main reason to reach for Wikven over Markdown, let you reuse content. Put a Template: page in your source and transclude it with {{...}}:

echo "'''Note:''' {{{1}}}" > "src/Template:Note.wikitext"
echo '{{Note|Back up your wiki first.}}' >> src/index.wikitext

Build again: the home page now shows the note. See Pages#Templates for parameters and more.

Retrieved from "Getting_Started/en.html"