Viktige JavaScript-biblioteker, verktøy og rammeverk du bør kjenne til. Javascript-rammeverk

Denne samlingen dekker 15 praktiske rammer for frontend. I tillegg til de mest populære plattformene er det flere mindre kjente plattformer på listen – vi håper alle kan finne en passende løsning for sitt prosjekt.

Kantete

En perle av webprogrammering: Selv noen ivrige Angular-tilhengere har valgt React. React var i stand til å gjøre det Angular ikke kunne gjøre - det lar deg utvikle en front-end uten å stupe inn i jungelen og kompleksiteten til rammeverket. React er et JavaScript-bibliotek laget av Facebook, og hovedmålet er å gi en komfortabel opplevelse med Shadow DOM. Til dette formålet brukes Virtual DOM, en modell som med hver endring genererer en liste over operasjoner som må utføres på DOM for å bringe den til en ny tilstand.

Hvis du er interessert i dette rammeverket og bestemmer deg for å begynne å studere det, har vi utarbeidet en oversettelse for deg om dette emnet. I april 2017 relanserte Facebook biblioteket, nytt prosjekt vil hete React Fiber.

Stikkontakt

Hvis du ikke tar nok hensyn til kodestrukturen, selv når du utvikler bare én side eller enkeltsideapplikasjon, kan koden din bli en veritabel tallerken med spaghetti. Backbone er bygget på ideen om at alt arbeid på serversiden skal gjøres gjennom et API, noe som minimerer mengden kode som trengs for å oppnå samme rike funksjonalitet som komplekse nettrammeverk.

Backbone er et av de mest populære rammeverkene for nettutvikling, hovedsakelig på grunn av to årsaker: Prinsippet for bruk av moduler er veldig enkelt å forstå, noe som betyr at det er enkelt å lære å bruke selve rammeverket.

Vue

Et bibliotek for å lage mobil- og nettapplikasjoner på tvers av nettlesere som inneholder et stort sett med ferdige brukergrensesnittkomponenter som kan kombineres eller brukes individuelt. Widgets er kompatible med alle serverteknologi: PHP, Java, ASP.NET, Ruby, Grails, ColdFusion, Python, etc. Den nye versjonen 5.1 legger til støtte for TypeScript, JSON og Promise API.

PureMVC

Fra forfatteren: Før vi snakker om JavaScript-rammer, la oss definere hva jeg mener med ordet "rammeverk", siden begrepet er ganske vagt. Med rammeverk mener jeg et bibliotek som definerer strukturen til alle aspekter og nivåer av en applikasjon og legger til rette for utvikling. Lagene, i dette tilfellet, er databaser, modeller, kontrollere, visninger, visninger, nettverk, etc.

Rammer hjelper til med å løse de fleste kjente problemer som oppstår når du arbeider med applikasjoner. De inneholder ferdige designløsninger samt nøye utviklede retningslinjer; i denne forbindelse bør de ikke forårsake noen vanskeligheter.

Gode ​​rammeverk har gjennomtenkte standardparametere og opererer etter konvensjon-over-konfigurasjonsprinsippet. En av lederne blant rammeverk er min favoritt - Ruby on Rails. Innen JavaScript er disse Angular og Ember.

Nå som vi har ryddet opp i alt, vil jeg gjerne svare på spørsmålet i tittelen: Hvilke JavaScript-rammeverk er verdt å mestre i 2018?

Mitt svar: Ingen.

Nå skal jeg forklare hvorfor.

Så lenge arbeidet ditt ikke krever at du bruker et rammeverk, trenger du ikke mestre det bare for å mestre det. Jeg mener, du trenger ikke å lære å bruke den. Denne kunnskapen vil bli utdatert veldig raskt.

Men det er definitivt verdt å finne ut på hvilket prinsipp rammeverket fungerer. Dette er svært verdifull kunnskap. Hvis du lærer et rammeverk for å finne en god jobb, vil det være mye mer nyttig å vite hvordan det fungerer enn å vite hvordan du bruker det.

Lær å bruke rammeverket kun når behovet melder seg.

Etter min mening, for å bli en ettertraktet utvikler, må du mestre viktigere ferdigheter:

Lær alt du kan om selve JavaScript-språket: dets styrker og svakheter, nye funksjoner. Lær å lage og bruke ulike datastrukturer i JavaScript.

Lær JavaScript-arbeidsbenken som Node og nettlesere og hvor enkelttrådede de er. Lær om deres APIer og begrensninger, hendelsesløkken og OS-anropsstakken. Sørg for at du føler deg komfortabel med temaet nettleserutviklingsverktøy.

Lær å sende kode fra klient til server og forhåndslaste kildedata. Lær å minimere JavaScript-belastning og utførelse parsing nettlesere, og last JavaScript på forespørsel.

Lær om fordelene med funksjonell programmering og bruk dem. Når det er mulig, prøv å forklare i stedet for å påpeke.

Sjekk ut små JavaScript-biblioteker som gjør én ting og gjør det bra. Velg biblioteker med den minste API og ikke fokuser på API, heller fokus på hva disse bibliotekene er i stand til.

Lær å bygge APIer med skalerbare data (vurder GraphQL).

Sjekk ut CSS-arbeid og lær hvordan du minimerer JavaScript-applikasjonskoden med den. Utforsk de nye Flexbox- og Grid-oppsettene. Finn ut mer om responsiv UI-design.

Lær å legge til statiske typer i JavaScript ved hjelp av TypeScript (eller Flow) og lær hvor du skal fokusere på typer kontra testing.

