Овладейте сразу двумя популярными фреймворками
и получите комплексный опыт Full-Stack-разработки

Laravel & Angular

Создание CRM-системы

Подойдёт даже для новичков

Back-End на Laravel/PHP

Full-Stack-проект в портфолио

Front-End на Angular/TypeScript

Курс для вас если

Вы – новичок и не можете определиться с направлением: Front-End, Back-End или Full-Stack?

Хотите изучить последние версии сразу двух наиболее популярных фреймворков для фронтенда и бэкенда?

Желаете испытать себя на большом Full-Stack-проекте и окунуться в практику?

Хотите овладеть мега-популярным и востребованным языком TypeScript?

Характеристики курса

3 место в списке самых востребованных IT-профессий*

55.000 рублей медианная зарплата Junior Full-Stack-Developer в России**

21.000 гривен медианная зарплата Junior Full-Stack-Developer в Украине***

* – по данным luckyhunter.io.
** – по данным hh.ru и «Хабр Карьера», за вторую половину 2020 года.
*** – по данным сообщества программистов DOU, за вторую половину 2020 года.

Станьте Full-Stack-разработчиком!

Изучите всю «механику» современной Full-Stack-разработки.

Овладейте механизмами взаимодействия бэкенда и фронтенда.

Получите новый опыт и прокачайте востребованные на рынке труда навыки.

Овладейте на практике сразу двумя суперпопулярными фреймворками: Laravel и Angular.

Повторяйте по шагам за профессиональным разработчиком, создайте современное Full-Stack-приложение и украсьте им своё портфолио.

Webformyself представляет новый комплексный видео курс

Laravel + Angular

Создание CRM-системы

Курс вам подойдет, если вы:

Front-End-разработчик

Подтяните серверную разработку в Laravel и повысьте общую стоимость своих услуг

Back-End-разработчик

Освойте клиентскую разработку в Angular, овладейте азами трендового языка TypeScript

Full-Stack-разработчик

Углубляйте свои знания и навыки, познакомьтесь с востребованным стеком «Laravel + Angular»

Вебмастер - новичок

Проверьте себя на реальном проекте от А до Я и выбирайте направление развития

Почему стоит приобрести этот курс

Узнаете, как овладеть востребованными на рынке комплексными знаниями.

Возможность получить опыт Full-Stak-разработчика: включая полноценное овладение Front-End- и Back-End-разработкой.

В рамках одного курса изучите стек сразу из двух наиболее востребованных бэкенд- и фронтенд-фреймворков и всю скрытую «механику» их взаимодействия.

В курсе изучаются последние (на момент выхода) версии фреймворков: Laravel и Angular.

Получите крутые бонусы – по стоимости сопоставимые с основным курсом.

Комплексные знания и навыки*

После вдумчивой самостоятельной проработки курса у вас будет чёткое понимание, как взаимодействуют между собой клиентская и серверная части единого сложного современного веб-приложения.

В отличие от большинства ваших коллег-новичков с узкой специализацией, ваши знания будут комплексными, а не изолированными. Вы будете четко понимать, что нужно делать и для каких целей.

А на рынке труда это очень ценится и высоко оплачивается.

Что такое фреймворк

Фреймворк – это полноценный каркас создаваемого веб-приложения. По сути, это уже готовый набор библиотек, классов и методов.

Использование фреймворков позволяет избежать рутинных операций, ускорить и упростить создание веб-приложения.

Создавайте как из конструктора

Как правило, фреймворки созданы по модульному принципу. А каждый модуль базового функционала фреймворка выполняет определенную функцию или набор функций.

Благодаря модульной структуре весь функционал будущего веб-приложения можно создавать по принципу конструктора: подключая требуемые модули.

Зачем учить фреймворки

Фреймворки позволяют создавать веб-приложения легче, быстрее и безопасней.

Сложность и функциональность веб-проектов все время возрастает, и ни у кого нет желания писать весь необходимый код с нуля.

Даже если вы полный новичок (и особенно если вы – новичок), фреймворки сделают 95% всей рутинной работы за вас: без компромиссов в качестве и безопасности. И при этом сэкономят вам время и нервы.

Почему Laravel и РНР

Laravel – бесспорный лидер среди всех РНР-фреймворков: как в Рунете, так и во всём мире.

По состоянию на 1 июня 2021 года более 80,5% всех сайтов в интернете имеют серверную часть, написанную на языке РНР.

В совершенстве изучив самый популярный РНР-фреймворк, вы гарантированно не останетесь без работы в ближайшие годы.

Почему Angular и TypeScript

Вот уже много лет Angular от IT-гиганта Google стабильно входит в тройку наиболее популярных фронтенд-фреймворков в России и мире.

Angular изначально написан на языке строгой типизации TypeScript. А это значит, что ваши проекты будут легко и быстро масштабироваться до любых размеров, а вы в полной мере сможете реализовать любые ваши задумки по принципам объектно-ориентированного программирования.

Они тоже выбрали Angular

Netflix

PayPal

Lego

The Guardian

Google

TypeScript – восходящая звезда фронтеда

По итогам 2020 года (и последних нескольких лет) TypeScript от IT-гиганта Microsoft является самым быстрорастущем языком программирования (даже без привязки к отрасли)*.

Это гарантирует перспективность, актуальность и востребованность полученных знаний и навыков.

Особенно – если ваш выбор – Front-End или Full-Stack и разработка масштабируемых веб-проектов для среднего и крупного сегментов бизнеса (где стоимость проектов и зарплаты наиболее высоки).

* – динамика популярности языков программирования, по данным сообщества программистов DOU.

