Skip to content

xsf/xmpp.org

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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.