Code Monkey home page Code Monkey logo

voddownloader's People

Contributors

gitter-badger avatar hermajestydrmona avatar zacny avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

voddownloader's Issues

rezultat skryptu otwiera się w ramce danego materiału zamiast w nowej karcie

kolega @HerMajestyDrMona wpsomniał o tym we wcześniejszym temacie, ja natomiast potwierdzam ze tak sie dzieje... jezeli wejdziemy np. na: https://vod.pl/seriale/przygody-tarzana/fs6qczh#0 klikamy na pobierz video i pojawi si enowa karta z rezultatem... i teraz na tej nowej karcie z rezultatem wpiszemy adres innego materiąlu z vod.pl (chociaz pewnie zadziała to tak samo jakbysmy wpisali player.pl itd. ) to po kliknieciu na pobierz video wyswietli sie rezultata na tej własnie stronie z materialem w ramce u gory storny...

firefox.

Drobne uwagi

Na serialu " komisarz alex " brak info o rozdzielczości danych plików i brak w nazwie który to sezon np tu: https://vod.tvp.pl/video/komisarz-alex,odc-153-bardzo-dlugi-dzien,44083225

a zkolei w rytmie serca : https://www.ipla.tv/wideo/serial/W-rytmie-serca/5011030/Sezon-4/5015702/W-rytmie-serca-Odcinek-52/5446db382e3fbc5344cbda2ec70f42ba?seasonId=5015702 jest info o rozdzielczości ale brak info o sezonie

no i w " o mnie się niemart ": https://vod.tvp.pl/video/o-mnie-sie-nie-martw,odc-3xi,44275051 jest kosmos bo na początek zgadujemy rozdzielczzość ( bo jest samo bitrate ) a po pobraniu, sortujemy i podpisujemy ręcznie bo niby pisze który sezon ale brak numeru odcinka ( to tylko 13 odcinków ).

Na koniec spojrzałem na player,a tu jeszcze inaczej, na warsztat wziełem serial " kryminalni " : https://player.pl/seriale-online/kryminalni-odcinki,6/odcinek-1,S01E01,101
to tak : brak bitrate jest rozdzielczość ale opisana słownie a nie tak jak na ipli cyframi a opis sezonu i odcinka jest tak zaawanowany że trzeba zgadywać.

Ja poprostu chciałbym takich poprawek co dodadzą pełny opis pliku do pobrania jak ujednolicą podpis pliku.

Karta z listą dostępnych materiałów nie działa poprawnie, jeśli zamkniemy poprzednią kartę z materiałem VOD

Problem wykryty na Ipli, ale wydaje mi się, że dotyczy też innych serwisów.
Po kliknięciu "Pobierz" wyświetla się nowa karta z listą dostępnych materiałów (z bitrate, rozdzielczością, itd.).
Jeśli zamkniemy poprzednią kartę z materiałem VOD (tą na której kliknęliśmy Pobierz), to po kliknięciu np. na "OTWÓRZ" - nic się nie dzieje.
Jest to uciążliwe, gdyż kartę zamykamy szybko np. ze względu na denerwującą, zazwyczaj głośniejszą od innych dźwięków reklamę, a nad wyborem bitrate/rozdzielczości możemy się chwilę zastanawiać.
Według mnie warto byłoby przypisywać URL + akcje do tych 3 przycisków już na poziomie tworzenia tej nowej karty.

arte.tv / versionLibelle

proponuje zmienic "versionShortLibelle" na "versionLibelle" lepiej wygląda i daje wiececj do zrozumienia sformułowanie:

    "versionLibelle": "Polski  (napisy) ", 

niż

    "versionShortLibelle": "POL"

albo nawet:

    "versionLibelle": "Musical (oryginał)",

zamiast

    "versionShortLibelle": "MUS"

.actions-row dla stylu

o ile mozna dostosowywac wyglad pod siebie jescze to dokonalbym takiej zmiany:

ustawilbym:

.actions-row {
    width: 20em;
}

co da efekt:
obraz

zamiast:
obraz

wg mnie wyglada to lepiej... estetyczniej

iframe support

If script works in iframe, an invalid url is displayed in error handling. Fix this please.

cda

If html5 player is disabled, script deosn't work on cda page.

Nie udało się odnaleźć źródeł do materiału.

Witam, pobrałem dziś Skrypt umożliwiający pobieranie materiałów ze znanych serwisów VOD. wersja Wersja 6.6.2 jednak przy pobieraniu materiału z player+ a mianowicie https://player.pl/seriale-online/chylka-odcinki,15976/odcinek-4,S02E04,155585 wyskoczył mi błąd taki jak w temacie. Czy jest jakaś szansa na pobieranie takich materiałów z tej strony?

P.S Nie wiem jak to nazwać, ale swego czasu natrafiłem na taką stronę jak polishsource i widziałem, że tam wstawiają takie odcinki na których ja mam błąd pobierania :/ Jeżeli jest jakikolwiek sposób (nawet płatny) to proszę o pomoc.
Pozdrawiam.

Problemy ze ściąganiem

Od 1 października mam problem ze ściąganiem "Faktów" z playera. Sciąga się tylko króciótki plik z komentarzem "Niepowodzenie-Zabroniony". Dotychczas nie było żadnych problemów. Wykonałem pobranie innego programu z playera i było o.k. Proszę o pomoc.

nowy serwis arte.tv

nawiązując do tematu:
https://greasyfork.org/pl/forum/discussion/59205/x

ja ze swojej strony proponuje Arte.tv... wydaje sie do zrobienia, tym bardziej ze pozwoliłem sobie zrobić dla Ciebie @zacny szybki research i znalzałem: https://gorilla.moe/arte.tv-video-downloader-tampermonkey-greasemonkey-script

i to działa...

dodatkowo jescze znalazłem:
https://gist.github.com/mledoze/7119779

wiec mozna uzyskac bez problemu rozwne wersje mp4 i polskie i inne jezyki itd.

przykładowy link:
https://www.arte.tv/pl/videos/079474-057-A/re-zestarzec-sie-w-domu/

edit

dla powyższego adresu... json wyglada tak:
https://api.arte.tv/api/player/v1/config/pl/079474-057-A

dla np. takiego:
https://www.arte.tv/pl/videos/049509-000-A/jharia-kraina-ognia/
json:
https://api.arte.tv/api/player/v1/config/pl/049509-000-A

edit 2

kolejny przykład
https://api.arte.tv/api/player/v1/config/pl/087493-001-A
dla https://www.arte.tv/pl/videos/087493-001-A/pajace-ruggera-leoncavalla/

Warsaw shore na player.pl

Jest jakieś rozwiązanie na brak możliwości ściągania tego reality show z playera.

Wiekszosc rzeczy ściągam bez problemu, a tu nawet poł odcinka nie idzie zagrabić.

Chodzi dokładnie o Warsaw Shore - ekipa z Warszawy ktore jest dostepne na player.pl

error content

If the content of the error contains a url, it should be enable to click.

Problem z pobieraniem z ipla.pl

Witam, mam problem z pobraniem odcinka Przyjaciółek z Ipli. Odcinek był emitowany w Polsacie wczoraj (5 września), więc nie jest on już płatny. Przy próbie pobrania wyświetla się komunikat jak w załączonym pliku.
Problem

Player +

Czy można ściągać odcinki z player +, jeśli tak to podeślę ktoś? Bo słyszałem że idzie takie coś zrobić, mogę nawet zapłacić jakąś symboliczną kwotę za taki ów skrypt

nowa funkcja / autoclose

a co jakby była mozliwośc.... do wyboru, na zasadzie zaznaczenia tak/nie aby mozna było zaznaczyć...

