Nul scripts van derden
Geen advertentienetwerken, geen analyse-SDK's, geen sessieopnames, geen tagbeheerders. Hebben we ooit gebruikscijfers nodig, dan komen die uit serverlogs zonder persoonsgegevens.
Een klein hulpmiddel met een smal doel, gebouwd omdat elke andere gratis optie in deze categorie slechter was dan nodig.
SpotiDown begon in 2024 uit gewone ergernis. Elke gratis Spotify-downloader die we probeerden deed dezelfde drie dingen verkeerd. Bestanden kwamen binnen zonder tags en zonder hoes, waardoor een bibliotheek veranderde in een map vol onbekende artiesten. De knop voor bulkdownloads zat achter een betaalmuur, wat betekende dat juist de enige functie die er bij een afspeellijst toe doet de betaalde functie was. En de pagina's zelf waren traag, volgestouwd met advertenties en bezaaid met nepdownloadknoppen.
Geen daarvan is een moeilijk probleem. De openbare metadata van Spotify lezen en in een bestand schrijven is een opgelost vraagstuk. Een ZIP aanbieden is een opgelost vraagstuk. Geen elf advertentienetwerken laden is een beslissing, geen technische uitdaging. Het gat tussen wat deze hulpmiddelen konden zijn en wat ze waren leek ons het dichten waard.
Dit zijn eerder beperkingen dan functies. Het is waar we nee tegen zeggen.
Geen advertentienetwerken, geen analyse-SDK's, geen sessieopnames, geen tagbeheerders. Hebben we ooit gebruikscijfers nodig, dan komen die uit serverlogs zonder persoonsgegevens.
Bulkdownloads, ZIP-uitvoer en verliesvrije formaten zijn de reden dat mensen hier komen. Daar geld voor vragen zou dit hulpmiddel slechter maken dan de hulpmiddelen die we wilden verbeteren.
Niets om je voor aan te melden betekent niets dat kan uitlekken. Er is hier geen gebruikerstabel, want er zijn geen gebruikers, alleen bezoekers.
Een download die ongetagd binnenkomt is half werk. Elk bestand krijgt volledige tags en een hoes, op elke pagina en in elk formaat.
Alle 21 talen krijgen de volledige inhoud, correct van hreflang voorzien, in plaats van een vertaalde menubalk boven een Engelse tekst.
Het wijzigingslogboek op de startpagina staat er zodat je kunt zien of hier nog iemand aan werkt. Hulpmiddelen in deze categorie verrotten snel zodra niemand dat doet.
We hebben op geen enkele manier banden met Spotify AB, en niets hier is door hen goedgekeurd. Spotify is hun handelsmerk en we gebruiken de naam alleen om te beschrijven waarmee dit hulpmiddel werkt.
We zijn geen muziekbibliotheek. Hier wordt niets gehost, opgeslagen of geïndexeerd. Er is geen catalogus om door te bladeren, geen zoekfunctie voor nummers en geen archief van wat dan ook dat iemand ooit heeft omgezet. Bestanden bestaan op onze servers voor de duur van één taak en worden daarna verwijderd.
We zijn niet neutraal over hoe dit wordt gebruikt. Een privékopie willen is een redelijke wens. Verder verspreiden is dat niet, en de servicevoorwaarden zeggen dat rechtstreeks.
Elke pagina op deze site is vooraf gegenereerde statische HTML. Er is geen framework dat op de achtergrond tot leven komt, geen router in de browser en geen rendering tijdens het laden. Daarom komen pagina's snel binnen op een trage verbinding, en het is een groot deel van de reden dat de site goedkoop genoeg is om zonder advertenties te draaien.
De enige JavaScript die wordt verstuurd is een klein bestand dat de themawissel, de menu's en de omzetter zelf afhandelt. Het heeft geen afhankelijkheden. Het stijlblad is met de hand geschreven in plaats van gegenereerd uit een utility-framework, waardoor het klein genoeg blijft om het kritieke deel in de pagina in te bedden.
De omzetdienst draait los van de website. Hij ontvangt een Spotify-identificatie, haalt de metadata op, produceert de audio, schrijft de tags en geeft een downloadadres terug dat verloopt. Hij houdt geen blijvende opslag van taken bij.
Foutmeldingen, kapotte links, vertaalcorrecties en meldingen van rechthebbenden lopen allemaal via de contactpagina. Vertaalcorrecties zijn bijzonder welkom. Eenentwintig talen is een groot oppervlak, en dat een moedertaalspreker een houterige zin opmerkt is meer waard dan welke interne controle ook.