Please log any issues.
- 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.
Please use xsf@muc.xmpp.org for discussions about the site, content, generation etc.
- 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
- Hugo
- Python
Hugo’s quickstart page is a good place to learn about the basics of Hugo (installation, project skeleton, development cycle, etc.).
Multiple types of installations are documented:
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
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 includesdeploy/xsf.conf
.
For development convenience, you can run the website on port 80:
make -f MakefileDocker serve
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
<repo>
Dockerfile / DockerfileDev
fabfile.py
MakefileDocker
Makefile
README.md
public
<generated files>
content
<website page files>
themes
<website theme>
To just generate a new version (without starting up a local webserver) just do:
make publish
Pages will be available in the /public folder.
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.