Takk for din tid.

Alina Arkhipova "JavaScript Frameworks: How To Make Your Choice".

JavaScript er en av kjerneteknologiene på World Wide Web. I følge undersøkelsesresultatene er JavaScript toppspråket blant front-end-utviklere, og det ser ikke ut som det mister popularitet. Dette er grunnen til at det er så mange JavaScript-rammeverk tilgjengelig i dag at det er vanskelig å vite hvilken som er mest effektiv.

Jo flere rammer dukker opp, jo mer kontrovers omgir dem. Det er mye snakk i utviklermiljøet om hvilke rammeverk som er mest effektive for frontend-utvikling. Basert på forskningen vår har vi identifisert de fem mest omtalte JavaScript-rammeverkene. Vi beskrev dem i denne artikkelen. Også i den vil vi dele opplevelsen til Yalantis: vi vil snakke om hvilke rammer våre frontend-utviklere foretrekker.

Gjennomgang av populære JavaScript-rammeverk

Hver måned utgis et nytt JavaScript-rammeverk. Produkteiere kan ha problemer med å ta et valg. Det er nødvendig med rammer. Deres oppgave er å fremskynde og lette arbeidsprosessen, samt øke produktiviteten. Derfor påvirker valget av rammeverk i stor grad effektiviteten og produktiviteten til utviklingsprosessen. La oss sammenligne de beste JavaScript-rammene.

Kantete

Angular er et fullverdig rammeverk utgitt i 2010 av Google. Selskapet fortsetter å gi ut oppdateringer regelmessig. For eksempel, i mars 2018, brakte den nyeste versjonen, Angular 6, mange forbedringer, inkludert en ny gjengivelsesmotor for raskere og mindre applikasjoner.

I dag er Angular et av de mest populære front-end-rammeverkene. Mange utviklere velger Angular fordi de ser det som nøkkelen til å forenkle utviklingen. Takket være malene kan front-end-profesjonelle enkelt bruke Angular til å lage dynamiske enkeltside-nettapplikasjoner med mye foranderlig data. I tillegg har Angular en Model-View-Controller (MVC) som gjør testing enklere og mer tilgjengelig.

React.js

React.js er et rammeverk utgitt av Facebook-teamet i 2013. Store selskaper inkludert Dropbox, PayPal, BBC, Atlassian og Instagram bruker React som sitt viktigste front-end-verktøy.

React er flott for applikasjoner og nettsteder med kompleks presentasjonslogikk. React tillater også gjenbruk av komponenter i en applikasjon, slik at utviklere ikke trenger å lage lignende komponenter om og om igjen. Med React kan utviklere fokusere på å bygge kompleks funksjonalitet. Takket være en spesiell forhandlingsalgoritme kalt Virtual DOM, får front-end-utviklere en betydelig økning i produktivitet. De kan utvikle seg raskere fordi de ikke trenger å oppdatere visninger etter hver liten endring.

Vue.js

Vue.js er et ganske nytt JavaScript-rammeverk laget av Evan Yu. Hovedmålet er å gjøre brukergrensesnittutviklingen mer organisert.

Mange front-end-eksperter hevder at dette er et utmerket verktøy for nybegynnere. Det er veldig lett å forstå fordi det fokuserer på lagene i presentasjonen. Vue.js fungerer uten Babel, en transpiler som konverterer JavaScript-kode til den gamle versjonen av ES5, som kjører i alle nettlesere. Å ikke bruke Babel fremskynder utviklingen. Vue.js-maler er gyldig HTML, så integrasjon er enkel. Dette rammeverket er en god løsning for å utvikle lette applikasjoner.

Ember.js

Ember.js-rammeverket ble opprettet i 2011. Det har blitt brukt til å lage nettsider for mange kjente selskaper, inkludert Kickstarter, Heroku og LinkedIn.

Ember.js oppdateres jevnlig og gir en komplett pakke med funksjoner. Dette rammeverket er effektivt for å utvikle komplekse webapplikasjoner, og dets strengbaserte malsystem bidrar til å øke hastigheten på lastetidene. Ember.js fokuserer på skalerbarhet, slik at utviklere enkelt kan jobbe med både mobil- og nettprosjekter.

Next.js

Next.js er et uvanlig JavaScript-rammeverk. Den ble utviklet av React-teamet as ekstra verktøy for gjengivelse på serversiden. Når du jobber med React og Next.js, blir utviklingsprosessen enklere, akkurat som når du bruker Vue.js.

Next.js har bemerkelsesverdige funksjoner som automatisk kodedeling og sidebasert ruting på klientsiden. I tillegg har Next.js full CSS-støtte (kalt styled-jsx) for å gjøre styling av brukergrensesnittet mye enklere.

Disse fem populære JavaScript-bibliotekene og -rammeverket har mye til felles. For eksempel har de alle et effektivt komponentarkitektur og dokumentasjonssystem. Funksjonaliteten de gir er rettet mot å redusere utviklingstiden, noe som kommer både produkteiere og utviklere til gode.

Valg av det beste UI-rammeverket bør alltid avhenge av prosjektspesifikasjonen så vel som utviklerens ferdigheter. Nå skal vi fortelle deg hva utviklere velger hos Yalantis.

Hvilke rammer velger Yalantis front-end utviklere?

Front-end-utviklingsteamet hos Yalantis jobber ofte med JavaScript-rammer. I løpet av de siste årene har vi testet en rekke rammeverk for å finne det mest effektive og fordelaktige verktøyet.

