New website for Pepper&Carrot

Published on

After a big month of hard work, I'm happy to release today a new website for my webcomic Pepper&Carrot! It was a rewrite from scratch this time.

New features

The website is now faster than the previous website and has many new features :

I also simplified the layout for more visual and less text, and added date, numbers of comments, recent blog-post; all this little plus that add life to the website (this infos are extracted from my blog).

I hope this new website will provide you comfort into reading the future episodes, and good time browsing the artworks, sketches and wallpapers.

Why a rewrite

With over 11 Millions readers in 2021 (from January to July) reading Pepper&Carrot website, there is no doubt about why it is important to get a good website. Thank you for that big numbers: it's amazing! Pepper&Carrot continues to grow slowly, without any marketing, adv, sponsored recommendation or manipulation of algorithms. It's amazing to know it is still possible to get a popular website in a world where the dominant social medias now decides for us what we should read and see and keep readers the longer they can on their platform. I know I owe that to many of you who still use Rss and social medias unfiltered like the one on the Fediverse. Again, thank you.

But this huge traffic also revealed the fragility of the previous website over the last 7 years: continuous piracy attacks (fortunately, nothing to steal; no user profile/account on, random bugs, sudden switch of the default language for no reason during month, weekly warning of resources overload.

So, right after the release of episode 35 in june, I decided to allocate a couple of days to fix the most urgent problems on the website. But I quickly realised many of the problems where linked to its core structure. So, I decided to create a new repo, I added a white page and started the rewrite from scratch because previous website really was falling appart. I wasn't happy to start this big rewrite. I knew the huge time investment necessary for that, but I had no other choice if I wanted to continue Pepper&Carrot. You can see the first commit here.

The new website use nothing fancy under the hood: technologies that have been around for the last 20 years: PHP, HTML and CSS. I excluded JS, I also didn't wanted to base it on a CMS this time or complex frameworks. They would all explodes at the requirement of Pepper&Carrot website anyway. I also rewrote external big libraries I was using; like the library for caching image, resizing thumbnails, etc... I wanted only things I could read, understand and fix myself.

During the rewrite, I also implemented all the wishes and fixed all the issues reported on the previous website... It was a long journey!

I now miss so much my stylus, brushes and pencils.

Big numbers

  • 11 Millions readers in 2021 (from January to July)
  • 14,419,561 readers in 2020 ;-)
  • 98GB of data
  • 34,326 JPEG files
  • 22,270 Inkscape SVG files
  • 14,659 PNG
  • 9,329 HTML
  • 1,665 Krita KRA files
  • 1,348 JSON databases
  • 794 Markdown MD files
  • 502 ZIP files
  • 57 languages

Huge maintenance

I also made a lot of file maintenance. This time it was mainly about the convertion of Krita 2.x/3.x (ODG vector based) to Krita 4.x/5.x (now SVG layer based). Future Krita 5.x doesn't know how to read ODG vector based layers and return an empty layer. In short: all my episodes before 2018 would lose their panels without this convertion once Krita 5 open them.

I unfortunately had to do the convertion manually; so I opened them one by one, making a selection to mark the file changed, deselect it, then save, then close.... and repeat by the number of Krita files available... It took full afternoons of hypnotic work. I have similar stories with the 34K jpg and 22K SVG of course. I'm not blaming the design and developers of this files; I know this change are healthy for their projects and agree on them. I even want to thanks the developers because so far, I always found a way to port these files to new versions without data loss. Even if it involves manual work, there is always a way with Free/Libre and Open-Source software. That something I don't remember being possible with many proprietary software in my carreer before 2010.

But yep, it is normal I have maintenance issues with serving so many files. The huge numbers are the problem. Something I learnt on Pepper&Carrot: exponential growth means exponential time required for maintenance.

Translators: I need help!

Unfortunately, you'll notice an obvious regression on this new website: I couldn't port the 33 previous translations.

I took advantage of the rewrite from scratch to switch to a new system. The website uses now Gettext Po files (it was requested many time over the last 7 years to ease the work of translation). Unfortunately, I couldn't auto-convert the big PHP array from the old system to the new Po system. I tried, but the result was sketchy and only 5% of the string survived... with mistakes.

I added instruction for translation here and I promise this major change is done for a good reason, and a "once each 7 years". If you want to translate, thanks for your help!

Bug and feedback

Let me know on the bug report of the website repository if you found an issue. You can also use this report for discussions, wishes and feedback.

Have a good visit :-)

License: "New website for Pepper&Carrot" by David Revoy − CC-BY 4.0
Tags:  #maintainance  #website  #lab   | Download: Markdown