>_ DevTrendsnl

Taal

Home

Talen

Secties

Frontend Backend Mobiel DevOps AI / ML GameDev Blockchain Embedded Beveiliging
JavaScript

Linklijsten automatiseren: De awesome-zhuiju-free catalogus

GitHub-linkcollecties krijgen meestal te maken met hetzelfde lot. De auteur verzamelt honderd nuttige sites, krijgt een paar duizend sterren, laat de repository na zes maanden vallen, en de helft van de links verandert in 404's. De awesome-zhuiju-free repository lost dit probleem op via technische engineering.

Op het eerste gezicht lijkt dit een catalogus te zijn van Chinese media-bronnen: streamingplatforms, Android TV-spelers, IPTV-afspeellijsten, cloudopslag-zoekmachines en torrent-trackers. Vanuit technisch oogpunt valt het project echter op door de implementatie van linkbeschikbaarheidscontrole en het ontwerp van de datastructuur.

laoma2053/awesome-zhuiju- free | Trendshift

Wat er in de catalogus zit

De projectdatabase bevat ongeveer honderd bronnen, georganiseerd per categorie:

  • kant-en-klare configuraties en interfaces voor TVBox- en CatVod-spelers
  • Inhoudsaggregators voor op Android gebaseerde TV-set-topboxen
  • Open-source spelers en clients zoals Kazumi, Animeko en SeleneTV
  • Links naar openbare IPTV-streams en parsers zoals iptv-org en iptv-api

De catalogusauteurs evalueren elke bron op vier criteria: databas omvang, reactiesnelheid, afwezigheid van opdringerige reclame en domeinstabiliteit. Scores worden opgeslagen in JSON-formaat, waarbij de uiteindelijke beoordeling wordt weergegeven in de readme-tabel.

Automatische linkbeschikbaarheidscontrole via GitHub Actions

Het belangrijkste kenmerk van de repository ligt in de CI/CD-configuratie. In plaats van dode links handmatig te verwijderen, heeft de auteur een pipeline geconfigureerd met behulp van GitHub Actions.

Scripts worden uitgevoerd volgens een schema elke ochtend om 09:00 Pekingse tijd, evenals bij elke commit met nieuwe gegevens. Het proces werkt als volgt:

  1. De linkdatabase wordt opgeslagen in een apart bestand resources/resources.json.
  2. De Action triggert dataschemavalidatie validate-data.yml.
  3. De worker check-availability.yml pingt elke site en registreert de responscode.
  4. Resultaten worden naar het rapport geschreven reports/availability.json.
  5. Het script werkt dynamisch statussen bij in README.md, met markeringen: groen voor operationele sites, geel voor gedeeltelijke beperkingen en rood voor niet-beschikbare sites.

Dit benadering transformeert een statisch markdown-bestand naar een dynamisch statusdashboard.

Star History Chart

Repobeats

Architectuur voor gegevensopslag

Elke vermelding in de database wordt weergegeven als een gestructureerd JSON-object. Hier is een voorbeeld van de tracking-structuur:

{
  "id": "kazumi",
  "name": "Kazumi",
  "url": "https://kazumi.app/download",
  "category": "app",
  "platforms": ["Android", "iOS", "Windows", "macOS", "HarmonyOS"],
  "rating": {
    "volume": 5,
    "speed": 5,
    "cleanliness": 5,
    "stability": 5
  },
  "risk": {
    "copyright": "low",
    "security": "low",
    "privacy": "low"
  }
}

Het scheiden van inhoud in resources.json en visuele presentatie in README.md stroomlijnt de verwerking van pull requests. Gebruikers submit nieuwe sites via standaard GitHub Issues-formulieren (YAML-sjablonen), en de onderhoudscontributor hoeft alleen de regelnaleving te verifiëren en de merge goed te keuren.

Hoe dit project ontwikkelaars ten goede komt

Als je op zoek bent naar kant-en-klare clients voor thuismediacenters of TV-set-topboxen, vind je links naar actuele forks van FongMi TV, TVBox, pansou parsers en Kazumi-spelers.

Als je je eigen repository van nuttige tools onderhoudt (awesome-list), is het de moeite waard om het project te forken voor de automatiseringsstructuur:

  • Kant-en-klare workflow voor dagelijks pingen van externe adressen
  • Tabelgeneratie met controledatums en indicatoren direct in Markdown
  • Invoergegevensvalidatie via GitHub Actions
  • Controlegeschiedenisopslag in JSON-bestanden binnen de repository

De catalogus demonstreert hoe een eenvoudige linklijst een onderhoudbare microservice kan worden met alleen GitHub Actions. Je kunt de workflow-structuur verkennen of Android TV-mediaspelers vinden in de laoma2053/awesome-zhuiju-free repository.

Gerelateerde projecten