I dag foretrekker vi å jobbe med to velkjente JavaScript-rammeverk – Angular og React. Men hvorfor nettopp disse to? La oss se nærmere på funksjonaliteten de tilbyr til frontend-utviklere.

Kantete

Google-teamet har utviklet et av de mest populære JavaScript-rammeverkene i dag. Angular har fått bemerkelsesverdig popularitet på grunn av sin støtte for toveis databinding, effektive maler og enkel dokumentasjon.

Effektivt, komponentbasert system. Komponenter og direktiver har erstattet kontrollere og applikasjonsområder som byggesteinene i applikasjoner. Komponentklasser er individuelle blokker, noe som gjør dem gjenbrukbare og enkle å legge til eksisterende applikasjoner.

Toveis databinding. Denne funksjonen reduserer tiden det tar å skrive kode. Utviklere kan gjøre endringer i modeller og visninger samtidig, uten å vente på at UI-elementer skal gjengis.

TypeScript. Vinkeltreningsressurser og dokumentasjon er basert på TypeScript, så det er vanskelig å unngå. TypeScript kan virke komplisert for noen utviklere, men det er ingenting galt med det. Mange nye funksjoner blir tilgjengelig mye raskere for TypeScript enn for andre språk. Dessuten gir TypeScript objektorienterte programmeringsmønstre og valgfri statisk typekontroll, noe som er nyttig for store applikasjoner.

Praktiske maler. Maler i Angular presenteres i HTML, slik at utviklere kan lage funksjonelle applikasjoner selv om de ikke kan mye JavaScript. Nettleseren behandler malene og genererer gjengivelsesinstruksjoner, også kjent som direktiver.

Enkel dokumentasjon. All den offisielle Angular-dokumentasjonen er kort og enkel, så selv mindre erfarne utviklere kan raskt finne det grunnleggende.

Støtter et sterkt fellesskap. Angular-rammeverket er et Google-produkt, så det har naturlig nok mange fans og folk som støtter det. Utviklere kan enkelt finne mange råd på blogger og fora.

La oss oppsummere. Angular-rammeverket er et topp-front-end utviklingsverktøy som gir mange forskjellige funksjoner. Å bygge applikasjoner med Angular er til fordel for både bedrifter og utviklere. For det første støttes Angular av Google, så dette rammeverket oppdateres jevnlig og funksjonaliteten forbedres kontinuerlig. For det andre, i motsetning til mange andre rammeverk, er Angular tilgjengelig under MIT-lisensen. Det er viktig for bedrifter og utviklere å bruke lisensierte verktøy da de er mer pålitelige.

Reagere

React er et revolusjonerende JavaScript-rammeverk som inntar en ledende posisjon i rangeringen av JavaScript-rammeverk. Det er veldig populært blant GitHub-brukere, som har gitt det mer enn 95 tusen stjerner. Men hva gjør React så spesiell?

Økt produktivitet. React har en unik funksjon kalt Virtual DOM som gjør koding mer effektiv. Når utviklere gjør små endringer, trenger de ikke å oppdatere hele visningen. Endringer går gjennom Virtual DOM, som gjengir bare den ønskede delen av siden. Denne tilnærmingen tar mindre tid og sparer utviklerinnsats.

JSX. Deklarativ JavaScript-syntaks som hjelper deg med å lage ryddig, lesbar kode. JSX hjelper deg også med å kombinere komponenter til en enkelt kjørbar fil.

Enkel læring. Hvis utviklere kan JavaScript, kan de begynne å bruke React med en gang. Utviklere kan hoppe over manualene fordi React er enkelt og godt organisert. For å bli en React-profesjonell, må du bli kjent med JSX.

Komponenter som kan gjenbrukes. React har, som Angular, en komponentbasert arkitektur. Dette betyr at når du bruker React-rammeverket, kan utviklere se komponenter som byggesteinene i en applikasjon. Den største fordelen med dette er at ferdigbygde komponenter kan brukes i ulike deler av applikasjonen. Dette øker utviklingshastigheten.

Facebook og samfunnsstøtte. React er overvåket av en av teknologigigantene - Facebook. Facebook-teamet vet hvordan man jobber med komplekse nettapplikasjoner, så React-rammeverket er fokusert på å øke produktiviteten. React-fellesskapet er et av de største (sammenliknet med fellesskapene til andre populære front-end-utviklingsrammer). Det er mange blogger, plugins og SDK-er relatert til React. Derfor, hvis en utvikler har problemer med dette rammeverket, kan han enkelt finne svar på Internett.

Generelt er React-rammeverket effektivt verktøyå utvikle brukergrensesnittet. Dens funksjonalitet forbedrer utviklingen ved å redusere tiden det tar å skrive kode, noe som er en stor fordel for bedrifter og utviklere. I tillegg er React lett å lære, så utviklere kan begynne å bruke det uten problemer. foreløpig forberedelse. Til slutt har den utmerket fellesskap og Facebook-støtte, så dette rammeverket vil definitivt ha oppdateringer og nye interessante funksjoner.

Vi har dekket fem topp JavaScript-rammeverk, men valget er ditt. Sammenlign ytelse, arkitektur, læringskurve, dokumentasjon, organisering og fellesskapsstøtte når du bestemmer deg.

I første del av den komparative studien ble vi kjent med AngularJS, Ember, Backbone.js og nykommeren React, viste flere kodeeksempler og diskuterte deres styrker og svakheter. I del 2 tar vi en titt på deres markedsandel, støttefellesskap og vekstmønster for å hjelpe deg med å lage riktig valg for SPA.

