CourtBouillon

Authentic people growing open source code with taste

Four Years of CourtBouillon

Do you know what day it is today? It’s October 12, which means that it’s CourtBouillon’s four-year anniversary 🎂! So it’s time to rewind and see what happened during this year.

A New Anniversary

When we started CourtBouillon in 2020 to take care of WeasyPrint and its dependencies, it was important to us to be transparent about our activities and incomes.

So, as each October 12, for CourtBouillon’s anniversary, we prepared a rewind of the year to share with you the main things that happenned and what is coming for the next one!

What Happened This Year?

Many things occured during this year. First, let’s start with some metrics about WeasyPrint and its dependencies. How many issues were closed? How many pull requests were merged? How many releases have been out?

Closed Issues

During the year, 269 issues have been closed. It’s an increase of 35% compared to the previous year.

Merged Pull Requests

63 pull requests have been merged. It’s also an increase compared to last year of… 53%.

Releases

15 versions have been released!

More issues have been closed this year, more pull requests have been merged and a bit less of versions have been released, but with more content.

Also thanks a lot to all the contributors and welcome to the newcomers 💖.

New Features

Among all of these releases, indeed there are some new cool features and improvements:

  • grid support,
  • CSS nesting,
  • var() support,
  • border-image-* properties support,
  • PDF/A-?u support,
  • select fields in forms,
  • Windows executable generation,
  • and other things…

Meeting the community

During the year, we had the opportunity to go to several conferences to give a talk about living from Free Software and meet some of you in real life:

  • JDLL in Lyon,
  • IT Woman by Yeeso meetup in Lyon,
  • Sunny Tech in Montpellier,
  • Volcamp in Clermont-Ferrand.

It was always in French, but we’ll write an article in English, we promise!

We also had the chance to participate in a PrePostPrint event in Strasbourg. It was very nice to discuss about web-to-print usages (and merge some pull requests).

As always, meeting some of you in person is really nice and led to interesting discussions! So if you see us in some events, don’t hesitate to come and say hi 👋!

Sources of Income

And here is the part where we talk about money. Like every year we’re going to provide details on our different sources of income.

We have five main sources of income:

  • templating and styling with HTML/CSS,
  • bug fixes and additional features,
  • consulting,
  • sponsoring and donations on OpenCollective,
  • miscellaneous, which will be detailed.

On the previous anniversary articles, the consulting part was merged with miscellaneous but we thought it makes more sense to separate them.

The main sources are templating, consulting and miscellaneous. Surprisingly, bugs & features is the smallest.

Templating and Styling with HTML/CSS

Creating HTML and CSS for print is one of the services we provide. It’s very useful when you have a nice mock-up for your documents coming from your designer but have some difficulties to transform them into HTML/CSS template (or don’t have time to do it).

During this year, we created several HTML/CSS templates for differents type of documents like analysis reports, bank documents, GDPR related reports, transport and holidays roadmaps…

Bug Fixes and Additional Features

Another service we provide is fixing bugs you encounter and adding new features to make your life easier.

A nice thing about this part is that the bug fixes and the new features you sponsor benefit the whole community. Another nice thing is that the bug fixes and the new features funded by other companies will be useful for you 😉!

As said before, this source of income is the smallest this year. Only grid layout support and page groups have been sponsored.

(Page groups may be a spoiler of the incoming WeasyPrint v63 🤫)

Anyway, thanks a lot to everyone who sponsored features 💜.

Sponsoring and Donations on OpenCollective

When you become a backer or a sponsor on OpenCollective, you greatly help CourtBouillon to maintain its projects in a sustainable way.

The OpenCollective part helps us to do the invisible maintenance work, like answering and sorting GitHub issues, writing articles, improving performance…

Thanks to all the OpenCollective backers and sponsors 💜.

Consulting

This year we decide to get out from the "Miscellaneous" category a part of the work that is actually consulting about WeasyPrint usage and integration with tools and workflows.

Helping people to have a better experience with WeasyPrint is something we love to do.

During the year, we provided consulting and advice about upgrading from an old version of WeasyPrint to a more recent. We also provided guidance on the architecture of an internal documents factory and the creation of a shared HTML/CSS template usable by all users with no need to write CSS themselves.

Miscellaneous

As you can guess, this category contains everything that doesn’t fit in the other categories.

This year, it includes:

  • showcase website development with CRM integration,
  • web applications development with document generation.

What for Next Year?

After this year, what can you expect for the next one?

Consulting Packages

After some (a lot?) of "why don’t you provide consulting packages? It’s just one line to add on your website.", "we’d like to sponsor you, but our company requires a contract and can’t use OpenCollective", or "OK you answered my mails everytime, but I want to be sure to have an answer real quick", we decided to create WeasyPrint consulting packages!

These packages get you a number of topics per month about WeasyPrint usage, configuration or integration that you can discuss with us, by mail or video call.

These packages are designed for companies for which WeasyPrint is critical, and for companies who want to sponsor WeasyPrint but can’t use OpenCollective.

New Features

Now we have a basic solid CSS grid layout support in WeasyPrint, we’d like to improve it and add the missing features.

We also dream of a solid flex support and hope we’ll be able to have dedicated time to work on that as the work to be done is quite huge.

Another topic we’d like to focus on is PDF/UA support. Currently the support is basic and we’d like to have something stronger and make PDF/UA the default PDF format of WeasyPrint.

And More!

Of course, we’ll continue to answer all the GitHub issues you open, all the mails you send us, all the messages you write on our Matrix/Gitter channel.

You can be sure we’re motivated to do our best to get WeasyPrint and its dependencies a shiny future.

Thanks again to all the people who sponsored features and bug fixes, to our nice backers and sponsors, to our lovely clients, to our sweet contributors, to everyone who uses our software and opens issues 💜.

Don’t hesitate to follow us on X (Twitter), Mastodon or LinkedIn to never miss news, to contact us if you’d like from some help or some advice on WeasyPrint, and to support us on OpenCollective!