Как быстро стартовать во фрилансе

50% общего объема курса посвящена Front-End-разработке.

Front-End-разработка – по статистике самая востребованная в 2021 году IT-специальность и лидер
по заказам на фрилансе
– как в Рунете, так и на международных площадках вроде Upwork и Fiverr.

Front-End

Можно дальше углубиться во Front-End-разработку, все больше прокачивая свои знания и навыки: приступить к глубокому изучению JavaScript и TypeScript, а также других JavaScript-фреймворков и их экосистемы.

Back-End

Погрузиться в мир Back-End-разработки. Приступить к глубокому изучению самого популярного серверного языка – РНР и его фреймворков: Laravel, Symfony и др. Изучать другие серверные языки и их экосистемы.

Full-Stack

После вовлеченного изучения курса вы уже будете обладать базовыми знаниями и навыками Full-Stack-разработчика. Останется лишь развиваться дальше, прокачивая знания и навыки фронтенда и бэкенда.

Кратко о видеокурсе

2 части

59 уроков

30 часов

70% практика

Часть 1 Back-End-проект на фреймворке Laravel

Скриншоты серверного приложения:
Нажмите что увеличить

В первой части курса будет заложена основа всего проекта, а именно механизм по сохранению и редактированию данных на стороне сервера.

Весь функционал будет построен на базе фреймворка Laravel и это будет готовое REST API для обработки запросов, подготовки данных и формирования специализированных ответов.

Будет написано отдельное веб-приложение – панель администратора, которая будет позволять редактировать роли, привилегии и самих пользователей.

Структура Back-End-приложения будет построена по модульному принципу. Весь функционал будет разделен на отдельные модули, каждый из которых будет выполнять определенную задачу во всей системе в целом.

Модуль — это практически самостоятельная единица, в структуре которой будут определены все необходимые составляющие – контроллеры, модели, классы валидации запросов, миграции и прочее.

Большое внимание отведено авторизации пользователей и построению системы ролей и привилегий – это очень важно, ведь в проекте будет работать несколько различных пользователей.

Часть 2 Front-End-проект на фреймворке Angular

Скриншоты серверного приложения:
Нажмите что увеличить

Во второй части курса будет создано клиентское приложение на фреймворке Angular, которое будет общаться с серверным приложением посредством REST API.

Клиентское приложение будет отвечать за визуальное отображение данных, вывод на экран специальных форм по добавлению информации и отправку полученных данных в Back-End-приложение.

В первых уроках второй части будет создан каркас — главный компонент, который будет выступать в роли макета и вмещать в себя вывод основного содержимого: навигации, хедера и контента.

Будет построена система авторизации пользователя и механизмы передачи информации о том, что пользователь авторизирован в запросах к серверу. Мы рассмотрим два способа авторизации пользователя: дефолтный (по умолчанию) и кастомный (написанный вручную).

По итогу – работа в портфолио!

Повторяя по шагам за автором курса, вы пройдете все этапы создания современного Full-Stack-приложения в виде одностраничного приложения (Single Page Application): функциональной CRM-системы по управлению клиентами, лидами и задачами (чтобы узнать подробнее – см. частые вопросы).

Разрабатываемый Full-Stack-проект будет состоять из двух больших приложений:

1. Front-End-приложения, построенного на базе фреймворка Angular и языка TypeScript и в большей степени отвечающего за визуальное отображение данных;

2. Back-End-приложения, построенного на основе фреймворка Laravel и языка РНР. Серверное приложение представляет собой REST API и будет выполнять сохранение и выборку данных, а также обработку запросов из Front-End.

Итоговой работой вы сможете украсить ваше портфолио и продемонстрировать свою квалификацию перед работодателями и заказчиками на фрилансе.

Подробная программа курса

Часть 1

Back-End-проект на фреймворке Laravel

Урок 1. Введение
В первом вводном уроке курса будут кратко рассмотрены основные организационные моменты и общая структура будущего проекта. Из данного урока Вы узнаете, какие знания, программное обеспечение и инструменты вам понадобятся для успешного прохождения курса.
Урок 2. Установка фреймворка Laravel и необходимых пакетов
Из этого урока вы узнаете, как установить фреймворк Laravel и другие дополнительные пакеты, которые необходимы для разработки будущего проекта, будут показаны особенности загрузки компонента Laravel Pasport. Также в видео будет проведен обзор общей структуры папок фреймворка и рассказано назначение каждой из них.
Урок 3. Реализация модульной структуры. Консольная команда. Часть 1
С этого урока начинается непосредственная работа с кодом проекта. Вы узнаете, как на фреймворке Laravel реализовать модульную структуру, для чего это нужно и какие преимущества получит проект после ее внедрения. Как правило, модуль – это не один файл, но определенный набор файлов и каталогов, которые объединяются общей программной принадлежностью или выполняемой задачей. Поэтому создавать подобные вещи вручную довольно утомительная задача. И, чтобы облегчить этот процесс, в проекте будет создана консольная команда, которая после запуска будет формировать в нужной директории полную структуру будущего модуля.
Урок 4. Реализация модульной структуры. Консольная команда. Часть 2
В этом уроке продолжается разработка консольной команды по созданию каркаса будущего модуля. Вы узнаете, что такое «стабы» и как на их основе создать заготовки под будущие контроллеры, модели или любые другие элементы фреймворка Laravel. Таким образом, по итогам текущего урока, будет реализована готовая консольная команда, которая при запуске создает новый модуль, а значит необходимый набор файлов и папок.
Урок 5. Реализация модульной структуры. Маршрутизатор
Параметры маршрута фреймворка Laravel по умолчанию располагаются в нескольких файлах, в директории routes. Но данная механика для модульной структуры не совсем подходит, ведь в каждом модуле свои собственные маршруты, которые находятся далеко за пределами указанной директории.

