{"id":13494015,"url":"https://github.com/avatsaev/angular-learning-resources","last_synced_at":"2025-04-04T07:08:39.533Z","repository":{"id":33686166,"uuid":"147674244","full_name":"avatsaev/angular-learning-resources","owner":"avatsaev","description":"Curated chronological list of learning resources for Angular, from complete beginner to advanced level","archived":false,"fork":false,"pushed_at":"2023-02-16T16:24:44.000Z","size":22,"stargazers_count":750,"open_issues_count":2,"forks_count":124,"subscribers_count":50,"default_branch":"master","last_synced_at":"2025-03-28T06:08:59.359Z","etag":null,"topics":["angular","javascript","ngrx","rxjs","tutorials","typescript"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/avatsaev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-09-06T13:00:30.000Z","updated_at":"2025-03-23T02:55:24.000Z","dependencies_parsed_at":"2024-10-31T08:41:41.939Z","dependency_job_id":null,"html_url":"https://github.com/avatsaev/angular-learning-resources","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-learning-resources","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-learning-resources/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-learning-resources/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avatsaev%2Fangular-learning-resources/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avatsaev","download_url":"https://codeload.github.com/avatsaev/angular-learning-resources/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247135144,"owners_count":20889421,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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"}},"keywords":["angular","javascript","ngrx","rxjs","tutorials","typescript"],"created_at":"2024-07-31T19:01:20.952Z","updated_at":"2025-04-04T07:08:39.499Z","avatar_url":"https://github.com/avatsaev.png","language":null,"readme":"# Angular learning resources\n\nCurated list of learning resources for Angular, from complete beginner to advanced level.\nEverything you need to learn in chronological order to become a professional Angular developer.\n\n# ⇒ Prerequisites \n\n### Javascript:\n\n- [JavaScript ES6 tutorial](https://codeburst.io/es6-tutorial-for-beginners-5f3c4e7960be)\n- [Principles of functional programming in JavaScript](https://flaviocopes.com/javascript-functional-programming/)\n- [Functional Programming with JavaScript](https://codeburst.io/functional-programming-in-javascript-e57e7e28c0e5)\n\n### TypeScript:\n\n- [Official Documentation](https://www.typescriptlang.org/docs/home.html)\n- [Official Handbook](https://www.typescriptlang.org/docs/handbook/basic-types.html)\n- [TS deepdive Gitbook by Basarat Syed](https://basarat.gitbooks.io/typescript/)\n- [Object Oriented Programming with TypeScript](http://rachelappel.com/write-object-oriented-javascript-with-typescript/)\n- [Functional programming with TypeScript](https://vsavkin.com/functional-typescript-316f0e003dc6)\n\n\n# ⇒ Beginner\n- [Getting started official tutorial](https://angular.io/tutorial)\n- [Official Docs](https://angular.io)\n- [Components \u0026 Templates](https://angular.io/guide/displaying-data)\n- [Component interaction](https://angular.io/guide/component-interaction)\n- [Structural Directives](https://angular.io/guide/structural-directives)\n- [Dependency Injection \u0026 Services](https://angular.io/guide/architecture-services)\n- [Programming Style guide](https://angular.io/guide/styleguide)\n\n\n# ⇒ Intermediate\n\n### Reactive programming - RxJS:\n- [Introduction to RxJS - RxJS Primer](https://www.learnrxjs.io/concepts/rxjs-primer.html)\n- [The introduction to reactive programming with RxJS](https://www.learnrxjs.io/)\n- [RxJS Video Course](https://www.youtube.com/watch?v=Tux1nhBPl_w)\n- [Learn RxJS - Organised API Reference](https://www.learnrxjs.io/)\n- [RxMarbles: Interactive diagrams of Rx Observables](http://rxmarbles.com/)\n- [RxJS Docs](https://rxjs-dev.firebaseapp.com/)\n\n### Going further with Angular:\n- [Managing projects with Angular CLI](https://github.com/angular/angular-cli/wiki)\n- [Angular HTTP Client](https://angular.io/guide/http)\n- [Reactive Forms](https://angular.io/guide/reactive-forms)\n- [Angular Routing \u0026 Navigation](https://angular.io/guide/router)\n- [Angular Material Component Library](https://material.angular.io/)\n- [Nebular Component Library](https://akveo.github.io/nebular/)\n- [Testing](https://angular.io/guide/testing)\n\n# ⇒ Advanced\n\n### State management:\n- [Simple and powerful state management with only Services and RxJS (for 90% of cases, this method of state management is more than enough)](https://dev.to/avatsaev/simple-state-management-in-angular-with-only-services-and-rxjs-41p8)\n- [NGRX - Angular state management library](https://github.com/ngrx/platform)\n- [Quick intro to Redux style state management with NGRX](https://www.youtube.com/watch?v=f97ICOaekNU)\n- [State management with NGRX tutorial](https://coursetro.com/posts/code/151/Angular-Ngrx-Store-Tutorial---Learn-Angular-State-Management)\n- [In depth introduction to NGRX/Redux state management](https://medium.com/@bencabanes/redux-introduction-with-ngrx-part-1-store-application-state-2c47c35376ea)\n- [NGRX advanced patterns \u0026 techniques](https://blog.nrwl.io/ngrx-patterns-and-techniques-f46126e2b1e5)\n\n#### Alternatives to NGRX:\n\n- [NGXS](https://github.com/ngxs/store)\n- [Akita](https://netbasal.gitbook.io/akita/entity-store/blog-posts)\n\n### Dependency injection:\n - [Advanced dependency injection](https://angular.io/guide/dependency-injection-providers)\n - [Dependency inversion](https://netbasal.com/demystifying-the-dependency-inversion-principle-in-angular-a2daca9b05ee)\n \n### Angular change detection engine:\n- [How change detection works](https://blog.thoughtram.io/angular/2016/02/22/angular-2-change-detection-explained.html)\n\n\n### Perfomance:\n- [Performance guide for Angular apps](https://blog.angular.io/3-tips-for-angular-runtime-performance-from-the-real-world-d467fbc8f66e)\n- [Optimizing performance in Angular apps](https://netbasal.com/optimizing-the-performance-of-your-angular-application-f222f1c16354)\n- [OnPush change detection strategy in details](https://netbasal.com/a-comprehensive-guide-to-angular-onpush-change-detection-strategy-5bac493074a4)\n\n### Angular libraries:\n\n- [Creating Angular libraries with Angular CLI](https://blog.angulartraining.com/create-your-own-libraries-with-angular-cli-7b434600bbb7)\n- [Publishing Angular component libraries](https://medium.com/@faxemaxee/building-and-publishing-angular-libraries-using-angular-cli-140057d21101)\n\n\n# Useful Blogs / Video courses / Youtube Channels / Example apps\n\n\u003ca href=\"https://ultimatecourses.com/courses/angular/ref/azero79/\" title=\"Ultimate Courses\"\u003e\u003cimg src=\"https://ultimatecourses.com/assets/img/banners/ultimate-angular-github.svg\" alt=\"Ultimate Courses\" /\u003e\u003c/a\u003e\n\n- [Angular Udemy video Course from, beginner to Pro level (~$10)](https://www.udemy.com/the-complete-guide-to-angular-2/)\n- [Angular Firebase - Quick short tutorials on advanced topics](https://www.youtube.com/channel/UCsBjURrPoezykLs9EqgamOA)\n- [Angular MIX - Youtube Channel](https://www.youtube.com/channel/UCnUpEUN4V3iJxoUximdr6Nw/videos)\n- [Discover Angular courses](https://bestcourses.io/results?q=angular\u0026size=n_20_n)\n- [Todd Motto - Youtube Channel](https://www.youtube.com/channel/UCNtFk-g4CCmXMYL4pYNmoEA/videos)\n- [Angular Connect - Youtube Channel](https://www.youtube.com/channel/UCzrskTiT_ObAk3xBkVxMz5g/videos)\n- [Free Angular courses from Coursetro - YouTube](http://www.youtube.com/user/designcourse)\n- [Todd Motto - Blog](https://toddmotto.com/)\n- [Angular Subreddit](https://www.reddit.com/r/Angular2/)\n- [Angular In Depth - Advanced understanding of inner workings](https://blog.angularindepth.com/)\n- [Netanel Basal - Advanced Practical Tutorials](https://netbasal.com/@NetanelBasal)\n- [Full Stack Contacts Book example app (Components, Services, Routing, Http, Forms, Lazy loading, Sockets, NGRX State management, NGRX HTTP+Socket.IO Side Effects management, NGRX Entity management...)](https://github.com/avatsaev/angular-contacts-app-example)\n\n\n\n\n\n","funding_links":[],"categories":["Awesome Angular [![Awesome TipeIO](https://img.shields.io/badge/Awesome%20Angular-@TipeIO-6C6AE7.svg)](https://github.com/gdi2290/awesome-angular) [![Awesome devarchy.com](https://img.shields.io/badge/Awesome%20Angular-@devarchy.com-86BDC1.svg)](https://github.com/brillout/awesome-angular-components)","Others"],"sub_categories":["Angular \u003ca id=\"angular\"\u003e\u003c/a\u003e"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favatsaev%2Fangular-learning-resources","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favatsaev%2Fangular-learning-resources","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favatsaev%2Fangular-learning-resources/lists"}