Markedsundersøkelser

Tabellen nedenfor viser rammene sammen med utgivelsesår, kilde, hovedsponsorer og en oversikt over de mest populære nettstedene som bruker dem. Det er verdt å merke seg at hvert av disse rammeverkene brukes av minst én stor nettspiller:

Denne listen viser modenheten til alle prosjekter, men gir ikke en ide om deres generelle popularitet. Statistikk fra webcrawlere gir vanligvis ikke et nøyaktig bilde når det kommer til backend-rammeverk, men i vårt tilfelle er de på klientsiden, og denne informasjonen ser ganske plausibel ut.

Ved å sammenligne wappalyzer.com med similartech.com og builtwith.com, fikk vi svært forskjellige resultater. For å presentere dem på en mest mulig forståelig måte, beregnet vi de endelige tallene på nytt i prosent.

Ifølge builtwith.com brukes React bare 74 ganger på de 1 000 000 beste nettstedene, mens wappalyzer.com fant 18 582 bruk av React over hele nettet. Alle kilder viser at Angular og Backbone er de mest brukte rammeverkene. Imidlertid nevnte similartech.com ikke engang de to andre på grunn av deres lille markedsandel. Interessant nok brukes Backbone.js oftere på TOP 1 000 nettsteder enn på TOP 1 000 000, ifølge builtwith.com.

Som utvikler kan du være interessert i å ta en titt på fellesskapet bygget rundt hvert rammeverk. Den kan brukes til å bedømme volumet og hastigheten på støtten du vil kunne motta i fremtidige prosjekter. I denne forbindelse vil det være tilrådelig å vise flere eksempler som viser aktiviteten til lokalsamfunn. Hvert prosjekt er medlem av GitHub, så vi kan ta noen veiledende statistikk derfra.

Angular var vinneren av den første delen av sammenligningen. Dette betyr at det ikke er overraskende å se det igjen blant de mest populære rammeverkene. Selv om den nesten når Backbones tall, slår den fortsatt alle konkurrentene fra utviklersamfunnssiden i hver beregning.

Når det gjelder forpliktelser, spiller antall forpliktelser siden den første utrullingen en stor rolle. Ember har for eksempel flest commits. Imponerende! Men husk at Ember brukte 6 år lenger på å få disse forpliktelsene sammen sammenlignet med React. Imidlertid har React flere stjerner, til tross for sin relative ungdom.

Stackoverflow.com setter Angular i det beste lyset, og gir det dobbelt så mange publikasjoner som Backbone og Ember til sammen, og 65 ganger mer enn React!

Det er tydelig at denne delen viser tingenes tilstand bare på et bestemt tidspunkt. Et logisk spørsmål dukker opp: hvilke av disse rammene er verdt å investere i i nær fremtid?

Google Trender har alltid vært en utmerket kilde til informasjon om populariteten til en bestemt sak, og å studere den over tid kan forutsi hvor populær den vil bli i fremtiden.

Det som er sikkert er at Angular er det mest populære rammeverket. Det kan også bemerkes at Backbones popularitet har stabilisert seg og til og med redusert litt over tid. Det samme kan sies om Ember. Har de allerede passert toppen og mister gradvis fart?

Uten tvil er den mest slående trenden demonstrert av React. Under opprettelsen av artikkelen endret denne delen seg tre ganger på 2 måneder:

Desember 2014: React innhenter gradvis Backbone og Ember. => Godt gjort!

Januar 2015: React tetter gapet og hopper over konkurrenter. => Imponerende!

Februar 2015: Populariteten til React går langt foran Backbone og Ember. Nå er det en sjanse til å konkurrere med Angular! => Ingen ord!

Ifølge Google Trends gikk React fra null til en fjerdedel av Angulars popularitet i løpet av 1,5 år. Hvis React fortsetter å gjøre fremskritt som dette, kan vi sannsynligvis se noen interessante konkurranse to ledere.

Det er nok av Javascript-rammer er tilgjengelig akkurat nå. Det er utfordrende å vite hvilken man skal bruke til hvilket prosjekt. Hvilket rammeverk tror du er best for javascript? Vel, det avhenger av prosjektet ditt. Du kan se listen over Beste Javascript-rammer under. Vi har valgt det basert på noen aspekter av fellesskapets styrke, vekt osv.

Vue.js er et progressivt, trinnvis adopterbart JavaScript-rammeverk for å bygge brukergrensesnitt på nettet. Vue.js er et bibliotek for å bygge interaktive nettgrensesnitt. Den gir datareaktive komponenter med en enkel og fleksibel API.

Aurelia er et JavaScript-klientrammeverk for nett, mobil og skrivebord som utnytter enkle konvensjoner for å styrke kreativiteten din.

Ember.js er et JavaScript-rammeverk som i stor grad reduserer tiden, kreftene og ressursene som trengs for å bygge en hvilken som helst nettapplikasjon. Det er fokusert på å gjøre deg, utvikleren, så produktiv som mulig ved å gjøre alle de vanlige, repeterende, men likevel essensielle, oppgavene som er involvert i de fleste nettutviklingsprosjekter.

Et beskjedent JavaScript-rammeverk for HTML-en du allerede har.

NativeScript er et åpen kildekode-rammeverk for å bygge ekte native mobilapper med JavaScript. Bruk nettferdigheter, som Angular og Vue.js, FlexBox og CSS, og få innebygd brukergrensesnitt og ytelse på iOS og Android.

