Skip to content

Latest commit

 

History

History
130 lines (91 loc) · 3.96 KB

README.md

File metadata and controls

130 lines (91 loc) · 3.96 KB

xmpp.org

Build Status Docker Build Status

Please log any issues.

Contributing new content and updates

  • Fork the code to your own git repository.
  • Make your changes in /content/pages 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

Software Requirements

  • Pelican 3.3
  • ghp-import
  • Markdown 2.3.1

Gentle introduction to Pelican

Pelican's QUICKSTART page is a good place to learn about the basics of Pelican (installation, project skeleton, development cycle, etc.).

Installation instructions

Two types of installations are documented: a regular one, and one that creates a virtual environment via Vagrant.

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 Pelican and dependencies
cd xmpp.org

Running the server in development mode:

make serve

If you want the server to autoreload whenever a file change, you can instead do:

make devserver

View at http://localhost:8000

Docker-based installation

The Makefile will build the website completely by running make -f MakefileDocker. It'll do the following:

  • Create a build Docker image (make builder) which is a development environment with a complete set of dependencies ready.

  • Run this docker image on the xmpp.org directory locally. This directory is presumed to contain a checked out repository for the website. (make site)

  • From the newly created static files in deploy/output, it will then create a minimalist docker image to actually serve the website. (make deployer)

For development convenience, you can run the website on port 8080 by 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 devserver

Now, the wesite should be available at http://localhost:8000

Configuration

<repo>
  fabfile.py
  develop_server.sh
  Makefile
  README.md
  pelicanconf.py (development configuration)
  publishconf.py (production configuration)
  output
    <generated files - published to gh-pages branch>
  content
    pages
      <website page files>
  pelican-bootstrap3
    <website theme>

Site generation

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

make html

Theme development

You can modify the theme (layout and styling) in the xmpp.org-theme directory.

Make changes to Sass files, not compiled CSS.

npm i then run grunt to compile Sass.