В этом видео будет добавлен специальный сервис-провайдер, который при загрузке фреймворка будет обходить все доступные модули и считывать их параметры маршрутов.
Урок 6. Модуль аутентификации. Часть 1
Основная часть проекта – это API, доступ к которому разрешен только для зарегистрированных пользователей. Поэтому в этом видео будет создан первый модуль проекта по аутентификации пользователей как через API, так и через веб-страницу. Из этого урока вы узнаете, как разделяются запросы и данные в одном модуле для запросов по API и через веб.
Урок 7. Модуль аутентификации. Часть 2
Аутентификация для веб-проекта требует наличия специальный формы, которая будет открыта для всеобщего посещения и куда можно будет добавить данные и отправить на сервер. Поэтому в этом уроке будет создан общий каркас для публичных страниц проекта и шаблон для отображения указанной выше формы.
Урок 8. Модуль аутентификации. Часть 3
Следующий шаг — это определение функционала механизма проверки введенных данных в форму аутентификации и последующий логин пользователя в системе. Вы узнаете, как задать кастомную модель по обработке пользователя в качестве основной модели аутентификации пользователей и где располагается стандартная механика авторизации пользователя во фреймворке Laravel.
Урок 9. Модуль аутентификации. Часть 4
В этом видео будет описано API для обработки запроса авторизации пользователя. Из этого урока вы узнаете, как вернуть JSON ответ при возникающих ошибках валидации, как стандартизировать все ответы при обработке запросов, а также, как происходит процесс залогинивания пользователя в Laravel Pasport.
Урок 10. Модуль панели администратора. Подключение шаблона
Панель администратора — это неотъемлемая часть любого сайта, именно она предоставляет инструменты по настройке и редактированию контента.

В этом уроке будет создан отдельный модуль по отображению указанного раздела проекта, в котором будет формироваться основной шаблон и реализовано разделение блоков страниц на структурные составляющие.
Урок 11. Главная страница админки
Главная страница — это точка входа в проект, так как именно с нее начинается работа с сайтом. В этом видео будет выведена главная страница панели администратора, а также добавлен функционал определения локализации исходя из параметров URL-адреса
Урок 12. Модуль меню. Часть 1
В текущих двух уроках будет реализован модуль по работе с меню проекта. Меню потребуется как для панели администратора, так и для публичной части, которая будет формироваться фреймворком Angular.

Модуль будет состоять из двух принципиально разных частей. Первая — это обработка и вывод многоуровневого меню в боковой колонке панели администратора. Вторая — возврат элементов меню в качестве ответа на запрос с Front-End-приложения в зависимости от прав пользователя (будет добавлено в следующих уроках).

Из этого урока вы узнаете, как работать с многоуровневым меню и как разделить пункты меню по принадлежности – админка, Fron-End.
Урок 13. Модуль меню. Часть 2
В текущих двух уроках будет реализован модуль по работе с меню проекта. Меню потребуется как для панели администратора, так и для публичной части, которая будет формироваться фреймворком Angular.

Модуль будет состоять из двух принципиально разных частей. Первая — это обработка и вывод многоуровневого меню в боковой колонке панели администратора. Вторая — возврат элементов меню в качестве ответа на запрос с Front-End-приложения в зависимости от прав пользователя (будет добавлено в следующих уроках).

Из этого урока вы узнаете, как работать с многоуровневым меню и как разделить пункты меню по принадлежности – админка, Fron-End.
Урок 14. Модуль прав и привилегий пользователей. Часть 1
Модуль прав и привилегий пользователей который будет реализован в ходе четырех уроков будет состоять из двух подмодулей — модуль по работе с ролями и модуля по работе с привилегиями.

По итогу будет заложена функциональность создания и редактирования ролей и привилегий в админ-панели, механика по проверке наличия прав для пользователей, которая будет использоваться в других модулях, а также механизм разделения пунктов меню по правам, что позволит возвращать по API только ссылки, которые доступны авторизированному пользователю.
Урок 15. Модуль прав и привилегий пользователей. Часть 2
Модуль прав и привилегий пользователей который будет реализован в ходе четырех уроков будет состоять из двух подмодулей — модуль по работе с ролями и модуля по работе с привилегиями.

По итогу будет заложена функциональность создания и редактирования ролей и привилегий в админ-панели, механика по проверке наличия прав для пользователей, которая будет использоваться в других модулях, а также механизм разделения пунктов меню по правам, что позволит возвращать по API только ссылки, которые доступны авторизированному пользователю.
Урок 16. Модуль прав и привилегий пользователей. Часть 3
Модуль прав и привилегий пользователей который будет реализован в ходе четырех уроков будет состоять из двух подмодулей — модуль по работе с ролями и модуля по работе с привилегиями.

По итогу будет заложена функциональность создания и редактирования ролей и привилегий в админ-панели, механика по проверке наличия прав для пользователей, которая будет использоваться в других модулях, а также механизм разделения пунктов меню по правам, что позволит возвращать по API только ссылки, которые доступны авторизированному пользователю.
Урок 17. Модуль прав и привилегий пользователей. Часть 4
Модуль прав и привилегий пользователей который будет реализован в ходе четырех уроков будет состоять из двух подмодулей — модуль по работе с ролями и модуля по работе с привилегиями.

