{"id":41566,"url":"https://github.com/serhiisol/awesome-js","name":"awesome-js","description":"Сurated list of awesome js extensions, tutorials, resources and other nice things","projects_count":115,"last_synced_at":"2026-08-20T07:00:20.001Z","repository":{"id":72136760,"uuid":"70904867","full_name":"serhiisol/awesome-js","owner":"serhiisol","description":"Сurated list of awesome js extensions, tutorials, resources and other nice things","archived":false,"fork":false,"pushed_at":"2021-10-25T13:48:45.000Z","size":13,"stargazers_count":35,"open_issues_count":1,"forks_count":6,"subscribers_count":7,"default_branch":"master","last_synced_at":"2026-07-31T19:04:36.136Z","etag":null,"topics":["angular","html","javascript","nodejs","react"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/serhiisol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-10-14T11:41:01.000Z","updated_at":"2023-03-13T01:50:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"63f514db-7221-4eb6-9c9e-6fac3033bf0c","html_url":"https://github.com/serhiisol/awesome-js","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/serhiisol/awesome-js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serhiisol%2Fawesome-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serhiisol%2Fawesome-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serhiisol%2Fawesome-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serhiisol%2Fawesome-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/serhiisol","download_url":"https://codeload.github.com/serhiisol/awesome-js/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serhiisol%2Fawesome-js/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36789026,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-06T04:43:03.162Z","status":"online","status_checked_at":"2026-08-20T02:00:06.210Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"created_at":"2024-01-13T21:18:10.732Z","updated_at":"2026-08-20T07:00:20.002Z","primary_language":null,"list_of_lists":false,"displayable":true,"categories":["NodeJS","Angular2","RxJS","JS","Angular","React","HTML"],"sub_categories":[],"readme":"# Awesome JavaScript\nСurated list of awesome js extensions, tutorials, resources and other nice things\n\n## Help us to make this list better!\n\n## Contents\n\n1. [NodeJS](#nodejs)\n2. [Rxjs](#rxjs)\n3. [Angular2+](#angular2)\n4. [AngularJS](#angular)\n5. [ReactJS](#react)\n6. [Javascript](#js)\n7. [HTML/CSS](#html)\n\n\n## NodeJS\n#### Tutorials\n* [Input Validation in Express with express-validator](https://booker.codes/input-validation-in-express-with-express-validator/)\n* [How to keep your node processes running forever](http://blog.bithound.io/how-to-keep-your-node-processes-running-forever/)\n* [Debugging with Node](http://krasimirtsonev.com/blog/article/debugging-with-node)\n* [Adding Social Sharing in a Node.js Single-Page Application](http://code.tutsplus.com/tutorials/adding-social-sharing-in-a-nodejs-single-page-application--cms-25530)\n* [Web Crawling with Node, PhantomJS and Horseman](https://www.sitepoint.com/web-crawling-node-phantomjs-horseman/)\n* [mongoose: Referencing schema in properties or arrays](https://alexanderzeitler.com/articles/mongoose-referencing-schema-in-properties-and-arrays/)\n* [SBoudrias/Inquirer.js: A collection of common interactive command line user interfaces](https://github.com/SBoudrias/Inquirer.js)\n* PostgreSQL and NodeJS: [PostgreSQL Exercises](https://www.pgexercises.com/gettingstarted.html), [PostgreSQL and NodeJS](http://mherman.org/blog/2015/02/12/postgresql-and-nodejs/#.Vh-3vYSGX8v)\n* [Building an SMS Weather and Image Bot](http://blog.bandwidth.com/building-a-sms-weather-and-image-bot/)\n* [Build a Twitch.tv Chat Bot in 10 Minutes with Node.js - YouTube video](https://www.youtube.com/watch?v=K6N9dSMb7sM)\n* [Build a Facebook Chat Bot](https://www.smashingmagazine.com/2016/10/how-to-develop-a-chat-bot-with-node-js/)\n* [Communicating with Socket.io](https://openclassrooms.com/courses/ultra-fast-applications-using-node-js/socket-io-let-s-go-to-real-time)\n* [Running Express, Koa And Hapi On HTTP/2](http://ivanjov.com/running-express-koa-and-hapi-on-http-2/)\n* [Create a Continuous Deployment Pipeline with Node.js and Jenkins](https://blog.couchbase.com/create-continuous-deployment-pipeline-nodejs-jenkins/)\n\n##### Heroku\n* [10 Habits of a Happy Node Hacker (2016) - Heroku](https://blog.heroku.com/node-habits-2016)\n* [Using Heroku with Node.js: Production-Ready Application Checklist](https://community.risingstack.com/using-heroku-node-js-production-ready-application-checklist/)\n* [WebSocket Security](https://devcenter.heroku.com/articles/websocket-security)\n* [Deploy a javascript/Node app to Heroku in 20 minutes](http://vitomd.com/blog/coding/deploy-a-javascript-node-app-to-heroku-in-20-minutes/)\n\n##### Docker\n* [How to Dockerize your Node application](https://lucamezzalira.com/2016/04/03/how-to-dockerize-your-node-application/)\n* [Building a photo search in a weekend - Elasticsearch + Docker](http://blog.sandeepchivukula.com/posts/2016/03/06/photo-search/)\n* [https://www.jjude.com/hapijs-on-docker/](https://www.jjude.com/hapijs-on-docker/)\n\n##### Performance\n* [Optimizing Node.js Application Concurrency - Heroku](https://devcenter.heroku.com/articles/node-concurrency)\n* [Accelerating Node.js applications with HTTP/2 Server Push](https://blog.cloudflare.com/accelerating-node-js-applications-with-http-2-server-push/)\n* [How to Create a Node.js Cluster for Speeding Up Your Apps](https://www.sitepoint.com/how-to-create-a-node-js-cluster-for-speeding-up-your-apps/)\n* [(More than) one million requests per second in Node.js](https://github.com/uWebSockets/uWebSockets/wiki/(More-than)-one-million-requests-per-second-in-Node.js)\n\n##### API\n* [Clusters](https://nodejs.org/api/cluster.html)\n\n##### Authentication\n* [Implement Access Control in Node.js — Security and Node.js](https://blog.nodeswat.com/implement-access-control-in-node-js-8567e7b484d1#.lyhwbwg1n)\n* [Connect your app to Google](https://auth0.com/docs/connections/social/google)\n* [Easy Node Authentication: Google](https://scotch.io/tutorials/easy-node-authentication-google)\n* [Social Authentication in Node.js With Passport](http://mherman.org/blog/2015/09/26/social-authentication-in-node-dot-js-with-passport/#.V6BwG2W5B0I)\n* [Talking to OAuth2 Services with Node.js - Stormpath](https://stormpath.com/blog/talking-to-oauth2-services-with-nodejs/)\n* [Node, Passport, and Postgres](http://mherman.org/blog/2016/09/25/node-passport-and-postgres/)\n\n##### Beginners\n* [Node.js Tutorials for Beginners - YouTube PLaylist](https://www.youtube.com/playlist?list=PL6gx4Cwl9DGBMdkKFn3HasZnnAqVjzHn_)\n* [Node Hero - Getting Started With Node.js](https://blog.risingstack.com/node-hero-tutorial-getting-started-with-node-js) and [Node.js at Scale - npm Best Practices](https://blog.risingstack.com/nodejs-at-scale-npm-best-practices/)\n* [MongoDB for Beginners Tutorials - YouTube Playlist](https://www.youtube.com/playlist?list=PL6gx4Cwl9DGDQ5DrbIl20Zu9hx1IjeVhO)\n\n\n#### Code style / Best Practices\n* [Microsoft/nodejs-guidelines: Tips, tricks, and resources for working with Node.js, and the start of an ongoing conversation on how we can improve the Node.js experience on Microsoft platforms](https://github.com/Microsoft/nodejs-guidelines)\n* [10 Best Practices for Writing Node.js REST APIs](https://blog.risingstack.com/10-best-practices-for-writing-node-js-rest-apis/)\n* [13 best practices to secure your web application](http://nodewebapps.com/2017/01/03/13-security-best-practices-for-your-web-application)\n* [Checklist: Node.JS production best practices](http://goldbergyoni.com/checklist-best-practice-of-node-js-in-production/)\n\n#### Resources\n* [Node.js client library for Google Maps API Web Services](https://github.com/googlemaps/google-maps-services-js)\n* [Indexr - Automated dynamic indexes for your ES6+ source code.](https://www.npmjs.com/package/indexr)\n* [A CLI dashboard for webpack dev server](https://github.com/FormidableLabs/webpack-dashboard)\n* [nodejs-dashboard](https://github.com/FormidableLabs/nodejs-dashboard)\n* [Promise-based portable interface for running shell commands](https://github.com/asyncmax/pshell)\n* [Functional Microservice Request Library](https://github.com/poly/f)\t\t\n* [Monitor Nodejs - Datadog](https://www.datadoghq.com/monitor-nodejs/)\t\n* [Authenticate socket.io incoming connections with JWTs](https://github.com/auth0/socketio-jwt)\n\n## RxJS\n* [The introduction to Reactive Programming you've been missing](https://gist.github.com/staltz/868e7e9bc2a7b8c1f754)\n* [RxJS Design Guidelines](https://github.com/Reactive-Extensions/RxJS/tree/master/doc/designguidelines)\n* [A collection of awesome RxJS resources](https://github.com/ichpuchtli/awesome-rxjs)\n\n## Angular2\n#### Tutorials\n* [Angular 2 + React Native](http://angularjs.blogspot.com/2016/04/angular-2-react-native.html?view=flipcard)\n* [Angular 2 education list](https://github.com/timjacobi/angular2-education)\n* [Using Angular 2 CLI for faster angular 2 projects](https://scotch.io/tutorials/use-the-angular-cli-for-faster-angular-2-projects)\n* [Hacking Angular2: Binding Multiple DOM Events](https://medium.com/@TheLarkInn/hacking-angular2-binding-multiple-dom-events-f781b14ef676#.gxftzbeaz)\n* [NG-NL 2016: Pascal Precht - Angular 2 Change Detection Explained](https://www.youtube.com/watch?v=CUxD91DWkGM)\n* [ViewChildren and ContentChildren in Angular 2](http://blog.mgechev.com/2016/01/23/angular2-viewchildren-contentchildren-difference-viewproviders/)\n* [Angular 2 Form Validation](https://medium.com/@daviddentoom/angular-2-form-validation-9b26f73fcb81#.52n8wf30g)\n* [Angular 2 form fundamentals: template-driven forms](https://toddmotto.com/angular-2-forms-template-driven)\n* [How to Deal with Different Form Controls in Angular 2](https://scotch.io/tutorials/how-to-deal-with-different-form-controls-in-angular-2)\n* [Equivalent of $compile in Angular 2](http://stackoverflow.com/questions/34784778/equivalent-of-compile-in-angular-2)\n* [How to build Angular 2 apps using Observable Data Services - Pitfalls to avoid](http://blog.angular-university.io/how-to-build-angular2-apps-using-rxjs-observable-data-services-pitfalls-to-avoid/)\n* [Testing Angular 2 Apps](https://developers.livechatinc.com/blog/testing-angular-2-apps-part-1-beginning/), [and E2E testing](https://blog.jscrambler.com/getting-started-with-angular-2-end-to-end-testing/)\n* [Routing in Angular 2 Apps](http://blog.thoughtram.io/angular/2016/06/14/routing-in-angular-2-revisited.html)\n* [Build a Material Design app with Angular 2](http://www.creativebloq.com/how-to/build-a-material-design-app-with-angular-2)\n* [Angular 2 Testing In Depth: Services](https://auth0.com/blog/angular-2-testing-in-depth-services)\n\n##### Beginners\n* [A Beginners Guide to Ionic 2 Mobile Applications](http://x-team.com/2016/08/beginners-guide-ionic-2-mobile-applications/)\n\n#### Performance\n* [Optimizing Angular 2 Apps - YouTube video](https://www.youtube.com/watch?v=_VnV7R4Ncwc)\n* [5 Rookie Mistakes to Avoid with Angular 2](http://angularjs.blogspot.de/2016/04/5-rookie-mistakes-to-avoid-with-angular.html)\n* [Building an Angular Application for Production](http://blog.mgechev.com/2016/06/26/tree-shaking-angular2-production-build-rollup-javascript/)\n* [MAKING YOUR ANGULAR APPS FAST by Thoughtram](https://blog.thoughtram.io/angular/2017/02/02/making-your-angular-app-fast.html)\n* [Angular in Production](http://blog.mgechev.com/2017/01/17/angular-in-production/)\n\n\n#### Authentication\n* [Angular 2 Series - Tutorials by Auth0](https://auth0.com/blog/2015/09/03/angular2-series-working-with-pipes/)\n* [Angular 2 authentication with Auth0 and NodeJS](https://toddmotto.com/angular-2-authentication)\n* [Introducing angular2-jwt: A Library for Angular 2 Authentication](https://auth0.com/blog/introducing-angular2-jwt-a-library-for-angular2-authentication/)\n* [Build your Angular 2 App: From Auth to calling an API](https://auth0.com/blog/2015/05/14/creating-your-first-real-world-angular-2-app-from-authentication-to-calling-an-api-and-everything-in-between/)\n\n#### Code style\n* [Official Angular2 team code style](https://angular.io/styleguide)\n* [Rangle Angular 2 AoT SandBox](https://github.com/rangle/angular-2-aot-sandbox#current-status)\n\n#### Resources\n* [Angular Augury](https://augury.angular.io/)\n* [Codelyzer](https://github.com/mgechev/codelyzer)\n* [Angular CLI](https://cli.angular.io/)\n* [Angular Universal](https://universal.angular.io/)\n* [Angular Mobile Toolkit](https://mobile.angular.io/)\n* [Angular Material](https://material.angular.io/)\n\n\n## Angular\n#### Tutorials\n* [Migrating Angular 1 Applications to Angular 2 in 5 Simple Steps](https://vsavkin.com/migrating-angular-1-applications-to-angular-2-in-5-simple-steps-40621800a25b#.es2i7uh8k)\n* [AngularJS and SEO](http://www.yearofmoo.com/2012/11/angularjs-and-seo.html)\n* [Scalable Angular apps are tricky](https://medium.com/@bluepnume/sane-scalable-angular-apps-are-tricky-but-not-impossible-lessons-learned-from-paypal-checkout-c5320558d4ef#.5mmx90vqn)\n* [Anatomy of a large Angular application — Medium](https://medium.com/@bojzi/anatomy-of-a-large-angular-application-f098e5e36994)\n* [Form-Based Directives in AngularJS](https://www.sitepoint.com/form-based-directives-angularjs/)\n* [Creating Angular 2 Style Components Using Angular 1](http://blog.rangle.io/angular2-components/)\n* [AngularJS Authentication Screencast](https://auth0.com/blog/angularjs-authentication-screencast-series-part-1/)\n\n#### Performance\n* [AngularJS Performance in Large Applications](https://www.airpair.com/angularjs/posts/angularjs-performance-large-applications)\n* [AngularJS Performance Tips](http://ng-perf.com)\n* [Ultimate AngularJS and Ionic performance cheat sheet](http://julienrenaux.fr/2015/08/24/ultimate-angularjs-and-ionic-performance-cheat-sheet/)\n\n#### Code style\n* [AngularJS Best Practices: Directory Structure | Scotch](https://scotch.io/tutorials/angularjs-best-practices-directory-structure)\n* [Angular Styleguide by John Papa](https://github.com/johnpapa/angular-styleguide)\n\n\n## React\n#### Tutorials\n* [React JS Tutorial for Beginners Playlist](https://www.youtube.com/playlist?list=PL6gx4Cwl9DGBhLZx_5C-jqECBE4HIID_k)\n* [Build a React + Flux App with User Authentication](https://scotch.io/tutorials/build-a-react-flux-app-with-user-authentication)\n* [React with Webpack + Meteor as a backend](http://julian.io/react-with-webpack-meteor-as-a-backend/)\n* [React Tutorial: Cloning Yelp](https://www.fullstackreact.com/articles/react-tutorial-cloning-yelp/)\n* [How to Create a Redux-Form with Validation and Initialized Values](http://www.davidmeents.com/create-redux-form-validation-initialized-values/)\n\n##### Beginners\n* [Bootstrapping a React project](https://auth0.com/blog/bootstrapping-a-react-project/)\n\n#### Code style\n* [React.js Best Practices for 2016](https://blog.risingstack.com/react-js-best-practices-for-2016/)\n\n#### Resources\n* [HTML5 Drag and Drop File Upload React Component - GitHub Gist](https://gist.github.com/realseanp/cefe1727533619f340bb2aee5e1339af?cache=off)\n\n\n## JS\n#### Tutorials\n* [Prototypal Inheritance in JavaScript](https://medium.com/@kevincennis/prototypal-inheritance-781bccc97edb)\n* [An Introduction to JavaScript ES6 Iterators](https://strongloop.com/strongblog/introduction-to-es6-iterators/)\n* [Understanding Reactive Programming and RxJS](https://auth0.com/blog/understanding-reactive-programming-and-rxjs/)\n* [5 Brilliant Ways to Lazy Load Images For Faster Page Loads](http://blog.dynamicdrive.com/5-brilliant-ways-to-lazy-load-images-for-faster-page-loads/)\n\n#### Resources\n* [CSV Parser for JavaScript](http://papaparse.com)\n* [Optimize a JavaScript file for faster initial load by wrapping eagerly-invoked functions](https://github.com/nolanlawson/optimize-js)\n* [clipboard.js - A modern approach to copy text to clipboard](https://clipboardjs.com)\n\n#### Code style\n* [Microsoft TypeScript Coding guidelines](https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines)\n* [Airbnb JavaScript Style Guide()](https://github.com/airbnb/javascript)\n* [ryanmcdermott/clean-code-javascript](https://github.com/ryanmcdermott/clean-code-javascript)\n\n## HTML\n#### Tutorials\n* [Instagram-style filters in HTML5 Canvas](https://www.viget.com/articles/instagram-style-filters-in-html5-canvas)\n#### Code style\n* [Code Guide by @mdo - HTML/CSS Guidelines](http://codeguide.co)\n","projects_url":"https://awesome.ecosyste.ms/api/v1/lists/serhiisol%2Fawesome-js/projects"}