Stafett

Relay er et JavaScript-rammeverk for å bygge datadrevne React-applikasjoner.

Et funksjonelt og reaktivt JavaScript-rammeverk for renere kode.

Babylon.js: et komplett JavaScript-rammeverk for å bygge 3D-spill med HTML 5 og WebGL.

Flight er et lett, komponentbasert JavaScript-rammeverk som kartlegger atferd til DOM-noder. Twitter bruker det til sine nettapplikasjoner.

Javascript MVC-rammeverk for webutvikling.

Et lett front-end-rammeverk for å lage skalerbare og effektive, responsive nettsteder.

Onsen UI er et bibliotek med UI-komponenter for å hjelpe deg med å lage vakre hybrid- og mobile nettapper for både Android og iOS ved hjelp av Javascript.

Cylon.js er et JavaScript-rammeverk for robotikk, fysisk databehandling og tingenes internett. Det gjør det utrolig enkelt å kommandere roboter og enheter.

Spøk

Jest er et testrammeverk for JavaScript-enheter, brukt av Facebook til å teste tjenester og React-applikasjoner.

Et minimalistisk, sanntids JavaScript-rammeverk bygget for NodeJS, React-Native og nettleseren.

R

AVA

Bootbox.js er et lite JavaScript-bibliotek som lar deg lage programmatiske dialogbokser ved hjelp av Bootstrap-modaler, uten å måtte bekymre deg for å opprette, administrere eller fjerne noen av de nødvendige DOM-elementene eller JS-hendelsesbehandlerne.

Rikt sett med javascript-widgets uten avhengighet av et rammeverk på serversiden.

Et minimalistisk aspekt-orientert JavaScript-blandingsrammeverk.

Et JavaScript-rammeverk for å lage mobile webapper.

Highcharts JS er et JavaScript-kartrammeverk.

scripty2 er et åpen kildekode JavaScript-rammeverk for avanserte HTML-baserte brukergrensesnitt.

Crafty er et fleksibelt rammeverk for Javascript-spill.

Modernizr er et JavaScript-bibliotek som oppdager HTML5- og CSS3-funksjoner i brukerens nettleser.

Et minimalt komponentbasert JavaScript-rammeverk.

En port av prosesseringsvisualiseringsspråket til JavaScript.

Raphaël er et lite JavaScript-bibliotek som skal forenkle arbeidet ditt med vektorgrafikk på nettet.

RequireJS er en JavaScript-fil- og modullaster.

Matbit

Snack er et lite og enkelt JavaScript-bibliotek. Selv om den er ideell for små prosjekter, har den nok til å bygge komplekse nettapper på tvers av nettlesere.

Zepto

Zepto er et minimalistisk JavaScript-bibliotek for moderne nettlesere med et stort sett jQuery-kompatibelt API.

Jasmine er et atferdsdrevet utviklingsrammeverk for testing av JavaScript-kode. Det er ikke avhengig av andre JavaScript-rammeverk. Det krever ikke en DOM. Og den har en ren, åpenbar syntaks slik at du enkelt kan skrive tester.

QUnit

QUnit er et kraftig, brukervennlig JavaScript-enhetstestramme.

Mokka

Mocha er et funksjonsrikt JavaScript-testrammeverk som kjører på Node.js og nettleseren, noe som gjør asynkron testing enkel og morsom.

soma.js er et skalerbart javascript-rammeverk laget for å hjelpe utviklere med å skrive løst koblede applikasjoner for å øke skalerbarheten og vedlikeholdet.

Cross-Platform JavaScript Creative Coding Framework.

Jaggery er et rammeverk for å skrive webapper og HTTP-fokuserte webtjenester for alle aspekter av applikasjonen: front-end, kommunikasjon, serversidelogikk og utholdenhet i rent Javascript.

Et Javascript-rammeverk for å bygge strålende applikasjoner.

HTML er flott for å deklarere statiske dokumenter, men det vakler når vi prøver å bruke det til å deklarere dynamiske visninger i web-applikasjoner. AngularJS lar deg utvide HTML-vokabularet for applikasjonen din.

Et JavaScript-applikasjonsrammeverk som legger vekt på modularitet og innkapsling.

jQuery er et raskt, lite og funksjonsrikt JavaScript-bibliotek. Det gjør ting som HTML-dokumentgjennomgang og manipulering, hendelseshåndtering, animasjon og Ajax mye enklere med en brukervennlig API som fungerer på tvers av en rekke nettlesere.

Kango

rammeverk for utvidelser på tvers av nettlesere kalt Kango. Hensikten med Kango er å gjøre utvikling av nettleserutvidelser enklere, billigere og mer hyggelig. Med Kango kan du lage utvidelser for alle større nettlesere på få minutter kun ved å bruke JavaScript.

Cappuccino er en rammeverk som gjør det enkelt å lage avanserte nettapper. Med bare noen få linjer med kode kan du bygge en app med fullstendig angre og gjøre om, virkelig fantastiske tabellvisninger, dra og slipp og alle moderne UI-utseende og oppførsel du kan forvente på skrivebordet.

ZK

ZK er det beste Java-rammeverket med åpen kildekode for å bygge bedriftsweb- og mobilapper.

qooxdoo er et universelt JavaScript-rammeverk med et sammenhengende sett med individuelle komponenter og en kraftig verktøykjede.

Durandal er et klientrammeverk på tvers av enheter på tvers av plattformer skrevet i JavaScript og designet for å gjøre Single Page Applications (SPA-er) enkle å lage og vedlikeholde.