По итогу будет заложена функциональность создания и редактирования ролей и привилегий в админ-панели, механика по проверке наличия прав для пользователей, которая будет использоваться в других модулях, а также механизм разделения пунктов меню по правам, что позволит возвращать по API только ссылки, которые доступны авторизированному пользователю.
Урок 18. API для работы с пользователями
В прошлых уроках был создан модуль по обработке пользователей, но его функциональность была не полная, так как работа в основном сводилась к описанию методов и свойств модели. Поэтому в текущем уроке будут реализованы четыре основные операции CRUD в этом модуле, для запросов по API.
Урок 19. Модуль источников лидов
Разрабатываемая CRM-система будет использоваться для обработки лидов. Одним из важнейших параметров лида является источник, то есть откуда пришел этот лид. Поэтому в текущем видео будет реализован модуль и вместе с ним функциональность API по созданию, редактированию и удалению источников лидов проекта.
Урок 20. Модули обработки лидов и комментариев. Часть 1
В следующих пяти уроках будет показана реализация двух ключевых модулей проекта: модуля лидов и модуля комментариев. Два указанных модуля будут работать в паре и обеспечивать добавление и редактирование информации по лиду. Для каждого из модулей будет реализовано API, то есть набор методов, которые будут обрабатывать запросы из клиентской части.

По итогу будут реализованы следующие механики: получение списка лидов в зависимости от статуса, сохранение нового лида, проверка существования лида, обновление лида, добавление комментариев к лиду, создание системных комментариев, получение списка архивных лидов, определение лида как качественного и получение истории комментариев лида.
Урок 21. Модули обработки лидов и комментариев. Часть 2
В следующих пяти уроках будет показана реализация двух ключевых модулей проекта: модуля лидов и модуля комментариев. Два указанных модуля будут работать в паре и обеспечивать добавление и редактирование информации по лиду. Для каждого из модулей будет реализовано API, то есть набор методов, которые будут обрабатывать запросы из клиентской части.

По итогу будут реализованы следующие механики: получение списка лидов в зависимости от статуса, сохранение нового лида, проверка существования лида, обновление лида, добавление комментариев к лиду, создание системных комментариев, получение списка архивных лидов, определение лида как качественного и получение истории комментариев лида.
Урок 22. Модули обработки лидов и комментариев. Часть 3
В следующих пяти уроках будет показана реализация двух ключевых модулей проекта: модуля лидов и модуля комментариев. Два указанных модуля будут работать в паре и обеспечивать добавление и редактирование информации по лиду. Для каждого из модулей будет реализовано API, то есть набор методов, которые будут обрабатывать запросы из клиентской части.

По итогу будут реализованы следующие механики: получение списка лидов в зависимости от статуса, сохранение нового лида, проверка существования лида, обновление лида, добавление комментариев к лиду, создание системных комментариев, получение списка архивных лидов, определение лида как качественного и получение истории комментариев лида.
Урок 23. Модули обработки лидов и комментариев. Часть 4
В следующих пяти уроках будет показана реализация двух ключевых модулей проекта: модуля лидов и модуля комментариев. Два указанных модуля будут работать в паре и обеспечивать добавление и редактирование информации по лиду. Для каждого из модулей будет реализовано API, то есть набор методов, которые будут обрабатывать запросы из клиентской части.

По итогу будут реализованы следующие механики: получение списка лидов в зависимости от статуса, сохранение нового лида, проверка существования лида, обновление лида, добавление комментариев к лиду, создание системных комментариев, получение списка архивных лидов, определение лида как качественного и получение истории комментариев лида.
Урок 24. Модули обработки лидов и комментариев. Часть 5
В следующих пяти уроках будет показана реализация двух ключевых модулей проекта: модуля лидов и модуля комментариев. Два указанных модуля будут работать в паре и обеспечивать добавление и редактирование информации по лиду. Для каждого из модулей будет реализовано API, то есть набор методов, которые будут обрабатывать запросы из клиентской части.

По итогу будут реализованы следующие механики: получение списка лидов в зависимости от статуса, сохранение нового лида, проверка существования лида, обновление лида, добавление комментариев к лиду, создание системных комментариев, получение списка архивных лидов, определение лида как качественного и получение истории комментариев лида.
Урок 25. Модуль аналитики лидов. Часть 1
Для коммерческих проектов довольно важную роль играет аналитика, так как именно она позволяет проанализировать работу и показать, где нужно ввести коррективы. Поэтому в текущих трех уроках будет реализован модуль аналитики лидов, то есть набор методов API, которые будут возвращать список завершенных лидов по каждому менеджеру, с подсчетом некоторых ключевых параметров. Также будет добавлена возможность генерации таблицы формата Excel для более удобного просмотра и анализа данных.
Урок 26. Модуль аналитики лидов. Часть 2
Для коммерческих проектов довольно важную роль играет аналитика, так как именно она позволяет проанализировать работу и показать, где нужно ввести коррективы. Поэтому в текущих трех уроках будет реализован модуль аналитики лидов, то есть набор методов API, которые будут возвращать список завершенных лидов по каждому менеджеру, с подсчетом некоторых ключевых параметров. Также будет добавлена возможность генерации таблицы формата Excel для более удобного просмотра и анализа данных.
Урок 27. Модуль аналитики лидов. Часть 3
Для коммерческих проектов довольно важную роль играет аналитика, так как именно она позволяет проанализировать работу и показать, где нужно ввести коррективы. Поэтому в текущих трех уроках будет реализован модуль аналитики лидов, то есть набор методов API, которые будут возвращать список завершенных лидов по каждому менеджеру, с подсчетом некоторых ключевых параметров. Также будет добавлена возможность генерации таблицы формата Excel для более удобного просмотра и анализа данных.
Урок 28. Модуль тасков и комментариев
Модуль тасков (задач) и их комментариев по своей работе очень похож на модуль лидов, поэтому в текущем уроке будет рассмотрены эти два модуля и показаны особенности их работы.
Урок 29. Раздел создания и редактирования пользователей в админке
В текущем видео в административную панель сайта будет добавлен очередной раздел по созданию и редактированию пользователей.
Урок 30. Обработка исключений. Итоги
В последнем уроке текущей части курса будут подведены итоги по проделанной работе и внесены определенные правки в механизм обработки исключений. Работа с API предусматривает возврат ошибок в определенном формате.