'Automatycznie zamknij karte z materialami po wykonaniu akcji:

  • otwórz
  • kopiuj
  • zapisz
    "

no bo własciwie po co mi karta z materialami kiedy klkine otwórz a i tak otwiera si enowa zakładka i tam juz sobie ogladam....

vod.pl / brak aktywnosci w kategoriach

hej,

https://vod.pl/polskie-komedie-romantyczne/pech-to-nie-grzech-caly-film-online/hch8sm9

kategoria /polskie-komedie-romantyczne/ - zakładam ze to tego wina.

skrypt się nie aktywuje.... dajmy na to taki adres: https://vod.pl/filmy/przytul-mnie-online/k12bk9m

tutaj juz działa.

idac dalej: https://vod.pl/komedie/irlandzki-numer/4de31qg
tu rownież nie działa.

to samo dla filmow 'polskie-komedie'

próbowałem zrobić:
// @include /^https://vod.pl/(komedie|polskie-komedie|polskie-komedie-romantyczne|filmy|programy-onetu|da-vinci|seriale|programy-tv)/.*

ale nie reaguje na taka zmianę... dodatkowo gdy podmieniam własnie na to wyzej
to wtedy tez juz nie reaguje nawet na: https://vod.pl/filmy/przytul-mnie-online/k12bk9m

edit.
dobra, moja nieuwaga, wszystko działa, gdy zamienimy:

{action: VOD.waitOnWrapper, pattern: new RegExp('^https:\/\/vod.pl\/(filmy|programy-onetu|da-vinci|seriale|programy-tv)\/.*')},

na

{action: VOD.waitOnWrapper, pattern: new RegExp('^https:\/\/vod.pl\/(komedie|polskie-komedie|polskie-komedie-romantyczne|filmy|programy-onetu|da-vinci|seriale|programy-tv)\/.*')},

i

// @include /^https://vod.pl/(komedie|polskie-komedie|filmy|programy-onetu|da-vinci|seriale|programy-tv)/.*

na
// @include /^https://vod.pl/(komedie|polskie-komedie|polskie-komedie-romantyczne|filmy|programy-onetu|da-vinci|seriale|programy-tv)/.*

chyba ze sa jescze jakies dodatkowe 'kategorie' nie uwzględnione w skrypcie

pozdrawiam.

edit2.
kolejna kategoria:

  • bajki-dla-dzieci-po-polsku
  • filmy-romantyczne
  • polskie-filmy
  • filmy-i-bajki-dla-dzieci
  • polskie-filmy-na-majowke-taniej
  • filmy-z-dubbingiem

brak mozliwosci pobierania

pomimo zmiany ustawień wtyczki, na ustawienia pobierania API - aby w ogole przycisk pobierania był aktywny, resecie przeglądarki itd. po kliknięciu na pobierz - pojawia sie tylko dymek rozpoczęto pobieranie i cisza... nic wiececj sie nie dzieje.

Firefox 68.0b10 (64 bity)
Tampermonkey 4.9.5941

Wsparcie dla napisów na Ipla.tv

Cześć. Przede wszystkim dziękuję za Twoje napracowanie przy rozszerzeniu - oby tak dalej:)

Chciałbym prosić o wprowadzenie wsparcia dla pobierania napisów z Ipla.tv - napisy są dostępne przykładowo w serialu "Przyjaciółki". Z inspekcji strony w Chrome wynika, że wykorzystywany jest plik z końcówką .vtt.

Nie da się pobierać najnowszych materiałów na player.pl

Witam, od kilku tygodni występuje takie problem, że gdy jakiś materiał na player.pl jest nowy to przy próbie pobrania wyskakuje "Nie udało się odnaleźć źródeł do materiału.". Nie wiem czy ma to może związek z tym, że materiał jest na głównej stronie? Pozdrawiam

vod / brak id

pozwole sobie skopiowac treśc wątki:

@zacny pozwole sobie napisac tutaj topic, bo nie mam dostepu akruat do githuba, a poźniej zapomnne...

weźmy na obroty takie o to linki:

https://vod.pl/seriale/most-nad-sundem/tl7lyqm#0
albo
https://vod.pl/seriale/most-nad-sundem/bc3g159#0

(# - dodawany jest automatycznie po wejsciu na te www, wiec zakladam ze to bedzie problem głowny)

i teraz po wejsciu na te www, u mnie wysweitla się:

_Nie możemy wyświetlić filmu
Materiał nie jest dostępny w Twoim kraju
_

mvpId w obydu linkach istnieje w źrodłach tych stron
i teraz jak sobie podmienimy ID w tym linku niżej:

https://player-api.dreamlab.pl/?body[id]=1980088.1733158388&body[jsonrpc]=2.0&body[method]=get_asset_detail&body[params][ID_Publikacji]=1980088.1733158388&body[params][Service]=vod.onet.pl&content-type=application/jsonp&x-onet-app=player.front.onetapi.pl&callback=

to material sie odnajduje i json sie wyswielta, ale skrypt pokazuje:

Niestety natrafiono na problem, który uniemożliwił dalsze działanie

Nie udało się odnaleźć idetyfikatora.
Algorytm rozpoznawania identyfikatora wideo na stronie: "https://vod.pl/seriale/most-nad-sundem/tl7lyqm#0" zakończył się niepowodzeniem. Może to oznaczać błąd skryptu.

Informacje o systemie: Firefox 60.0 32-bit on Windows 10 64-bit
Wersja pluginu: 4.9.5921

a teraz odpowiadajac na dalsze Twoje pytanie, tutaj zamieszczam source ze strony:

https://pastebin.com/raw/43UGc0eq

sprawdzilem na wszelki wypadek raz jescze co sie stanie po wpisaniu do konsoli:

$(".mvp").attr('id')

i dostaje zwrotkę

undefined

propozycja / adres wyniku skryptu

nie wiem czy to jest możliwe do rozwiązania od strony technicznej, dlatego jezeli nie to od razu temat do zamkniecia, ale pomyslalem, ze ciekawym rozwiązaniem było by cos takiego... i tutaj pozwole sobie opisac bo własciwie nie wiem jak to nazwac w kilku slowach.

powiedzmy wchodze sobie na dany materiał, dajmy na to: https://www.arte.tv/pl/videos/090168-000-A/nabucco-giuseppe-verdiego/, klikam w 'pobierz wideo'

otwiera sie nowa zakładka, z wynikiem działania skryptu, linkami itd.

i teraz....

w pasku adresu oczywiscie jest pustka.... po porstu otwiera sie nowa zakładka

ale... czy jest techniczna możliwosci, aby jednak w pasku adresu pojawiał sie jakis string specialny, zawierajacy zakodowany adres materialu dla ktorego został wykonany wynik z jakims specialnym prefixem...

zeby np. osoby, ktore MAJA aktywny skrypt po wpisaniu tego własnie ciagu znaków, od razu uzyskały wynik skryptu ?

nie wiem za bardzo czy @zacny rozumiesz o co mi chodiz, chetnie opisze inaczej, ale daj cyne...

moznaby np. dzieki temu podsyłac znajomym taki ciag, oni klikaja i od razu maja wynik skryptu... dla danego materialu...

brak vodapitvp

zostawie tutaj, bo bedzie czytelniej, a więc...

dobrze bybyło dodać/naprawić obsługę materiałow, które sa dostepne przez API, dla przykładu:
https://vod.tvp.pl/video/wiadomosci,17052019-1200,42549669 tutaj json sie nie pobierze standardową metodą czyli https://www.tvp.pl/shared/cdn/tokenizer_v2.php?object_id= otrzymamy

url
status NOT_FOUND
videoId 42549669
platform sdt-v2
userIp
adaptive false
live false
title
duration 900
countryIsDefault false
mimeType unknown
ads_enabled true
payment_type 0
distribution_model

zeby to naprawić i zeby mozna było pobrac odpowiedni plik json trzeba skorzystac z linku (dokładnie wczesniejszy skrypt z miniskrypt tak działał/działa)
https://apivod.tvp.pl/tv/video/42549669/ tutaj po podaniu autoryzacji api/vod otrzymamy odpowiedni plik json.

tak jak zauwayzłem i napisałem na forum, wyglad ana to ze inne materiąły sa tez dostepne przez te metode, natomiast niekotre zdaja się byc dostepne tlyko przez te metode API.

tzreba by sprawdzać najpierw czy działa przez tokenizer a jak nie sprawdzać przez apivod dopiero w zaleznosci od tego co sie wydarzy wysweitlac link :)