SproutCore er et åpen kildekode-rammeverk for å bygge lynraske, innovative brukeropplevelser på nettet.

Wakanda er et åpen kildekode-rammeverk for nettapplikasjoner for utvikling av nett- og mobilapplikasjoner i JavaScript.

Webix

Webix er et JavaScript ui-widgetbibliotek for flere nettlesere. Bygg raske mobile og stasjonære webapplikasjoner som kjører på alle berøringsenheter med HTML5-rammeverk.

Reagere

Et JavaScript-bibliotek for å bygge brukergrensesnitt.

Sammy

Sammy er et lite javascript-rammeverk bygget på toppen av jQuery, It's RESTful Evented Javascript.

Utviklere i disse dager er bortskjemte med valgmuligheter når det gjelder å velge et MV*-rammeverk for å strukturere og organisere JavaScript-nettappene deres.

Knockout er et JavaScript MVVM (en moderne variant av MVC) bibliotek som gjør det enklere å lage rike, skrivebordslignende brukergrensesnitt med JavaScript og HTML. Den bruker observatører for å gjøre brukergrensesnittet ditt automatisk synkronisert med en underliggende datamodell, sammen med et kraftig og utvidbart sett med deklarative bindinger for å muliggjøre produktiv utvikling.

CorMVC er et jQuery-drevet Model-View-Controller (MVC) rammeverk som kan hjelpe til med utviklingen av enkeltsides jQuery-applikasjoner. Det utviklet seg ut av min nylige presentasjon, Building Single-Page Applications Using jQuery And ColdFusion, og vil fortsette å utvikle seg etter hvert som jeg tenker dypere på denne typen applikasjonsarkitektur.

Polymer lar deg bygge innkapslede, gjenbrukbare elementer som fungerer akkurat som HTML-elementer, for å bruke til å bygge webapplikasjoner.

Matreshka er et lite og kraftig JavaScript-rammeverk på klientsiden som lar deg bygge enkeltsideapplikasjoner så enkelt som mulig.

Sanntidsapplikasjonsrammeverk (Node.JS server).

Meteor er en komplett åpen kildekode-plattform for å bygge nett- og mobilapper i ren JavaScript.

Sencha Ext JS er det mest omfattende MVC/MVVM JavaScript-rammeverket for å bygge funksjonsrike webapplikasjoner på tvers av plattformer. Ext JS utnytter HTML5-funksjoner på moderne nettlesere samtidig som kompatibilitet og funksjonalitet for eldre nettlesere opprettholdes.

The Famous Framework er et nytt JavaScript-rammeverk for å lage gjenbrukbare, komponerbare og utskiftbare UI-widgeter og applikasjoner. Den balanserer deklarativ med imperativ og funksjonell med stateful, og den er bygget på toppen av Famous Engine.

Open source Opa Framework for JavaScript gjør nettutvikling rask og sikker.

Vanilla JS er et raskt, lett, tverrplattformrammeverk for å bygge utrolige, kraftige JavaScript-applikasjoner.

BETY

MEAN er et rammeverk for et enkelt utgangspunkt med MongoDB-, Node.js-, Express- og AngularJS-baserte applikasjoner. Den er designet for å gi deg en rask og organisert måte å begynne å utvikle MEAN-baserte nettapper med nyttige moduler som Mongoose og Passport forhåndsbuntet og konfigurert.

GWT brukes av mange produkter hos Google, inkludert Google AdWords og Google Wallet. Det er åpen kildekode, helt gratis og brukt av tusenvis av entusiastiske utviklere over hele verden.

Ample SDK er et standardbasert JavaScript GUI-rammeverk på tvers av nettlesere for å bygge rike Internett-applikasjoner på klientsiden. Den bruker XML-teknologier (som XUL, SVG eller HTML5) for UI-layout, CSS for UI-stil og JavaScript med DOM3 eller jQuery-lignende APIer for applikasjonslogikk.

Flatiron er et tilpasningsdyktig rammeverk for å bygge moderne webapplikasjoner. Den ble bygget fra grunnen av for bruk med JavaScript og Node.js.

P

P er et lite rammeverk som brukes til å lage nettleser-til-nettleser-nettverk (i motsetning til bare en tilkobling).

scaleApp er et lite JavaScript-rammeverk for skalerbare og vedlikeholdbare One-Page-Applications / Single-Page-Applications. Rammeverket lar deg enkelt lage komplekse webapplikasjoner.

MooTools er en samling av JavaScript-verktøy designet for middels til avansert JavaScript-utviklere. Den lar deg skrive kraftig og fleksibel kode med sine elegante, godt dokumenterte og sammenhengende APIer.

Minified.js er et JavaScript-bibliotek på klientsiden som er både kraftig og lite. Den tilbyr jQuery-lignende funksjoner (DOM-manipulasjon, animasjon, hendelser, HTTP-forespørsler) og verktøyfunksjoner (samlinger, dato- og tallformatering, datoaritmetikk, maler) med en enkelt, konsistent API.

Javelin er et frontend Javascript-bibliotek utviklet på Facebook. Det understreker strenghet og skalerbarhet for å prøve å løse, forhindre eller dempe noen av utfordringene vi møtte etter hvert som Facebook vokste. Javelin brukes for tiden av Facebook Mobile og Phabricator.

RightJS er et kompakt JavaScript-rammeverk for utvikling av nettapplikasjoner på tvers av nettlesere.