Часть 2

Front-End-проект на фреймворке Angular

Урок 1. Введение. Установка фреймворка Angular
Будут кратко рассмотрены основные организационные моменты и общая структура будущего проекта.

Вы узнаете, какие знания, программное обеспечение и инструменты понадобятся для успешного похождения второй части курса. Будет выполнена установка фреймворка Angular, кратко будут рассмотрены структура и назначение его элементов, а также установка библиотеки, которая будет отвечать за визуальную часть приложения — Angular Material.
Урок 2. Определение структуры проекта
Будет определена основная структурная схема взаимодействия и вывода на экран содержимого компонентов. Будет создан условный родительский компонент, внутри которого будут располагаться необходимые дочерние элементы: навигация, контент и т.д.
Урок 3. Компонент меню. Часть 1
Первый в списке дочерних компонентов, который будет отображаться в основном макете проекта — компонент навигационного меню. Он будет последовательно реализован в первых трех уроках.

Меню, которое состоит всего лишь из нескольких ссылок, не такое простое, как кажется на первый взгляд. Ведь данные о ссылках хранятся в Back-End-приложении и доступ к ним разрешается только для авторизированных пользователей. А значит, помимо вывода ссылок на экран, необходимо определить модели принимаемых данных с сервера и описать код по отправке запросов и обработке ответов.
Урок 4. Компонент меню. Часть 2
Первый в списке дочерних компонентов, который будет отображаться в основном макете проекта — компонент навигационного меню. Он будет последовательно реализован в первых трех уроках.

Меню, которое состоит всего лишь из нескольких ссылок, не такое простое, как кажется на первый взгляд. Ведь данные о ссылках хранятся в Back-End-приложении и доступ к ним разрешается только для авторизированных пользователей. А значит, помимо вывода ссылок на экран, необходимо определить модели принимаемых данных с сервера и описать код по отправке запросов и обработке ответов.
Урок 5. Компонент меню. Часть 3
Первый в списке дочерних компонентов, который будет отображаться в основном макете проекта — компонент навигационного меню. Он будет последовательно реализован в первых трех уроках.

Меню, которое состоит всего лишь из нескольких ссылок, не такое простое, как кажется на первый взгляд. Ведь данные о ссылках хранятся в Back-End-приложении и доступ к ним разрешается только для авторизированных пользователей. А значит, помимо вывода ссылок на экран, необходимо определить модели принимаемых данных с сервера и описать код по отправке запросов и обработке ответов.
Урок 6. Прелоадер
При работе Fron-End-приложения постоянно будут отправляться различные запросы к Back-End-приложению, которые могут быть относительно долгими по времени.
В уроке будет показано формирование прелоадера, который будет показываться на экране при отправке любого запроса на сервер.
По итогам текущего урока вы научитесь перехватывать запросы, используя классы Interceptors.
Урок 7. Маршрутизатор проекта
В текущем уроке будет определен маршрутизатор проекта, будет создан специальный класс (guard) для защиты закрытых маршрутов и разработан компонент для будущей системы аутентификации.

Вы узнаете, как защищать маршруты от всеобщего доступа, что такое гарды и с каким данными они работают.
Урок 8. Форма авторизации пользователей. Часть 1
Здесь мы реализуем вывод на экран формы авторизации пользователей. При этом будет создан шаблон компонента, форма вместе с определенными правилами валидации, сервис по отправке данных на сервер, а также механика отправки запроса и обработки ответа. Также вы узнаете, где и в каком виде можно хранить информацию о авторизированном пользователе.
Урок 9. Форма авторизации пользователей. Часть 2
Здесь мы реализуем вывод на экран формы авторизации пользователей. При этом будет создан шаблон компонента, форма вместе с определенными правилами валидации, сервис по отправке данных на сервер, а также механика отправки запроса и обработки ответа. Также вы узнаете, где и в каком виде можно хранить информацию о авторизированном пользователе.
Урок 10. Передача информации об авторизированном пользователе в запросах
В уроке будет описан функционал передачи токена пользователя в каждом запросе к серверу, тем самым будет полностью завершена система авторизации пользователей в проекте. Вы узнаете, как модифицировать запрос и добавить необходимые заголовки.
Урок 11. Альтернативный способ авторизации пользователя
Система авторизации, которая была описана ранее в предыдущих уроках, в Back-End-приложении использует написанный нами контроллер модуля Auth. Это некий кастомный метод, который был описан с абсолютного нуля. В текущем видео я хотел бы показать возможность использования стандартного метода обработки запросов, который идет в комплекте с пакетом Laravel Pasport.
Урок 12. Страница создания лида или задачи. Часть 1
В последующих четырех уроках будет реализована форма создания лида или задачи. Одна форма будет использоваться для формирования одной из двух сущностей в зависимости от режима работы, управляемого простым чекбоксом.

