[Créa perso] Moments.yt - J'ai fait un site..
Qui permet de couper et partager des extraits YouTube. Mais c'est pas des GIFs.
Et ça s'appelle Moments, parce que pourquoi pas.
C'est ici que ça se passe : https://moments.yt
J'aimerais beaucoup vos feedbacks, suggestions et questions.
Pour les curieux, le stack est le suivant: NodeJS (avec le framework ExpressJS), PostgreSQL (grâce à SequelizeJS) & AngularJS. Et ça tourne sur un dyno Heroku, simplement.
Mais aussi : ça utilise l'API du Player YouTube pour pouvoir faire looper le moment. Ainsi que l'API Data YouTube pour récupérer les informations nécessaires concernant les videos, chaines etc. Aussi un peu de Mixpanel pour comprendre le comportement des utilisateurs. Et AWS S3 pour stocker les miniatures des moments.
Voilà voilà.
La bise.
EDIT: Vous pouvez poster sans être enregistré-e mais le moment ne sera pas public et disparaîtra après un certain temps.
PS: Merci Ptilait, je t'aime
Pour un casse-couille je n'ai rien à dire de négatif,vraiment rien.
Bien joué à toi Kevin,je trouve ça très cool et je pense que si j'avais des amis je leur en parlerais
Ajouté aux favoris.
Ce qui serait sympa ce serait de pouvoir intégrer la vidéo en commentaire mais je sais pas si ça dépend de ton site ou d'ici.
@Amumu: Ca dépend d'ici. Attend j'essaie : https://moments.yt/moment/W7GR8poR93X-petit-cul.
EDIT: je sais pas non plus si ça fonctionne en postant une box. Faudra essayer. En tout cas sur Twitter & Facebook ça marche. J'ai juste pas encore réussi à faire le lecteur intégré au post FB/TW pour je ne sais quelle raison ..
@FunkyNoob: Ça dit "Ceci n'est pas une url avec "affichage enrichi"" quand on essaie de le rentrer dans le champs "url"
edit: j'viens de tester pour une box ça affiche pas le player simplement un aperçu comme pour le lien d'un article
ps: ptilait pointfag
@Amumu: Oui. Car pour je ne sais quelle raison quand je met le player (https://moments.yt/embed/vJkpq6nqVnz) dans mes metas pour Twitter et Facebook, ça ne marche plus du tout.
Du coup je préfère laisser la miniature le temps de trouver une solution.
Peut être faut-il que je DL l'extrait en MP4 pour le foutre sur le player. Parce que pour l'instant c'est juste un script qui dit au Player YouTube de jouer "à partir de" et "jusqu'à".
@FunkyNoob: Y'a un truc comme ça sur le site Genius je sais pas comment ça marche mais c'est très bien foutu
@FunkyNoob: J'arrive pas à trouver une annotation où ça y est, en gros sur Genius dans certaines annotations y'a un extrait vidéo et le player se "déclenche" sur la période sélectionnée. Et en plus ça reste le player youtube si je me souviens bien.
J'ai une question pourquoi PostgreSQL ? J'ai manipuler plusieurs structure de base de données , et PostgreSQL est celle dont je suis le moins fan personnellement .
Je voulais juste savoir pourquoi ce choix et en quoi la rend elle mieux qu'un autre sur ce type de dev ?
@Hobito: Honnête réponse : aucune idée. Je ne suis pas trop database, j'ai juste un pote qui m'a dit que c'était cool. D'habitude j'utilise MySQL. Mais concrètement à mon niveau là je ne vois pas la différence entre les deux.
@Hobito: Toutes les grosses archi abandonnent MySQL pour Postgre, pourquoi ? Parce que MySQL c'est la merde à optimiser pour de gros volumes de données / gros trafic. Et de manière général Postgre est meilleur en terme de perf, vitesse, scalabilité etc.
De mon expérience, je ne vois plus aucun intérêt d'être sur MySQL à part pour profiter de sa très grande communauté.
@Najie: Après études et renseignement auprès de SGDB , PostGres est bien pour une lecture rapide de BDD , cependant il est plus lent que Mysql en terme d'écriture en BDD .
Si tu as besoin de lire de gros jeu de donnée et de les traitées rapidement il est préférable de prendre PostGres , mais Si tu as un jeu titanesque de donnée , passer sur SQL serv , Oracle est une sage décision également .
Commentaire supprimé.
@PtitPapier: Aucune idée. C'est la seule chose que je stock, même les moments ne sont pas téléchargé. Mais je pense pas que j'enfreins une loi en prenant un screen d'une vidéo YouTube.
@PtitPapier: Je sais bien, mais je ne vais pas mettre mon adresse pour un petit projet. Tout comme je pense que personne va venir m’embêter pour ce genre de choses, vue l'impact négligeable qu'à le site sur le monde.
@sooN: Ouais mais y'en a que 5. Alors que moi je prend la miniature à la seconde précise où le moment commence. Si YouTube a un problème, il sait où me contacter :p
GG pour le site, il est classe et bien foutu, une belle idée.
Pense à minify ton app.js et virer les sourceMaps qui ne servent pas en prod.
Enfin, je te conseillerai une petite recherche basée sur les tags des vidéos youtube ou sur des tags custom.
@FunkyNoob: ah, et pense à une page 404, la page est vide quand on met n'importe quoi dans l'URL :p
@FunkyNoob: petite typo sur la page quand un user n'existe pas, /profile/foobar, mais ça pourra être réglé avec la même page 404 que proposée dans mon précédent com à la rigueur.
@FunkyNoob: et pour finir, par expérience je te conseille de vérifier aussi le slug du moment en plus de son ID dans l'URL. On peut référencer ce qu'on veut du coup : https://moments.yt/moment/N2bBG9bZeVJ-marine-lepen-sextape-hard-interracial
@Divi: C'est fait pour 404. Concernant le slug, tu penses que je devrais montrer une page 404 ou juste rediriger vers le bon slug ?
@FunkyNoob: 404 est une meilleure idée je pense car Google pourra penser que le document existe mais a été renommé donc peut possiblement récupérer les anciennes infos en plus des nouvelles. Mais ce n'est que mon opinion :)
Le principe est bien cool ! Seul petit reproche (que je vais essayer d'expliquer) c'est quand tu navigues assez "bas" dans les vidéos (en gros tu clique 5 ou 6 fois sur le load more) et que tu choisis une vidéo. Quand tu fais un retour page précédente, t'es obligé de tout te retaper pour continuer la nav. Du coup c'est un peu chiant. Dans le même ordre d'idée, c'est dommage de ne pas avoir un bouton pour avoir la vidéo suivante / précédente dans la liste qui faciliterait la nav entre chaque vidéo (car en dehors des 3 du top, on est obligé de revenir sur la page d'accueil pour en voir d'autres)
@FunkyNoob: une solution serait de faire du pushState en JS pour pouvoir faire précédent et ton backend récupère les vidéos à partir de l'offset dans l'URL (et non toutes les vidéos avant).
Ben c'est marrant, c'est simple et rapide.
Donc mes suggestions .
Je suggère un outils plus précis pour sélectionner le start time.
(c'est bon je viens de voir la technique des flèches)
Et un compteur de vue plus adapté, ici chaque clic et refresh donne une vue.
C'est grave cool hein, mais tu sais que ça te prendrais très peu de temps de nous coder un add on de black list sur cb?
@FunkyNoob: En gros je te demande gentiment de nous coder un ptit script pour pouvoir blacklist des membres sur choualbox (pas bien dur en JS, tu peux te baser sur le fonctionnement de l'ancien chouaddon qui ne marche plus)
@FunkyNoob: parceque t'es un chic type?
parceque tu veux plus voir ni mes boxs, ni mes commentaires?
parceque tu veux plus voir ceux de papangue?
ou encore parceque tu veux une box à 200 points et la reconnaissance de centaines de chouals?
@J100591: Ah mais tu parles d'un script en dehors de Moments mais un script pour choualbox !
Ouais pourquoi pas. Mais j'ai jamais fait d'addon, donc faut voir
@FunkyNoob: ouiiiii
j'avais jeter un oeil à l'ancien addon, ca a pas l'air trop dur, c'est en js
je crois qu'en gros, dans le code html, les balises des boxs et des commentaires sont facilement identifiables (par leur class ou leur id je crois), après t'as plus qu'à check le pseudo associé et à remplacer tout ce qui est dans cette balise par du vide
enfin dans les grandes lignes, je sais pas coder en js donc je veux pas trop m'avancer
@FunkyNoob: il fonctionne plus depuis la dernière grosse maj, après peut être qu'il peut être mis à jour facilement, j'en sais rien du tout..
Franchement sympas ton site !
Juste pour infos, Firefox dis que ton site n'est pas totalement sécurisé. Tu as des liens en HTTP :
http://changelog.moments.yt/ (2 endroits)
http://changelog.moments.yt/you-can-now-order-moments-on-the-homepage-18647
Tu n'a pas de Github ?
J'ai pas lu tous les commentaires, mais j'ai des idées d'améliorations.
Déjà j'espère que t'as un chron qui vérifie la disponibilité des vidéos et les retire si non dispo ( https://moments.yt/moment/gk5WZ1QZ8lY-oui-monsieur ).
Préchargé les vidéos (je sais pas si c'est possible).
J'ai mis longtemps avant de voir le bouton "Load more" en bas. Il est très très peu visible pour un call to action.
Il serait cool de virer le curseur de la souris de la vidéo.
@EasyPHP: J'ai des workers mais pas pour ça. J'y avais pas penser. Je vais faire ça ce soir tien. Sinon pour pre-load les videos, cest tendu avec le player YouTube. Je suis tenté de télécharger le clip directement et virer le player YouTube. Mais j'ai peur d'utiliser ffmpeg et tout ça et gérer le stream en plusieurs qualités.
Quoi d'autres ? =]
@FunkyNoob: Ben c'était tout.
A la limite comme pour le type de sélection, on pourrait choisir pour la journée/semaine/mois/année/tousLesTemps.
https://image.prntscr.com/image/ZlCJlKmPQY_4UFkNgViBGQ.png
Et faire une traduction française fdp va.
Vraiment sympa !
Juste deux remarques / questions:
- Pourquoi ne pas faire un "infinite scroll" à la place d'un bouton "load more" ?
- C'est voulu de ne pas pouvoir naviguer dans le player d'un moment ? (et à chaque pause / reprise, je retourne au début de la vidéo)
@grems: une fois que t'as le slider sélectionné tu peux utiliser tes flêches du clavier pour être plus précis.
Tu ne dois accéder à ce site que si tu as au moins 18 ans ou si tu as l'âge légal pour visionner ce type de matériel dans ta juridiction locale, l’âge le plus élevé étant retenu. En outre, tu déclares et garantis que tu ne permettras aucun mineur à d'accéder à ce site ou à ces services.
En accédant à ce site, tu acceptes nos conditions d'utilisation.