Et lite grunnlag for å lage reaktive komponenter med interpolering, databinding og plugins. Den er enkel, fleksibel og lett å forlenge.

Sails er det mest populære MVC-rammeverket for Node.js.

midori er et ultralett JavaScript-rammeverk som får jobben gjort uten å komme i veien for deg.

Javascript MVC-mikrorammeverket som gjør akkurat nok.

Et JavaScript-bibliotek på tvers av nettlesere for å bygge rike nett- og mobilapper.

Et JavaScript-verktøysett som sparer deg for tid og skalerer med utviklingsprosessen. Gir alt du trenger for å bygge en nettapp. Språkverktøy, UI-komponenter og mer, alt på ett sted, designet for å fungere perfekt sammen.

MochiKit er en svært dokumentert og godt testet, pakke med JavaScript-biblioteker som vil hjelpe deg å få dritt gjort, raskt. Vi tok alle de gode ideene vi kunne finne fra Python, Objective-C osv. erfaring og tilpasset den til den sprø verdenen av JavaScript.

Ekko

Echo er en plattform for å bygge nettbaserte applikasjoner som nærmer seg mulighetene til rike klienter. Applikasjonene er utviklet ved hjelp av en komponentorientert og hendelsesdrevet API, noe som eliminerer behovet for å håndtere den "sidebaserte" naturen til nettlesere. For utvikleren fungerer Echo akkurat som et verktøysett for brukergrensesnitt.

Alt for å bygge nett- og mobilapper med HTML5 og JavaScript.

Tradisjonell Flux-arkitektur bygget med ImmutableJS-datastrukturer.

JWt er et Java-bibliotek for utvikling av webapplikasjoner.

PureMVC er et lett rammeverk for å lage applikasjoner basert på det klassiske konseptet Model, View og Controller.

D3.js

D3.js er et JavaScript-bibliotek for å manipulere dokumenter basert på data. D3 hjelper deg å bringe data til live ved hjelp av HTML, SVG og CSS. D3 legger vekt på nettstandarder og kombinerer kraftige visualiseringskomponenter med en datadrevet tilnærming til DOM-manipulasjon, noe som gir deg de fulle egenskapene til moderne nettlesere uten å binde deg til et proprietært rammeverk.

Handlebars.js er en utvidelse til Mustache-malspråket laget av Chris Wanstrath. Handlebars.js og Moustache er begge logisk malspråk som holder visningen og koden adskilt slik vi alle vet at de burde være.

En enkel kjeleplate for å rulle ditt eget JavaScript-bibliotek som jQuery, Zepto, Prototype, etc.

Rialto (Rich Internet Application Toolkit) er et ajax-basert JavaScript-widgetbibliotek på tvers av nettlesere. Fordi det er teknologiagnostisk, kan det være innkapslet i JSP, JSF, .Net, Python eller PHP grafiske komponenter.

Et svært modulært, løst koblet, ikke-rammeverk for å bygge avanserte JavaScript-apper.

Dozer er et system for rask utvikling av tjenester for å støtte front-end-applikasjoner.

AmplifyJS er et sett med komponenter designet for å løse vanlige nettapplikasjonsproblemer med et forenklet API.

Noder.io gir en lett og fleksibel kjerne for å lage en skalerbar API av en lib, en modul, en applikasjon eller et rammeverk. Noder.io er inspirert (blant andre) av Angular og Pimple.

abaaso er et moderne, lett RESTful JavaScript-applikasjonsrammeverk i Enterprise-klassen.

En prosjektbase for å bygge moderne JavaScript-applikasjoner.

SharepointPlus ($SP) er et JavaScript API for Sharepoint. Dette biblioteket tilbyr noen utvidede funksjoner for SharePoint utelukkende på klientsiden (krever ingen serverinstallasjon). $SP vil forenkle din interaksjon med Sharepoint Web Services og vil hjelpe deg med å håndtere listeskjemaene.

Marionette er et sammensatt applikasjonsbibliotek for Backbone.js som har som mål å forenkle konstruksjonen av JavaScript-applikasjoner i stor skala. Det er en samling av vanlige design- og implementeringsmønstre som finnes i applikasjoner.

Opptøyer

Riot bringer tilpassede tagger til alle nettlesere, inkludert IE8. Tenk React + Polymer, men med hyggelig syntaks og en liten læringskurve.

pager.js er et JavaScript-bibliotek basert på KnockoutJS og jQuery som gir muligheten til å lage enkeltsideapplikasjoner på en deklarativ måte.

CanJS

CanJS er et JavaScript-bibliotek som gjør det enkelt og raskt å utvikle komplekse applikasjoner. Enkel å lære, liten og upretensiøs i applikasjonsstrukturen din, men med moderne funksjoner som tilpassede tagger og 2-veis binding. Å lage apper er enkelt og vedlikeholdbart.

Lett og kraftig databinding + malløsning for å bygge moderne webapplikasjoner.

Epoxy er et elegant og utvidbart databindingsbibliotek for Backbone.js.

OpenUI5 er et Open Source JavaScript UI-bibliotek, vedlikeholdt av SAP og tilgjengelig under Apache 2.0-lisensen. OpenUI5 lar deg bygge bedriftsklare nettapplikasjoner, responsive for alle enheter, som kjører på nesten hvilken som helst nettleser du ønsker.

script.aculo.us gir deg brukervennlige JavaScript-biblioteker på tvers av nettlesere for å få dine nettsider og nettapplikasjoner til å fly.