При этом будут созданы модели для лидов и задач, а также для вспомогательных элементов, таких как пользователи, источники и подразделения. Будет описан метод кастомной валидации группы из двух полей формы и механизм отправки данных на сервер.

Вы узнаете, как сформировать собственную валидацию для нескольких полей и закрепите умение по работе с формами.
Урок 13. Страница создания лида или задачи. Часть 2
В последующих четырех уроках будет реализована форма создания лида или задачи. Одна форма будет использоваться для формирования одной из двух сущностей в зависимости от режима работы, управляемого простым чекбоксом.

При этом будут созданы модели для лидов и задач, а также для вспомогательных элементов, таких как пользователи, источники и подразделения. Будет описан метод кастомной валидации группы из двух полей формы и механизм отправки данных на сервер.

Вы узнаете, как сформировать собственную валидацию для нескольких полей и закрепите умение по работе с формами.
Урок 14. Страница создания лида или задачи. Часть 3
В последующих четырех уроках будет реализована форма создания лида или задачи. Одна форма будет использоваться для формирования одной из двух сущностей в зависимости от режима работы, управляемого простым чекбоксом.

При этом будут созданы модели для лидов и задач, а также для вспомогательных элементов, таких как пользователи, источники и подразделения. Будет описан метод кастомной валидации группы из двух полей формы и механизм отправки данных на сервер.

Вы узнаете, как сформировать собственную валидацию для нескольких полей и закрепите умение по работе с формами.
Урок 15. Страница создания лида или задачи. Часть 4
В последующих четырех уроках будет реализована форма создания лида или задачи. Одна форма будет использоваться для формирования одной из двух сущностей в зависимости от режима работы, управляемого простым чекбоксом.

При этом будут созданы модели для лидов и задач, а также для вспомогательных элементов, таких как пользователи, источники и подразделения. Будет описан метод кастомной валидации группы из двух полей формы и механизм отправки данных на сервер.

Вы узнаете, как сформировать собственную валидацию для нескольких полей и закрепите умение по работе с формами.
Урок 16. Страница Dashboard
В уроке будет создан компонент для отображения списка добавленных в базу данных лидов. При этом будем описан механизм отправки запроса на сервер, получения ответа и сохранения полученных лидов в публичные свойства компонента. Также будет сформирован каркас будущего шаблона компонента.
Урок 17. Отображение лидов на странице Dashboard. Часть 1
Так как компонент по отображению лидов был сформирован в предыдущем уроке, то последующие три урока будут направлены на отображение лидов в колонках, которые соответствуют их статусу. Причем в каждой колонке, а значит и в каждом статусе, формат отображения данных лида будет немного отличаться.

К примеру, во второй колонке будет добавлено время, показывающее насколько часов устарел лид со времени его создания, в третьей коленке особым цветом будут выделяться успешные лиды и т.д. Помимо этого для каждой колонки будут предусмотрены отдельные элементы фильтрации.
Урок 18. Отображение лидов на странице Dashboard. Часть 2
Так как компонент по отображению лидов был сформирован в предыдущем уроке, то последующие три урока будут направлены на отображение лидов в колонках, которые соответствуют их статусу. Причем в каждой колонке, а значит и в каждом статусе, формат отображения данных лида будет немного отличаться.

К примеру, во второй колонке будет добавлено время, показывающее насколько часов устарел лид со времени его создания, в третьей коленке особым цветом будут выделяться успешные лиды и т.д. Помимо этого для каждой колонки будут предусмотрены отдельные элементы фильтрации.
Урок 19. Отображение лидов на странице Dashboard. Часть 3
Так как компонент по отображению лидов был сформирован в предыдущем уроке, то последующие три урока будут направлены на отображение лидов в колонках, которые соответствуют их статусу. Причем в каждой колонке, а значит и в каждом статусе, формат отображения данных лида будет немного отличаться.

К примеру, во второй колонке будет добавлено время, показывающее насколько часов устарел лид со времени его создания, в третьей коленке особым цветом будут выделяться успешные лиды и т.д. Помимо этого для каждой колонки будут предусмотрены отдельные элементы фильтрации.
Урок 20. Редактирование лида. Часть 1
Когда лиды успешно показываются на странице, пришло время приступить к функционалу их редактирования. Форма по редактированию лида будет открываться в попапе, а значит при его открытии, необходимо подгружать дополнительные отсутствующие данные: комментарии, источники, подразделения и т.д.

Помимо этого, не достаточно просто изменить данные по лиду, так как когда меняется статус лида необходимо сразу же переместить его в соответствующую колонку.

Если лиду назначается статус «Завершено», то после закрытия попапа редактирования нужно показать другой попап, в котором будет открыта форма определения успешности лида.
Урок 21. Редактирование лида. Часть 2
Когда лиды успешно показываются на странице, пришло время приступить к функционалу их редактирования. Форма по редактированию лида будет открываться в попапе, а значит при его открытии, необходимо подгружать дополнительные отсутствующие данные: комментарии, источники, подразделения и т.д.

Помимо этого, не достаточно просто изменить данные по лиду, так как когда меняется статус лида необходимо сразу же переместить его в соответствующую колонку.

Если лиду назначается статус «Завершено», то после закрытия попапа редактирования нужно показать другой попап, в котором будет открыта форма определения успешности лида.
Урок 22. Редактирование лида. Часть 3
Когда лиды успешно показываются на странице, пришло время приступить к функционалу их редактирования. Форма по редактированию лида будет открываться в попапе, а значит при его открытии, необходимо подгружать дополнительные отсутствующие данные: комментарии, источники, подразделения и т.д.