źródło na forum:
https://greasyfork.org/pl/forum/discussion/57515/x

edit.
dodam jescze na przykłądu pewną rzecz....

mamy sobie materiały:

  1. https://teleexpress.tvp.pl/42405307/19052019-1700
  2. https://vod.tvp.pl/video/teleexpress,19052019-1700,42549812

i teraz, dla numerka 2... skrypt reaguje i wyświetla guzik umozliwiajacy pobranie, ale niestety nie bedzie działać przez sytuacje opsiana powyzej.

dla numerka 1, skrypt nie wyswietla zadnego guzika, ale jak ręcznie wpiszemy: https://www.tvp.pl/shared/cdn/tokenizer_v2.php?object_id=42405307 to otrzymujemy poprawny json

wspracie dla ninateka.pl

obsługa tego serwisu jest zaimplementowana np. tutaj:
https://github.com/krecik71/kret/tree/master/kret/plugin.video.ninateka

dla materiału z https://ninateka.pl/film/komety-nina-na-ucho
w kodzie storny wystepuje cos takiego:

var playerOptionsWithMainSource = {
    "sources": [{
        "src": "mqquv?**klkd+dv+wa+lkv|vfa+k`q*sla`j(43(<(njkf`wq(njh`q|+vhli*Hdklc`vq",
        "type": "application/vnd.ms-sstr+xml"
    }, {
        "src": "mqquv?**klkd+dv+wa+lkv|vfa+k`q*sla`j(43(<(njkf`wq(njh`q|+vhli*uid|ilvq+h6p=",
        "type": "application/x-mpegURL"
    }, {
        "src": "mqquv?**klkd+ua+wa+lkv|vfa+k`q*sla`j(43(<(njkf`wq(njh`q|Z<55+hu1",
        "type": "video/mp4"
    }, {
        "src": "mqquv?**klkd+dv+wa+lkv|vfa+k`q*sla`j(43(<(njkf`wq(njh`q|+vhli*hdklc`vq+c1h"
    }],
    "auto": false,
    "audio": false,
    "image": "https://nina.files.rd.insyscd.net/okladki/komety-koncert.png?m=crop&w=640&h=360"
};

dla tego materialu https://ninateka.pl/film/makbet
jest juz np. cos takiego:

var playerOptionsWithMainSource = {
    "sources": [{
        "src": "a}}yz3&&g`gh'hz'{m'`gzpzjm'gl}&dhbkl}${ls$h$~hcmh'zd`e&Dhg`olz}",
        "type": "application/vnd.ms-sstr+xml"
    }, {
        "src": "a}}yz3&&g`gh'hz'{m'`gzpzjm'gl}&dhbkl}${ls$h$~hcmh'zd`e&yehpe`z}'d:|1",
        "type": "application/x-mpegURL"
    }, {
        "src": "a}}yz3&&g`gh'ym'{m'`gzpzjm'gl}&dhbkl}${ls$h$~hcmhV099'dy=",
        "type": "video/mp4"
    }, {
        "src": "a}}yz3&&g`gh'hz'{m'`gzpzjm'gl}&dhbkl}${ls$h$~hcmh'zd`e&dhg`olz}'o=d"
    }],
    "auto": false,
    "audio": false,
    "image": "https://nina.files.rd.insyscd.net/makbet-wajda.png?m=crop&w=640&h=360"
};


