/posts › Faircamp 0.18.0
21 Oct 2024

Faircamp 0.18.0

Faircamp 0.18.0 is out, and here's a post with all the updates! In addition, if you're curious about what the next weeks will hold for Faircamp, make sure to read all the way to the end!

Embeds unlocked

As its highlight addition, this release finally brings a complete implementation of the embeddable release and track players!

Given that embeds can appear in any number of contexts - all very different in their intention, layout and design - this first iteration of embeds is based simply around the established layout of the new docked player: It offers the very essential things (playing, pausing, seeking, volume control, artist/title/time) and does not venture beyond this, yet. The idea here is to make embeds available for everyone to play with early on, and to let future feedback slowly shape and mold the process of expanding embeds into their final form(s) and featureset.

Screenshot of the release and track embed widgets

If you play with these embeds, feel warmly invited to send me links to where they're used, to publicly share your observations, to express what features and customizations would make sense for you to have in the future.

Customizing the first track to play on a release page

As a (for the time being) experimental goodie, this release adds a mechanism for annotating links to your release(s) with a custom parameter that determines which track will be played when a visitor presses the "Listen" button.

For example if your release's url is https://example.com/release/, you can simply add ?2 to it to make it play the second track first. Likewise, with the url https://example.com/release/?3 the third track would be played first, and so on.

Thank you to Deborah Pickett for suggesting this, and to all of you, let me know if and how you use this, this will inform possible further considerations around this experiment!

External links

For any buttons and links that facilitate internal navigation on a faircamp site, Faircamp always leaves it to the visitor's preferences whether these are opened in the same, or a new, tab.

For external links however, Faircamp now automatically transforms your markdown-based links (both of the form [example](https://example.com) and <https://example.com>) in both catalog and release texts to hint the browser at opening them in a new tab. Note that this is done with an actual check against your own base_url, so if you place manual links pointing to your own faircamp page, these will still be recognized and treated as internal navigation!

I'd like to thank Christian Pacaud here, who has provided great and very thoughtful input on this, and also generally has been an excellent supporter of the project since a long while already - thank you!

Viewing faircamp sites directly from disk

Sometime in the last months a tiny but consequential commit landed, changing the JavaScript inclusion mechanism on faircamp sites to use the ESM (ECMAScript modules) system. While this brings generally favorable changes to how JavaScript can be used in the browser, and is generally considered the future (TM) of things, it had the (actually unintended) effect of making it impossible to view (or better: actually use) faircamp sites directly from one's local computer disk.

Being able to view and use faircamp sites entirely offline, directly from disk, is an awesome feature, so this change has been reverted and this functionality should be restored again. As there is subtle error potential connected to non-ESM JavaScript in the browser, glitches might occur as a consequence (Apple's Safari has been known to exhibit some of that for instance). If you experience any of it, please do report it.

Miscellaneous changes

Some critical corrections happened in this release as well: The new Listen/Pause button's label is now dynamically translated at runtime, accidental linking to non-existent download/purchase/unlock subpages on track pages has been fixed, paragraph width was corrected on artist pages, and links in the RSS feed who previously did not follow the --no-clean-urls setting now do!

These fixes happened thanks to the diligent reporting by DURAD and session, as well as Tommaso Croce, who also contributed refinements to his italian translations, also included in this release - thank you so much everyone!

Towards an exciting end of the year

As you might have already read, all of this work, which will ultimately culminate in the release of Faircamp 1.0 in just a few weeks from now, is made possible through a project grant from the NLnet Foundation, itself funded through the European Commission's Next Generation Internet initiative.

While most major work packages on the agenda have already found their way into the recent Faircamp releases by now, the upcoming weeks will still hold a lot of excitement for the project, and there is a lot to look forward to still:

In addition to the financial support I get through the grant, I am also working together with fantastic supporters directly at NLnet and at the various partner organizations in the NGI0 coalition. The next weeks therefore will be packed with collaboration on faircamp around matters of accessibility, security and localization. In addition to that I'm diligently evaluating all the amazing feedback I've been getting from the community in the wake of the latest releases and am carefully crafting updates - most centering around the interface - that will follow up with many of the thoughts and ideas that were brought up by all of you.

This is all for now! Thank you for reading all the way, and stay tuned for the next release, it won't be long.