Помимо этого, не достаточно просто изменить данные по лиду, так как когда меняется статус лида необходимо сразу же переместить его в соответствующую колонку.

Если лиду назначается статус «Завершено», то после закрытия попапа редактирования нужно показать другой попап, в котором будет открыта форма определения успешности лида.
Урок 23. Создание лида на странице Dashboard
В этом уроке будет добавлена возможность создания лида непосредственно из страницы Dashboard. Добавление лидов, как и редактирование, будет производиться в отдельном попапе с последующим добавлением в соответствующую колонку.
Урок 24. Вывод лидов на странице архива
В текущем уроке будет описан механизм по получению и отображению лидов, которые находится в архиве. При этом лиды будут показываться не в полном объеме, а порционно, используя постраничную навигацию.
Урок 25. Вывод детальной информации по архивному лиду
В этом уроке будет описан функционал по отображению детальной информации лида, в попапе, на странице архива лидов.
Урок 26. Страница аналитики лидов
Последний урок по лидам — это компонент страницы аналитики. Вся аналитика строится на специальном запросе в базу данных, который отправляется Back-End-приложением. Все, что остается реализовать в этом уроке – это вывести данные и сформировать ссылку для скачивания таблицы Excel с детальной информацией по лидам.
Урок 27. Компонент задач и их комментариев
Компонент отображения и редактирования информации по задачам по своему принципу работы примерно такой же, как и ранее реализованный компонент лидов. В этом видео будут кратко рассмотрены основные нюансы и отличия уже на готовом рабочем коде.
Урок 28. Раздел управления пользователями
В данном уроке будет реализован компонент по созданию и редактированию пользователей проекта.
Урок 29. Подведение итогов
В этом уроке будут подведены основные итоги по всему курсу и внесены некоторые правки по коду.

Бонусные курсы

Бонус 1. Премиум-курс. Фреймворк Angular

31 урок
13 часов видео

Будет рассматриваться один из популярнейших Front-End-фреймворков – Angular от компании Google, который используется для создания клиентских приложений.

В первую очередь, фреймворк направлен на создание Single Page Application, то есть так называемых одностраничных сайтов.

Конечно проекты, которые создаются с использованием указанного фреймворка, далеко не одностраничные, как правило, это большие и сложные приложения, которые оперируют огромным количеством данных и взаимодействуют с различными пользователями.

Благодаря использованию языка программирования TypeScript, Angular позволяет писать строго типизированный код с использованием объектно-ориентированного подхода, что особенно важно в больших масштабируемых проектах. Например, в enterprise-сегменте веб-разработки, где стоимость заказа и зарплаты наиболее высоки.

Фреймворк из коробки обладает широким функционалом, которого достаточно, чтобы писать проекты абсолютно любого уровня сложности, но, помимо этого, существует огромное количество уже готовых пакетов, которые могут дополнить и разнообразить уже имеющийся функционал.

Бонус 2. Премиум курс. TypeScript (TS)

16 уроков
7 часов видео

TypeScript – это строго типизированный и компилируемый язык программирования, который лишен всех тех недостатков, присущих обычному JavaScript.

TypeScript реализует концепции, которые свойственны объектно-ориентированным языкам программирования, такие как наследование, полиморфизм, инкапсуляция и модификаторы доступа, и многое другое.

Благодаря строгой типизации, язык позволяет быстрее и проще писать большие сложные проекты, соответственно их легче поддерживать, развивать и масштабировать, чем на привычном JavaScript. Именно поэтому знание языка TypeScript так ценится в корпоративном сегменте (и хорошо оплачивается).

В курсе изучение построено по принципу от простого к сложному. Начиная от основ установки и настройки компилятора, создания переменных и объявления функций – и заканчивая объектно-ориентированным программированием, пространствами имен, модулями и многим другим.

Бонус 3

Видеокурс «Laravel. Полное руководство»

Только для первых 100 покупателей!

Первые 100 покупателей курса гарантировано получат курс-бестселлер «Laravel. Полное руководство» от Андрея Кудлая и команды Webformyself. Вы также получаете все входящие в него бонусы.

Курс является мега-актуальным (был выпущен в конце 2020 года) и прямо сейчас продается на сайте издательства Webformyself по цене 7970 рублей!

Стоимость и ценность одного этого бонуса сопоставима со стоимостью курса «Laravel+Angular. Создание CRM-системы». И это – не считая входящих в него бонусных курсов по РНР, MySQL и объектно-ориентированному программированию на РНР.

Все это вы получаете бесплатно. Но только первые 100 человек!

58 видеоуроков в основном курсе

21 час – продолжительность курса

31 час – длительность бонусных курсов

84 видеоурока в бонусных курсах

Автор курса

Виктор Гавриленко

•  Соавтор проекта «Премиум-уроки» от webformyself.com

•  Действующий востребованный Full-Stack-разработчик

•  В его арсенале – множество языков, библиотек, фреймворков и CMS

•  В совершенстве владеет фреймворками Laravel и Angular

•  Автор обучающих видеокурсов webformyself.com, среди которых такие бестселлеры, как:

«JavaScript & jQuery с Нуля до Профи»
«Корпоративный сайт под ключ»
«Joomla-Мастер: с нуля до премиум-шаблона»
«Joomla-Профессионал»
«Интернет магазин под ключ на CMS Joomla»

Цена курса



7 970 руб.

100% безусловный возврат денежных средств по первому требованию в течение 90 дней с момента покупки гарантирован!

Рынок нуждается в Full-Stack-мастерах

