Faircamp 1.0
As they say: Rien ne va plus – Faircamp 1.0 is out!
This concludes 6 months 100% dedicated to Faircamp, made possible with the amazing support, funding and expertise of the NGI0 programme and coalition, led by the NLnet foundation and financed by the European Commission's Next Generation Internet initiative – thank you so much for giving me, and in turn everyone benefitting from a better Faircamp, this incredible opportunity!
In about 333 commits Faircamp has been taken from a very capable beta to a full-fledged major release - to recap the developments:
- A new cache system was implemented
- The embed feature was completed
- Stand alone track pages were added
- The browse/search feature was introduced
- M3U playlists were implemented
- The docked player was introduced, with it volume control
- Full support for RTL languages was implemented
- Accessibility has been improved in many major (and minor) ways
- Track lists were completely redesigned
- Theming was completely overhauled, based on the new OKLCH color model
- Usability without JavaScript was wrapped up and polished
- A translation contribution website was created and published
- Tag handling was greatly extended, including embedded release cover support
- A fully automated Windows installer was created and published
- And, thanks to the community and volunteers, Faircamp has been translated into eight more languages
That covered, now we look into the present - what does the final major release milestone bring?
New in the 1.0 release
This release brings major changes to the catalog and manifests - from now on
a faircamp site is configured with three types of dedicated manifest files:
artist.eno
, catalog.eno
and release.eno
. You can learn all about it in
the migration video guide
or simply by running Faircamp 1.0 in your catalog and following the messages
that instruct the changes that need to be made.
Alongside these foundational changes, terminal usability has been greatly improved:
Error messages now display snippets from the files where errors occur, showing
also the surrounding lines as context, and they print profoundly more useful
information, such as listing all available options when an unrecognized option has
been encountered. Furthermore builds are now aborted when errors are encountered
in order to avoid useless computation, this can intentionally be overriden with
the new --ignore-errors
flag too.
Label site operators can now link featured artists to external pages using
the new external_page
option, and the new artist
shortcut definitions
allow quick declarations for multiple artists without having to resort to
full-fledged artist directories and artist.eno
manifests.
On the layout side, a new responsive footer element has been introduced, featuring a much more compact faircamp signature which now also can be disabled in the manifests. Speaking of compact, the overall page layouts have been further compacted, bringing more of the site above the fold, while still making use of adaptive breathing space when there is less content.
M3U Playlists are now opt-in, and the default track numbering style was changed
from arabic-padded
(01
, 02
, 03
) to arabic-dotted
(1.
, 2.
, 3.
).
Documentation to be excited about
Lastly, concluding the final work package in the NGI0 project grant, new documentation resources are published and officially announced with Faircamp 1.0:
The website was completely redesigned over the last weeks, featuring a much more comprehensive feature overview, easier access to documentation, resources and featured faircamp sites, and of course a fresh new look!
The brand-new tutorial (prominently accessible on the top-right of the website) provides a beginner-friendly step-by-step guide to Faircamp for all platforms, even featuring short video instructions for each of the steps. In addition to the text/video step-by-step tutorial there is also a free-form Getting started video for Faircamp available now, as well as a brand-new video guide for publishing a faircamp site online, directed specifically towards people with no prior experience to publishing websites.
Lastly, a label example was finally added to the manual, as well as hundreds of improvements, edits and additions to the manual content - notably e.g. a quick-jump table of contents for all options on each reference page.
Outro
For this release I'd like to specifically thank bran(...)pos
for having been an amazing release candidate tester, likewise n00q for uncovering
all the best issue rabbit-holes (two major issues could be resolved in this release thanks to that),
Lime Bar for having brought the external_page
feature idea
to the table, as well as Vac for keeping Lithuanian the currently
best maintained language (outside of english/german) in Faircamp. Thank you all so much, also
to everyone else not mentioned but involved in one way or another!
All of you that update to Faircamp 1.0 are warmly invited to reach out to me online for questions, troubleshooting, etc. if there is anything unclear, wrong, uncertain ... I'm around and happy to help!
And that's all, have a great end of the year! – Simon