var playerOptionsWithSignLanguageVersionSource = {
    "sources": [{
        "src": "a}}yz3&&g`gh'hz'{m'`gzpzjm'gl}&�}lh8?0$dhbkl}$}e|dhjslg`l$d`nf~l'zd`e&Dhg`olz}",
        "type": "application/vnd.ms-sstr+xml"
    }, {
        "src": "a}}yz3&&g`gh'hz'{m'`gzpzjm'gl}&�}lh8?0$dhbkl}$}e|dhjslg`l$d`nf~l'zd`e&yehpe`z}'d:|1",
        "type": "application/x-mpegURL"
    }, {
        "src": "a}}yz3&&g`gh'ym'{m'`gzpzjm'gl}&�}lh8?0$dhbkl}$}e|dhjslg`l$d`nf~lV099'dy=",
        "type": "video/mp4"
    }, {
        "src": "a}}yz3&&g`gh'hz'{m'`gzpzjm'gl}&�}lh8?0$dhbkl}$}e|dhjslg`l$d`nf~l'zd`e&dhg`olz}'o=d"
    }],
    "auto": true,
    "audio": false,
    "image": "https://nina.files.rd.insyscd.net/makbet-wajda.png?m=crop&w=640&h=360"
};

player.pl

https://player.pl/programy-online/kuchenne-rewolucje-odcinki,114/odcinek-5,S20E05,149878 - brak przycisku 'pobierz video' bezposredni json działa.

Użycie synchronicznej wersji metody XMLHttpRequest w głównym wątku jest przestarzałe z powodu szkodliwych efektów ubocznych. Więcej informacji można znaleźć na stronie http://xhr.spec.whatwg.org jquery.min.js:4:15847
Wczytanie się nie powiodło dla elementu „script” ze źródłem „https://tvn.hit.gemius.pl/xgemius.js”. odcinek-5,S20E05,149878:1:1
Automatyczne odtwarzanie jest możliwe jedynie po wyrażeniu zgody przez użytkownika, gdy strona zostanie aktywowana przez użytkownika lub treść jest wyciszona. player.js:1:627597
Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://ir8g4jv6crgir51psbohtljnq.litix.io/” (nieudane żądanie CORS).

Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://n-22-12.dcs.redcdn.pl/file/o2/TVN-Adserver/y2016/v/139f0874f2ded2e41b0393c4ac5644f7/e14decef-3baf-4161-ae5b-dafc589b2dbb-www.mp4” (nieudane żądanie CORS).

Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://nuvi.aws.cdntvn.pl/advert.js?_=1570469931245” (nieudane żądanie CORS).

Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://n-13-5.dcs.redcdn.pl/file/o2/TVN-Adserver/0000_2019/09_wrzesien/190932164CPM_Aflofarm/Preventic_D3_11092019_www.mp4” (nieudane żądanie CORS).

TypeError: this.error_ is null
player.js:1:872883
Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://nuvi.aws.cdntvn.pl/advert.js?_=1570469931246” (nieudane żądanie CORS).

Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://n-13-7.dcs.redcdn.pl/file/o2/TVN-Adserver/0000_2019/09_wrzesien/190932164CPM_Aflofarm/LIPOMAL_0919_www.mp4” (nieudane żądanie CORS).

TypeError: this.error_ is null
player.js:1:872883
Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://ir8g4jv6crgir51psbohtljnq.litix.io/” (nieudane żądanie CORS).

TypeError: this.entityLayers is null
main.js:1:943
TypeError: e is null
22 player.js:1:376369

edit
edit. skrypt 6.4.0 Firefox 70b12

vod.pl / brak napisaów

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.