Skip to content

Latest commit

 

History

History
133 lines (88 loc) · 3.75 KB

README.md

File metadata and controls

133 lines (88 loc) · 3.75 KB

xmpp.org

Build Website

Please log any issues.

Contributing new content and updates

  • Fork the code to your own git repository.
  • Make your changes in /content or directly in GitHub.
  • When you are happy with your updates, submit a pull request describing the changes.
  • IMPORTANT: Before sending a Pull Request make sure that your forked repo is in sync with the base repo.
  • The updates will be reviewed and merged in.

Communication forum

Please use xsf@muc.xmpp.org for discussions about the site, content, generation etc.

Site generation

  • Commits to the master branch generate a new build.
  • Builds are visible at Github Actions
  • Changes will be visible on xmpp.org after the next update

Software Requirements

  • Hugo
  • Python

Introduction to Hugo

Hugo’s quickstart page is a good place to learn about the basics of Hugo (installation, project skeleton, development cycle, etc.).

Installation instructions

Multiple types of installations are documented:

Regular installation

To run a development server on your local computer, follow these basic steps:

git clone ssh://git@github.com/xsf/xmpp.org.git
# install Hugo
cd xmpp.org

Running the server in development mode (reloads whenever a file is changed):

make serve

View at http://localhost:1313

Docker-based installation

The Makefile will build the website completely by running:

make -f MakefileDocker

It'll do the following:

  • Create a Docker image based on DockerfileDev which is a development environment with a complete set of dependencies ready.

  • Build the website from the locally checked out xmpp.org repository (make prepare_docker). This includes deploy/xsf.conf.

For development convenience, you can run the website on port 80:

make -f MakefileDocker serve

Vagrant-based installation

For your convenience, this repository ships with a basic Vagrantfile, which allows you to create virtual machine with all the dependencies required for local development.

Assuming your computer has Vagrant installed, the following will get you a running server:

git clone ssh://git@github.com/xsf/xmpp.org.git
cd xmpp.org
vagrant up
vagrant ssh
cd /vagrant/
make serve

Now, the website should be available at http://localhost:1313

Configuration

<repo>
  Dockerfile / DockerfileDev
  fabfile.py
  MakefileDocker
  Makefile
  README.md
  public
    <generated files>
  content
    <website page files>
  themes
    <website theme>

Local site generation

To just generate a new version (without starting up a local webserver) just do:

make publish

Pages will be available in the /public folder.

Theme development

xmpp.org's theme makes use of:

The theme (layout and styling) can be customized in the /themes/xmpp.org directory.

You can directly modify styles in themes/xmpp.org/assets/css/style.css.