YUI er et gratis JavaScript- og CSS-bibliotek med åpen kildekode for å bygge rikt interaktive nettapplikasjoner.

SmartClient kombinerer bransjens rikeste sett med grensesnittkomponenter på tvers av nettlesere med et Java-serverrammeverk for å gi en ende-til-ende-løsning for å bygge forretningsnettapplikasjoner.

Backbone.js gir struktur til nettapplikasjoner ved å gi modeller med nøkkelverdibinding og tilpassede hendelser, samlinger med en rik API av utallige funksjoner, visninger med deklarativ hendelseshåndtering, og kobler det hele til din eksisterende API over et RESTful JSON-grensesnitt.

Murstein

Brick er en samling av brukergrensesnittkomponenter designet for enkel og rask bygging av brukergrensesnitt for nettapplikasjoner. Klosskomponenter er bygget ved å bruke Web Components-standarden for å tillate utviklere å beskrive brukergrensesnittet til appen deres ved å bruke HTML-syntaksen de allerede kjenner.

Ryggrad

Spine er et lettvekts MVC-bibliotek for å bygge JavaScript-webapplikasjoner. Spine gir deg struktur og kommer deg ut av veien, slik at du kan konsentrere deg om de morsomme tingene: å bygge fantastiske nettapplikasjoner.

UIZE uttales "you eyes", og er et GRATIS, kraftig, åpen kildekode, OOP JavaScript-rammeverk for nettlesere, NodeJS og andre JavaScript-steder.

JavaScriptMVC er et åpen kildekode-rammeverk som inneholder de beste ideene innen jQuery-utvikling.

Agility.js er et MVC-bibliotek for Javascript som lar deg skrive vedlikeholdbar og gjenbrukbar nettleserkode uten de omfattende eller infrastrukturelle overheadene som finnes i andre MVC-biblioteker.

Underscore er et JavaScript-bibliotek som gir en hel rot av nyttige funksjonelle programmeringshjelpere uten å utvide noen innebygde objekter.

Radian er et skalerbart AngularJS-rammeverk, perfekt for multiutviklerprosjekter.

Ractive ble opprinnelig opprettet på theguardian.com for å produsere nyhetsapplikasjoner. En typisk nyhetsapp er tungt interaktiv, kombinerer HTML og SVG, og utvikles under ekstremt tidsfristpress.

Geddy

Det originale MVC-nettverket for Node – en enkel, strukturert måte å lage fullstack-javascript-applikasjoner på.

Locomotive er et nettrammeverk for Node.js. Locomotive støtter MVC-mønstre, RESTful-ruter og konvensjon over konfigurasjon, samtidig som det integreres sømløst med enhver database- og malmotor.

MontageJS er et elegant HTML5-rammeverk med åpen kildekode vedlikeholdt av Montage Studio som konkurrerer med native SDK-er, men som likevel er lettere å lære.

Chaplin er en arkitektur for JavaScript-applikasjoner som bruker Backbone.js-biblioteket. Chaplin adresserer Backbones begrensninger ved å tilby en lett og fleksibel struktur som har velprøvde designmønstre og beste praksis.

Serenade.js er et rammeverk på klientsiden bygget på MVC-mønsteret. Det gjør det enkelt å lage rike klientsideapplikasjoner ved å frigjøre deg fra å måtte holde DOM oppdatert med dataene dine gjennom kraftige databindinger.

Prototype tar kompleksiteten ut av nettprogrammering på klientsiden. Bygget for å løse problemer i den virkelige verden, legger den til nyttige utvidelser til nettleserskriptmiljøet og gir elegante APIer rundt de klønete grensesnittene til Ajax og Document Object Model.

pyjs

pyjs er en Rich Internet Application (RIA) utviklingsplattform for både web og skrivebord. Med pyjs kan du skrive dine JavaScript-drevne nettapplikasjoner helt i Python.

jQWidgets gir en omfattende løsning for å bygge profesjonelle nettsider og mobilapper. Den er bygget utelukkende på åpne standarder og teknologier som HTML5, CSS, JavaScript og jQuery.

Rico er et JavaScript-rammeverk med åpen kildekode som brukes til å lage rike, svært interaktive nettapplikasjoner. Rico er basert på Prototype Javascript Framework og er utgitt under Apache-lisensen.

eyeballs.js er et slankt javascript-bibliotek designet for å sitte på toppen av et javascript-rammeverk, for eksempel jQuery eller Prototype.

Choco

Et deilig Javascript-nettverk laget i Belgia!

Junction-rammeverket med åpen kildekode er en konvensjon-over-konfigurasjon, som synkroniserer web-MVC-rammeverket for JavaScript.

KineticJS er et raskt, robust HTML5 Canvas Library som ikke lenger vedlikeholdes. Den siste stabile versjonen er v5.1.0, og den er ganske solid.

Rendr

Rendr er et lite bibliotek som lar deg kjøre Backbone.js-appene dine sømløst på både klienten og serveren. La nettserveren din vise fullstendige HTML-sider til en hvilken som helst dyplink i appen din, samtidig som du bevarer den raske følelsen til en tradisjonell Backbone.js-klientside MVC-app.

TerrificJS er et pent, smart stykke kode som lar deg modularisere grensesnittkoden ved kun å stole på navnekonvensjoner.

Atom

Atom er et kompakt JavaScript-rammeverk orientert mot moderne nettlesere, som gjør det mulig å støtte en ganske bred liste over funksjoner uten å ha mye krøp som er nødvendig for å implementere dem i gamle nettlesere.