NetflixAddicts
Open Source

NetflixAddicts

Een Discord-community voor Netflix-kijkers, bediend door een TypeScript-bot die show-opzoekingen deed vanuit een catalogus die de leden zelf bleven aanvullen, daarnaast een Bootstrap-showcase site en een kortlevende Go API.

Startdatum

April 2019

Status

Gearchiveerd

Team

3 leden

Over het project

NetflixAddicts begon als een Discord-server voor mensen die veel series kijken, en groeide uit tot een bot die daarbij hoorde. De ency-opdracht zocht in een catalogus van shows op titel of genre en gaf gepagineerde embeds terug, terwijl een suggest-opdracht leden liet voorstellen wat er nog ontbrak. De catalogus was nooit ergens van gekopieerd: het was gewoon wat de community had toegevoegd. Rond de bot kwam de gebruikelijke community-infrastructuur: privé spraakkanalen die op aanvraag werden aangemaakt en verwijderd zodra ze leeg waren, audioweergave, aanwezigheidbeheer en een Twitter-koppeling voor aankondigingen. De bot was geschreven in TypeScript op discord.js en gepubliceerd onder Apache 2.0. Een showcase-site werd tegelijkertijd ontworpen. De startpagina was opgezet, de encyclopediepagina kwam nooit verder dan een wireframe, en het geheel bleef een prototype. Een Go API werd gestart om het te ondersteunen maar werd drie dagen later weer verlaten. Twee herschrijvingen waren gepland maar nooit geschreven: een client/server-splitsing eind 2020, en een Next.js front eind 2021. Beide repositories bevatten nog niets anders dan een README. De zes repositories zijn gearchiveerd, en het project staat als een herinnering dat een community langer kan meegaan dan de software die voor haar is geschreven.

Impact en metrics

11

Bot-opdrachten

Van encyclopedie-opzoekingen tot kanaalbeheer

6

Repositories

Bot, site, ontwerp, API en twee herschrijvingen

2 jaar

Levensduur

Van de eerste community tot de laatste gearchiveerde repository

Belangrijkste functies

Show-encyclopedie

Zoek op titel of genre vanuit Discord, met gepagineerde resultaten weergegeven als embeds

Community-geproduceerde catalogus

Leden stelden de shows voor die ontbraken, zodat de catalogus meegroeide met de server

Privé spraakkanalen

Kanalen die op aanvraag voor een groep werden aangemaakt en verwijderd zodra iedereen weg was

Audioweergave

Weergave in spraakkanalen geregeld via ffmpeg, met join- en leave-opdrachten

Showcase-site

Een startpagina en een lay-out voor de encyclopedie, ontworpen en geprototypeerd maar nooit afgemaakt

Gebruikte technologieën

TypeScript

Bot bron, getypt van begin tot eind

discord.js

Discord-client, opdracht parsing en gepagineerde embeds

Go

Korte levensduur van een API-poging

Bootstrap

Lay-out voor de showcase-site

Het team

Jérémy Baudrin

Jérémy Baudrin

Lead Developer

Lucas Bodin

Lucas Bodin

Designer

Ralph

Product Manager

Ontmoette uitdagingen

  • Een catalogus presenteren in Discord, waar de enige beschikbare lay-out een gepagineerde embed is

  • Een catalogus nuttig houden wanneer de inhoud geheel afhankelijk is van bijdragen van leden

  • Spraakkanalen creëren en vernietigen zonder lege kamers achter te laten

  • Zes repositories voor één project, met de bot, de site, het ontwerp en de API allemaal apart

Belangrijkste lessen

  • De bot werd dagelijks gebruikt, de website werd nooit gelanceerd: de ruimte waar mensen al gebruik van maken wint

  • De Discord-server had de waarde, de software was slechts één manier om deze te bieden

  • Twee herschrijvingen werden gestart vanuit een lege repository en geen daarvan werd afgemaakt

  • Een community bouwen rond het merk van iemand anders beperkt hoe ver het project kan gaan

Toekomstperspectieven

Alle zes repositories zijn gearchiveerd en alleen-lezen.

Geïnteresseerd in dit project?

Ontdek hoe we je kunnen helpen om een vergelijkbaar project te creëren.