Медианная зарплата по России Медианные зарплаты Full-Stack-мастеров
по уровню квалификации
Junior SE Middle SE Senior SE
$3.600** $2.000** $750** 110.000 руб./$1.500*

* – по данным компании «Хабр Карьера», за вторую половину 2020 года.
** – по данным сообщества программистов DOU, за вторую половину 2020 года.

Мы гарантируем высокое качество

Мы на 100% уверены в качестве нашего продукта, поэтому даем максимальные гарантии:

Гарантия №1

Безусловная гарантия возврата

Мы гарантируем вам полный безусловный возврат стоимости курса, если по каким-либо причинам вы посчитаете, что он оказался вам бесполезным. Для этого просто напишите в нашу службу поддержки. Деньги вы сможете получить обратно любым удобным вам способом по первому же требованию. Срок действия гарантии возврата средств – 90 дней.

Гарантия №2

Гарантия качества и актуальности

Все уроки — авторские, актуальные, подробные и тщательно подготовлены лично автором видеокурса: профессиональным веб-разработчиком Виктором Гавриленко.

В курсе на практике будут рассмотрены два наиболее популярных фреймворка (причем самые новые на момент выхода версии), которые кардинально отличаются друг от друга, поскольку представляют разные направления в веб-разработке, но которые отлично могут работать в паре – это фреймворки Laravel и Angular.

Предлагаемый видео курс – это практическое руководство по созданию прототипа реальной функциональной CRM-системы для обработки лидов и целого спектра сопутствующих задач.

Разрабатываемый проект будет состоять из двух больших приложений:

1. Front-End-приложения, построенного на базе фреймворка Angular и в большей степени отвечающего за визуальное отображение данных;

2. Back-End-приложения, построенного на основе фреймворка Laravel, которое представляет собой REST API и будет выполнять сохранение и выборку данных, а также обработку запросов из Front-End.

Гарантия №3

Гарантия получения курса

Этот видеокурс предоставляется только в электронном виде – это значит, что ссылка на скачивание на ваш жесткий диск будет доступна сразу же после оплаты.

Скачивание займет от нескольких минут до нескольких десятков минут (в зависимости от скорости вашего интернет-провайдера).

Вам не придется ждать доставки диска по почте – вы сможете скачать курс без ограничений на максимальной скорости и тотчас же приступить к просмотру видеоуроков.

Часто задаваемые вопросы

  • А что, если в процессе изучения я пойму, что это не моё?

    Webformyself гарантирует вам полный возврат стоимости курса в течение 90 дней по первому требованию, если вы по каким-либо причинам вы посчитаете, что курс оказался вам бесполезным.

    Этого времени более чем достаточно, чтобы сделать обоснованные выводы. Все денежные риски мы полностью берем на себя.

  • Получится ли у меня?

    Не получится только в том случае, если вы сами ничего не будете делать! В остальных случаях – у вас все обязательно получится.

  • Какие минимальные знания требуются для изучения курса?

    Для прохождения курса не нужны никакие специальные знания и навыки, кроме уверенной работы с ПК. Очень желательно наличие базовых знаний по веб-разработке (HTML, CSS, JavaScript, PHP), хотя бы минимальный набор знаний и понимание, за что каждый из этих языков отвечает.

    Большинство из этих знаний вы можете получить из наших бесплатных курсов.

    Все дополнительные уроки и курсы, которые нужны для успешного изучения курса, входят в данный курс бонусами (см. выше информацию о бонусах).

  • Какое приложение создается в курсе? Что такое CRM и лиды?

    Предлагаемый видео курс – это практическое руководство по созданию прототипа реальной функциональной CRM-системы для обработки лидов и целого спектра сопутствующих задач.

    CRM-система (Customer Relationship Management) — это некий способ управления взаимоотношениями с клиентами и оптимизации бизнес-процессов.

    Это специальный программный продукт для организации работы с лидами, отслеживания действий клиентов, аналитики и т.д.

    Лиды (от англ. lead – «следовать») — это люди, проявившие интерес к вашей услуге или продукту. Иными словами, лид — это потенциальный клиент.

  • Можно ли смотреть данный видеокурс на OS X (Mac OS)?

    Да. Это онлайн-курс и его можно изучать как в Windows, так и в OS X (Mac OS).

  • На какой период рассчитано изучение?

    В среднем курс рассчитан на 1-2 месяца изучения – в зависимости от вашего уровня.

    Если вы совсем новичок, то период проработки материала (включая практику) может растянуться и на 2-3 месяца, в зависимости от вашей нагрузки и способностей.

  • Ограничено ли количество устройств, на которых я могу изучать курс?

    Нет, не ограничено. Вы можете запускать курс на любом компьютере без ограничений.

  • Я не из России, могу ли я купить ваш курс?

    Вы можете приобрести наш курс из любой точки мира, если найдете для себя доступный способ оплаты. В любом случае, вы можете обратиться в нашу службу поддержки и мы попытаемся что-нибудь придумать.

  • Какие виды оплаты вы принимаете?

    JustClick — возможность оплаты следующими способами: Visa, MasterCard, электронные деньги (Вебмани, Киви, Яндекс-деньги), интернет-банкинг, терминалы и салоны связи (Евросеть, Связной, Яндекс-деньги), платежные системы (RBKMoney), денежные переводы (Банковский перевод, Альфа-клик, Промсвязьбанк, Контакт, Лидер).

    PayPal — международная система оплаты PayPal.

  • Остались еще вопросы? Напишите нам!

    Если у вас остались сомнения и вопросы, напишите нам в службу поддержки. Мы всегда рады помочь :)


Купить со скидкой