Всем привет! В этом видео у нас есть пять идей проекта для разработки полного стека. Эти проекты выходят за рамки простых веб-сайтов и включают в себя создание клонов популярных веб-сайтов с дополнительными функциями. Давайте погрузимся в идеи и сложные части каждого проекта.
1. Клон StreamYard: StreamYard — это веб-сайт, который позволяет пользователям выполнять потоковую передачу из своих браузеров на такие платформы, как YouTube. Сложным аспектом здесь является реализация серверной службы, которая принимает входной поток и наложения и перенаправляет их на YouTube с использованием протокола RTMP. Вам нужно будет справиться с кодированием, преобразованием и потоковой передачей видео.
2. Клон Google Docs: Google Docs — это приложение для совместного редактирования документов. Трудной частью здесь является реализация совместной работы в режиме реального времени, когда изменения, сделанные одним пользователем, мгновенно отражаются для других, у которых открыт документ. Вам нужно будет использовать WebSockets для связи в реальном времени и операционных преобразований для обработки коллизий, когда несколько пользователей редактируют одну и ту же часть одновременно.
3. Google Meet Clone: Google Meet — это приложение для видеоконференций. Основная задача здесь — облегчить видео- и аудиосвязь между браузерами в реальном времени с помощью WebRTC. Вам нужно будет устанавливать соединения, обрабатывать видео- и аудиопотоки и реализовывать такие функции, как совместное использование экрана.
4. Клон Google Диска: Google Диск — это облачное хранилище и служба обмена файлами. Сложная часть — это безопасная загрузка файлов напрямую в хранилище объектов, такое как Amazon S3, без прохождения через ваш сервер. Этого можно добиться, используя предварительно подписанные URL-адреса, сгенерированные вашим сервером, которые позволяют пользователям загружать файлы непосредственно в службу хранения.
5. LeetCode Clone: LeetCode — это платформа для практики кодирования. Сложным аспектом здесь является безопасное выполнение кода, отправленного пользователем, в контейнерной среде. Вам нужно будет настроить систему для выполнения кода, наложить ограничения на ресурсы и обрабатывать оценки тестовых случаев.
Эти идеи проекта поставляются с подсказками и подробностями в предоставленном репозитории. Я призываю вас попробовать построить их самостоятельно и попросить помощи у ИИ, когда это необходимо. Если вы хотите, чтобы я построил любой из этих проектов в видео, пожалуйста, прокомментируйте ниже и дайте мне знать. Помните, цель состоит в том, чтобы учиться и бросать вызов себе как разработчику. Удачного кодирования!