Как сделать сайт-портфолио программиста: структура, проекты и публикация
Собираем понятное портфолио начинающего разработчика: первый экран, карточки проектов, стек, контакты, адаптив и публикация на GitHub Pages.
Твой напарник в мире кода
Статьи и гайды от практикующих разработчиков. Узнавайте новое, находите решения и воплощайте идеи.

Можно выбрать несколько — статьи обновятся сразу

Собираем понятное портфолио начинающего разработчика: первый экран, карточки проектов, стек, контакты, адаптив и публикация на GitHub Pages.

Добавляем тёмную тему на сайт через CSS-переменные: учитываем системную настройку, делаем доступный переключатель и сохраняем выбор пользователя.

Делаем адаптивное бургер-меню на HTML, CSS и JavaScript: кнопка, анимация трёх линий, aria-expanded, закрытие по Escape и проверка на телефоне.

Пишем игру-кликер на Python и Tkinter: счётчик, таймер на 15 секунд, кнопка старта, личный рекорд в JSON и проверка игрового цикла.

Включаем вид от первого лица в Roblox Studio через CameraMode, управляем курсором, добавляем прицел, тесируем мышь, тач и геймпад.

Добавляем фоновую музыку в Roblox Studio: выбираем аудио, создаём Sound в SoundService, включаем Looped, настраиваем Volume и проверяем загрузку.

Оформляем GitHub-профиль без визуального шума: создаём профильный README, пишем короткое описание, закрепляем проекты и проверяем ссылки.

Создаём Developer Product и кнопку доната в Roblox Studio: PromptProductPurchase на клиенте, ProcessReceipt на сервере, выдача награды и тест.

Делаем стартовый экран в Roblox Studio: ScreenGui, кнопка Play, фиксированная камера, плавное исчезновение и возврат управления.

Делаем калькулятор на JavaScript без eval: дисплей, цифровые кнопки, четыре операции, дроби, сброс, обработка ошибок и проверка результата в браузере.

Собираем оконный калькулятор на Python и Tkinter без eval: два числа, четыре операции, обработка ошибок и проверка результата.

Пишем безопасный генератор паролей на Python с модулем secrets и интерфейсом Tkinter: выбор длины, включение символов, новый пароль и копирование в буфер.