{"id":37181,"date":"2026-11-01T23:39:28","date_gmt":"2026-11-01T20:39:28","guid":{"rendered":"https:\/\/kamil-abzalov.com\/tutorials\/angular-web-application-development\/"},"modified":"2026-11-01T23:41:34","modified_gmt":"2026-11-01T20:41:34","slug":"angular-web-application-development","status":"publish","type":"post","link":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/","title":{"rendered":"Angular. Web Application Development"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; fullwidth=&#8221;on&#8221; admin_label=&#8221;Header&#8221; _builder_version=&#8221;4.20.0&#8243; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_direction=&#8221;163deg&#8221; background_color_gradient_stops=&#8221;rgba(0,0,0,0.02) 50%|#ffffff 50%&#8221; background_color_gradient_start=&#8221;rgba(0,0,0,0.02)&#8221; background_color_gradient_start_position=&#8221;50%&#8221; background_color_gradient_end=&#8221;#ffffff&#8221; background_color_gradient_end_position=&#8221;0%&#8221; background_image=&#8221;https:\/\/kamil-abzalov.com\/wp-content\/uploads\/2021\/12\/web-dev-03.png&#8221; parallax=&#8221;on&#8221; animation_style=&#8221;fade&#8221; collapsed=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_fullwidth_header title=&#8221;Angular. Web Application Development&#8221; content_max_width=&#8221;640px&#8221; _builder_version=&#8221;4.27.9&#8243; title_font=&#8221;Roboto|700|||||||&#8221; title_line_height=&#8221;1.5em&#8221; content_font=&#8221;Roboto||||||||&#8221; content_font_size=&#8221;16px&#8221; content_line_height=&#8221;2em&#8221; subhead_font=&#8221;|700||on|||||&#8221; subhead_font_size=&#8221;14px&#8221; subhead_letter_spacing=&#8221;2px&#8221; subhead_line_height=&#8221;2em&#8221; background_color=&#8221;rgba(0,0,0,0)&#8221; custom_button_one=&#8221;on&#8221; button_one_text_size=&#8221;14px&#8221; button_one_text_color=&#8221;#ffffff&#8221; button_one_bg_color=&#8221;#0054ff&#8221; button_one_border_width=&#8221;14px&#8221; button_one_border_color=&#8221;rgba(0,0,0,0)&#8221; button_one_border_radius=&#8221;0px&#8221; button_one_letter_spacing=&#8221;2px&#8221; button_one_font=&#8221;|600||on|||||&#8221; button_one_icon=&#8221;&#x39;||divi||400&#8243; button_one_on_hover=&#8221;off&#8221; custom_button_two=&#8221;on&#8221; button_two_text_size=&#8221;14px&#8221; button_two_text_color=&#8221;#0054ff&#8221; button_two_bg_color=&#8221;rgba(255,255,255,0)&#8221; button_two_border_width=&#8221;12px&#8221; button_two_border_color=&#8221;rgba(0,0,0,0)&#8221; button_two_border_radius=&#8221;0px&#8221; button_two_letter_spacing=&#8221;2px&#8221; button_two_font=&#8221;|600||on|||||&#8221; button_two_icon=&#8221;&#x39;||divi||400&#8243; button_two_on_hover=&#8221;off&#8221; background_layout=&#8221;light&#8221; custom_margin=&#8221;|||&#8221; custom_padding=&#8221;6vw||6vw||false|false&#8221; animation_style=&#8221;zoom&#8221; animation_intensity_zoom=&#8221;-5%&#8221; title_font_size_tablet=&#8221;&#8221; title_font_size_phone=&#8221;25px&#8221; title_font_size_last_edited=&#8221;on|desktop&#8221; box_shadow_style_button_two=&#8221;preset1&#8243; box_shadow_vertical_button_two=&#8221;0px&#8221; box_shadow_blur_button_two=&#8221;0px&#8221; box_shadow_spread_button_two=&#8221;2px&#8221; box_shadow_color_button_two=&#8221;#0054ff&#8221; button_one_letter_spacing_hover=&#8221;2px&#8221; button_two_letter_spacing_hover=&#8221;2px&#8221; global_colors_info=&#8221;{}&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;on&#8221; button_one_letter_spacing__hover=&#8221;2px&#8221; button_two_letter_spacing__hover_enabled=&#8221;on&#8221; button_two_letter_spacing__hover=&#8221;2px&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221;][\/et_pb_fullwidth_header][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.21.2&#8243; _module_preset=&#8221;default&#8221; collapsed=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_row _builder_version=&#8221;4.21.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.21.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_dcsbcm_divi_breadcrumbs_module homebreadcrumbtext=&#8221;Home&#8221; hide_currentbreadcrumb=&#8221;off&#8221; _builder_version=&#8221;4.27.9&#8243; fontsbreadcrumbs_font_size_tablet=&#8221;51&#8243; fontsbreadcrumbs_line_height_tablet=&#8221;2&#8243; fontsseperator_font_size_tablet=&#8221;51&#8243; fontsseperator_line_height_tablet=&#8221;2&#8243; fontsbreadcrumblinks_font_size_tablet=&#8221;51&#8243; fontsbreadcrumblinks_line_height_tablet=&#8221;2&#8243; z_index_tablet=&#8221;500&#8243; fontsbreadcrumbs_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; fontsbreadcrumbs_text_shadow_vertical_length_tablet=&#8221;0px&#8221; fontsbreadcrumbs_text_shadow_blur_strength_tablet=&#8221;1px&#8221; fontsseperator_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; fontsseperator_text_shadow_vertical_length_tablet=&#8221;0px&#8221; fontsseperator_text_shadow_blur_strength_tablet=&#8221;1px&#8221; fontsbreadcrumblinks_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; fontsbreadcrumblinks_text_shadow_vertical_length_tablet=&#8221;0px&#8221; fontsbreadcrumblinks_text_shadow_blur_strength_tablet=&#8221;1px&#8221; box_shadow_horizontal_tablet=&#8221;0px&#8221; box_shadow_vertical_tablet=&#8221;0px&#8221; box_shadow_blur_tablet=&#8221;40px&#8221; box_shadow_spread_tablet=&#8221;0px&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_dcsbcm_divi_breadcrumbs_module][et_pb_text _builder_version=&#8221;4.27.9&#8243; z_index_tablet=&#8221;500&#8243; text_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; text_text_shadow_vertical_length_tablet=&#8221;0px&#8221; text_text_shadow_blur_strength_tablet=&#8221;1px&#8221; link_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; link_text_shadow_vertical_length_tablet=&#8221;0px&#8221; link_text_shadow_blur_strength_tablet=&#8221;1px&#8221; ul_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; ul_text_shadow_vertical_length_tablet=&#8221;0px&#8221; ul_text_shadow_blur_strength_tablet=&#8221;1px&#8221; ol_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; ol_text_shadow_vertical_length_tablet=&#8221;0px&#8221; ol_text_shadow_blur_strength_tablet=&#8221;1px&#8221; quote_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; quote_text_shadow_vertical_length_tablet=&#8221;0px&#8221; quote_text_shadow_blur_strength_tablet=&#8221;1px&#8221; header_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; header_text_shadow_vertical_length_tablet=&#8221;0px&#8221; header_text_shadow_blur_strength_tablet=&#8221;1px&#8221; header_2_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; header_2_text_shadow_vertical_length_tablet=&#8221;0px&#8221; header_2_text_shadow_blur_strength_tablet=&#8221;1px&#8221; header_3_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; header_3_text_shadow_vertical_length_tablet=&#8221;0px&#8221; header_3_text_shadow_blur_strength_tablet=&#8221;1px&#8221; header_4_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; header_4_text_shadow_vertical_length_tablet=&#8221;0px&#8221; header_4_text_shadow_blur_strength_tablet=&#8221;1px&#8221; header_5_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; header_5_text_shadow_vertical_length_tablet=&#8221;0px&#8221; header_5_text_shadow_blur_strength_tablet=&#8221;1px&#8221; header_6_text_shadow_horizontal_length_tablet=&#8221;0px&#8221; header_6_text_shadow_vertical_length_tablet=&#8221;0px&#8221; header_6_text_shadow_blur_strength_tablet=&#8221;1px&#8221; box_shadow_horizontal_tablet=&#8221;0px&#8221; box_shadow_vertical_tablet=&#8221;0px&#8221; box_shadow_blur_tablet=&#8221;40px&#8221; box_shadow_spread_tablet=&#8221;0px&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>This article contains links to a series of videos on developing an Angular application (including writing unit and e2e tests). The application code is available via a <a href=\"https:\/\/github.com\/kamabzalov\/simple-e-commerce\" target=\"_blank\" rel=\"noopener\">link to the repository<\/a>.<\/p>\n<p>[\/et_pb_text][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=qCfRNz5BMJY&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=t_VooZeCE3g&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=rP86XU34tCA&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=TpYqq-0FAIc&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=jz32WVZkZLI&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=q9UHxPV5AOY&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=t9aNls_NCZs&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=r_Qkpmg_9Uc&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=ZSNXWvp980o&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=rHw3H3mKowQ&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=daXmKIsff28&#8243; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=NnqEREohuRY&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=0tO0H-PSbgw&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=dErb2Tkd4uo&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=YYb20xVTy_w&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_video src=&#8221;https:\/\/www.youtube.com\/watch?v=tl1isJx9sNU&#8221; disabled_on=&#8221;off|off|off&#8221; _builder_version=&#8221;4.27.9&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_video][et_pb_comments _builder_version=&#8221;4.21.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_comments][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This article contains links to a series of videos on developing an Angular application (including writing unit and e2e tests). The application code is available via a link to the repository.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[256,219],"tags":[],"class_list":["post-37181","post","type-post","status-publish","format-standard","hentry","category-javascript","category-tutorials"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Angular. Web Application Development - Kamil Abzalov&#039;s site<\/title>\n<meta name=\"description\" content=\"A collection of videos on Angular application development, covering everything from building components and using modern Angular features to writing unit and E2E tests. Practical tutorials will help you master the development process, testing strategies, and techniques for improving Angular application quality.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Angular. Web Application Development\" \/>\n<meta property=\"og:description\" content=\"A collection of videos on Angular application development, covering everything from building components and using modern Angular features to writing unit and E2E tests. Practical tutorials will help you master the development process, testing strategies, and techniques for improving Angular application quality.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/\" \/>\n<meta property=\"og:site_name\" content=\"\u0441\u0430\u0439\u0442 \u041a\u0430\u043c\u0438\u043b\u044f \u0410\u0431\u0437\u0430\u043b\u043e\u0432\u0430\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/kamabzalov\" \/>\n<meta property=\"article:published_time\" content=\"2026-11-01T20:39:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-11-01T20:41:34+00:00\" \/>\n<meta name=\"author\" content=\"Kamil&#039; Abzalov\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@kamabzalov\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kamil&#039; Abzalov\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/\"},\"author\":{\"name\":\"Kamil' Abzalov\",\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/#\\\/schema\\\/person\\\/9c53360f21b83306ba40c2231573c600\"},\"headline\":\"Angular. Web Application Development\",\"datePublished\":\"2026-11-01T20:39:28+00:00\",\"dateModified\":\"2026-11-01T20:41:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/\"},\"wordCount\":1321,\"commentCount\":0,\"articleSection\":[\"JavaScript\",\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/\",\"url\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/\",\"name\":\"Angular. Web Application Development - Kamil Abzalov's site\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/#website\"},\"datePublished\":\"2026-11-01T20:39:28+00:00\",\"dateModified\":\"2026-11-01T20:41:34+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/#\\\/schema\\\/person\\\/9c53360f21b83306ba40c2231573c600\"},\"description\":\"A collection of videos on Angular application development, covering everything from building components and using modern Angular features to writing unit and E2E tests. Practical tutorials will help you master the development process, testing strategies, and techniques for improving Angular application quality.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/tutorials\\\/javascript\\\/angular-web-application-development\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\",\"item\":\"https:\\\/\\\/kamil-abzalov.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Angular. Web Application Development\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/#website\",\"url\":\"https:\\\/\\\/kamil-abzalov.com\\\/\",\"name\":\"\u0441\u0430\u0439\u0442 \u041a\u0430\u043c\u0438\u043b\u044f \u0410\u0431\u0437\u0430\u043b\u043e\u0432\u0430\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/kamil-abzalov.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/kamil-abzalov.com\\\/#\\\/schema\\\/person\\\/9c53360f21b83306ba40c2231573c600\",\"name\":\"Kamil' Abzalov\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3ad2daebcb3a4d03f8573b49054a003cd26a151ecc58ccfccc75b823131d1ead?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3ad2daebcb3a4d03f8573b49054a003cd26a151ecc58ccfccc75b823131d1ead?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3ad2daebcb3a4d03f8573b49054a003cd26a151ecc58ccfccc75b823131d1ead?s=96&d=mm&r=g\",\"caption\":\"Kamil' Abzalov\"},\"sameAs\":[\"https:\\\/\\\/kamil-abzalov.com\\\/\",\"https:\\\/\\\/www.facebook.com\\\/kamabzalov\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/kamabzalov\",\"https:\\\/\\\/x.com\\\/kamabzalov\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/kamabzalov\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Angular. Web Application Development - Kamil Abzalov's site","description":"A collection of videos on Angular application development, covering everything from building components and using modern Angular features to writing unit and E2E tests. Practical tutorials will help you master the development process, testing strategies, and techniques for improving Angular application quality.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/","og_locale":"en_US","og_type":"article","og_title":"Angular. Web Application Development","og_description":"A collection of videos on Angular application development, covering everything from building components and using modern Angular features to writing unit and E2E tests. Practical tutorials will help you master the development process, testing strategies, and techniques for improving Angular application quality.","og_url":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/","og_site_name":"\u0441\u0430\u0439\u0442 \u041a\u0430\u043c\u0438\u043b\u044f \u0410\u0431\u0437\u0430\u043b\u043e\u0432\u0430","article_author":"https:\/\/www.facebook.com\/kamabzalov","article_published_time":"2026-11-01T20:39:28+00:00","article_modified_time":"2026-11-01T20:41:34+00:00","author":"Kamil' Abzalov","twitter_card":"summary_large_image","twitter_creator":"@kamabzalov","twitter_misc":{"Written by":"Kamil' Abzalov","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/#article","isPartOf":{"@id":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/"},"author":{"name":"Kamil' Abzalov","@id":"https:\/\/kamil-abzalov.com\/#\/schema\/person\/9c53360f21b83306ba40c2231573c600"},"headline":"Angular. Web Application Development","datePublished":"2026-11-01T20:39:28+00:00","dateModified":"2026-11-01T20:41:34+00:00","mainEntityOfPage":{"@id":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/"},"wordCount":1321,"commentCount":0,"articleSection":["JavaScript","Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/","url":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/","name":"Angular. Web Application Development - Kamil Abzalov's site","isPartOf":{"@id":"https:\/\/kamil-abzalov.com\/#website"},"datePublished":"2026-11-01T20:39:28+00:00","dateModified":"2026-11-01T20:41:34+00:00","author":{"@id":"https:\/\/kamil-abzalov.com\/#\/schema\/person\/9c53360f21b83306ba40c2231573c600"},"description":"A collection of videos on Angular application development, covering everything from building components and using modern Angular features to writing unit and E2E tests. Practical tutorials will help you master the development process, testing strategies, and techniques for improving Angular application quality.","breadcrumb":{"@id":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kamil-abzalov.com\/en\/tutorials\/javascript\/angular-web-application-development\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","item":"https:\/\/kamil-abzalov.com\/en\/"},{"@type":"ListItem","position":2,"name":"Angular. Web Application Development"}]},{"@type":"WebSite","@id":"https:\/\/kamil-abzalov.com\/#website","url":"https:\/\/kamil-abzalov.com\/","name":"\u0441\u0430\u0439\u0442 \u041a\u0430\u043c\u0438\u043b\u044f \u0410\u0431\u0437\u0430\u043b\u043e\u0432\u0430","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kamil-abzalov.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/kamil-abzalov.com\/#\/schema\/person\/9c53360f21b83306ba40c2231573c600","name":"Kamil' Abzalov","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/3ad2daebcb3a4d03f8573b49054a003cd26a151ecc58ccfccc75b823131d1ead?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/3ad2daebcb3a4d03f8573b49054a003cd26a151ecc58ccfccc75b823131d1ead?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3ad2daebcb3a4d03f8573b49054a003cd26a151ecc58ccfccc75b823131d1ead?s=96&d=mm&r=g","caption":"Kamil' Abzalov"},"sameAs":["https:\/\/kamil-abzalov.com\/","https:\/\/www.facebook.com\/kamabzalov","https:\/\/www.linkedin.com\/in\/kamabzalov","https:\/\/x.com\/kamabzalov","https:\/\/www.youtube.com\/user\/kamabzalov"]}]}},"_links":{"self":[{"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/posts\/37181","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/comments?post=37181"}],"version-history":[{"count":3,"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/posts\/37181\/revisions"}],"predecessor-version":[{"id":37187,"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/posts\/37181\/revisions\/37187"}],"wp:attachment":[{"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/media?parent=37181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/categories?post=37181"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kamil-abzalov.com\/en\/wp-json\/wp\/v2\/tags?post=37181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}