---
title: Our open source websites
description: Nowadays free software is everywhere – from browsers to encryption software
  to operating systems. Even so, it is still relatively rare for the code behind websites
  and services to be opened up. Stepping into the open Three years ago we started
  to move our website projects to Github, and we also took this opportunity to  […]
url: https://canonical.com/blog/our-open-source-websites?format=md
---

1. [Blog](https://canonical.com/blog)
2. Article

---

[Robin Winslow](https://canonical.com/blog/author/nottrobin "More about Robin Winslow")

31 May 2017

# Our open source websites

[Design](https://canonical.com/blog/tag/design)

---

Share the article

Nowadays [free software](https://www.gnu.org/philosophy/free-sw.en.html "What is free software?") is everywhere – from [browsers](https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Introduction "Firefox: Contributing to the Mozilla code base") to [encryption software](https://github.com/openssl/openssl/blob/master/CONTRIBUTING "OpenSSL: Contributing guidelines") to [operating systems](https://wiki.ubuntu.com/ContributeToUbuntu "Contribute to Ubuntu").

Even so, it is still relatively rare for the code behind websites and services to be opened up.

## Stepping into the open

Three years ago we started to move our website projects to [Github](https://github.com "GitHub: A place for code"), and we also took this opportunity to start making them public. We started with the [www.ubuntu.com codebase](https://github.com/canonical-websites/www.ubuntu.com "The www.ubuntu.com codebase"), and over the next couple of years almost all our team’s other sites have followed suit.

At this point practically all the web team’s sites are open source, and you can find the code for each site in our [canonical-websites organisation](https://github.com/canonical-websites "canonical-websites GitHub organisation: Our website projects").

|  |  |  |
| --- | --- | --- |
| [www.ubuntu.com](https://github.com/canonical-websites/www.ubuntu.com) | [developer.ubuntu.com](https://github.com/canonical-websites/developer.ubuntu.com) | [www.canonical.com](https://github.com/canonical-websites/www.canonical.com) |
| [partners.ubuntu.com](https://github.com/canonical-websites/partners.ubuntu.com) | [design.ubuntu.com](https://github.com/canonical-websites/design.ubuntu.com) | [maas.io](https://github.com/canonical-websites/maas.io) |
| [tour.ubuntu.com](https://github.com/canonical-websites/tour.ubuntu.com) | [snapcraft.io](https://github.com/canonical-websites/snapcraft.io) | [build.snapcraft.io](https://github.com/canonical-websites/build.snapcraft.io) |
| [cn.ubuntu.com](https://github.com/canonical-websites/cn.ubuntu.com) | [jp.ubuntu.com](https://github.com/canonical-websites/jp.ubuntu.com) | [conjure-up.io](https://github.com/canonical-websites/conjure-up.io) |
| [docs.ubuntu.com](https://github.com/canonical-websites/docs.ubuntu.com) | [tutorials.ubuntu.com](https://github.com/canonical-websites/tutorials.ubuntu.com) | [cloud-init.io](https://github.com/canonical-websites/conjure-up.io) |
| [assets.ubuntu.com](https://github.com/canonical-websites/assets.ubuntu.com) | [manager.assets.ubuntu.com](https://github.com/canonical-websites/manager.assets.ubuntu.com) | [vanillaframework.io](https://github.com/canonical-websites/vanillaframework.io) |

We’ve tried to make it as easy as possible to get them up and running, with accurate and simple [README files](https://github.com/canonical-websites/www.ubuntu.com/blob/master/README.md). Each of our projects can be run in much the same way, and should work the same across Linux and macOs systems. I’ll elaborate more on how we manage this in a future post.

We also have many supporting projects – [Django modules](https://github.com/canonical-webteam/canonicalwebteam.versioned-static "Versioned-static: A plugin for adding cache-busting strings to static file URLs"), [snap packages](https://github.com/canonical-webteam/documentation-builder "Documentation-builder: A tool for building markdown documentation into HTML pages"), [Docker images](https://github.com/canonical-webteam/docker-django "canonicalwebteam/django Docker image") etc. – which are all openly available in our [canonical-webteam organisation](https://github.com/canonical-webteam "canonical-webteam GitHub organisation: Our supporting projects").

## Reaping the benefits

Opening up our sites in this way means that anyone can help out by making suggestions in [issues](https://github.com/ubuntudesign/www.ubuntu.com/issues/new) or directly submitting fixes as [pull requests](https://help.github.com/articles/creating-a-pull-request/). Both are hugely valuable to our team.

Another significant benefit of opening up our code is that it’s actually much easier to manage:

* It’s trivial to connect third party services, like [Travis](https://travis-ci.org/ "Travis: A continuous integration service"), [Waffle](https://waffle.io/ "Waffle: A kanban board for your GitHub issues") or [Percy](https://percy.io/);
* Similarly, our own systems – such as our [Jenkins](https://jenkins.io/ "Jenkins: An automation server") server – don’t need special permissions to access the code;
* And we don’t need to worry about carefully managing user permissions for read access inside the organisation.

All of these tasks were previously surprisingly time-consuming.

## Designing in the open

Shortly after we opened up the [www.ubuntu.com](https://www.ubuntu.com "The official Ubuntu website") codebase, the design team also started designing in the open, as [Anthony Dillon recently explained](https://design.canonical.com/2017/04/designing-in-the-open/ "Design blog: Designing in the open").

[Get in touch

Interested in running Ubuntu in your organization?](https://ubuntu.com/about/contact-us/form)

## Sign up for our newsletter

Get the latest Canonical news and updates in your inbox.

Work email:

\*I agree to receive information about Canonical's
products and services.

By submitting this form, I confirm that I have read and agree to [Canonical's Privacy Policy](https://canonical.com/legal/dataprivacy).

Sign up

## Share on

---

## Related posts

[### Challenges designers face in open source (and how to fix them)](https://canonical.com/blog/challenges-designers-face-in-open-source-and-how-to-fix-them)

Open source powers up to 90% of modern software, yet many projects lack usability. Canonical’s Design team surveyed 115 cross-functional professionals to uncover the 4 core...

[Kola Ojoodide](https://canonical.com/blog/author/kola-ojoodide)

26 June 2026

[### Why web engineering is great](https://canonical.com/blog/why-web-engineering-is-great)

Hi, I’m Johann! I’m an engineering manager in Canonical’s web team. For the larger part of my 15 years of work experience as engineer, I’ve been working in web development....

[Johann Wolf](https://canonical.com/blog/author/johannwolf)

27 April 2026

[### Canonical’s recipe for High Performance Computing](https://canonical.com/blog/canonicals-recipe-for-high-performance-computing)

In essence, High Performance Computing (HPC) is quite simple. Speed and scale. In practice, the concept is quite complex and hard to achieve. It is not dissimilar to what...

[Igor Ljubuncic](https://canonical.com/blog/author/igorljubuncic)

24 January 2024

[### Web team – hack week 2023](https://canonical.com/blog/web-team-hack-week-2023)

Today, around 96% of software projects utilize open source in some way. The web team here at Canonical is passionate about Open source. We lead with an open-by-default approach...

[Anthony Dillon](https://canonical.com/blog/author/ya-bo-ng)

25 October 2023
