This media is not supported in your browser
VIEW IN TELEGRAM
Google запустила CodeWiki — платформу, где можно выбрать любой GitHub-репозиторий и получить к нему нормальную документацию с визуализациями, объяснениями и даже видео.
Там еще есть встроенный чат, где можно спрашивать что угодно про репозиторий: архитектуру, функции, связи файлов и прочее.
Скоро появится поддержка приватных реп в GitHub, так что можно присмотреться заранее🙂
codewiki.google
@WebDev_Plus
Там еще есть встроенный чат, где можно спрашивать что угодно про репозиторий: архитектуру, функции, связи файлов и прочее.
Скоро появится поддержка приватных реп в GitHub, так что можно присмотреться заранее
codewiki.google
@WebDev_Plus
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3
This media is not supported in your browser
VIEW IN TELEGRAM
API Popover выводит ваш UI на отдельный верхний слой, так что вам больше не нужно мучиться с управлением фокусом. Плюс оформление затемнения настолько короткое, что помещается прямо сюда:
Создавайте больше, тратя меньше кода → https://goo.gle/3XvDUZk
@WebDev_Plus
[popover]::backdrop {
background: rgb(52, 168, 83);
backdrop-filter: blur(3px);
}Создавайте больше, тратя меньше кода → https://goo.gle/3XvDUZk
@WebDev_Plus
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Next.js 16: cacheLife
Настройка времени, в течение которого:
• заранее подгруженные данные могут переиспользоваться на клиенте без повторного запроса
• заранее отрендеренные данные могут переиспользоваться на сервере без повторного рендера
Документация: https://nextjs.org/docs/app/api-reference/functions/cacheLife
@WebDev_Plus
Настройка времени, в течение которого:
• заранее подгруженные данные могут переиспользоваться на клиенте без повторного запроса
• заранее отрендеренные данные могут переиспользоваться на сервере без повторного рендера
Документация: https://nextjs.org/docs/app/api-reference/functions/cacheLife
@WebDev_Plus
Хватит делать эти (до смешного простые) ошибки в TypeScript.
Не используй String. Серьезно.
String (с большой буквы) - объект-обертка из JS (плохая идея)
string (с маленькой) - примитивный тип (вот так правильно)
То же самое касается Number и Boolean.
Всегда используй типы с маленькой буквы.
@WebDev_Plus
Не используй String. Серьезно.
String (с большой буквы) - объект-обертка из JS (плохая идея)
string (с маленькой) - примитивный тип (вот так правильно)
То же самое касается Number и Boolean.
Всегда используй типы с маленькой буквы.
@WebDev_Plus
🤔6❤1😭1
Await Dictionary продвинулся на Stage 2.7 в TC39
Команда разработки ECMAScript продолжает двигать язык вперед. Сегодня предложение Await Dictionary успешно дошло до Stage 2.7 в комитете TC39.
Одним из активных участников улучшения стал инженер Bloomberg Адам Кутмор, за что коллеги уже успели его поздравить.
Сейчас Promise.all возвращает результаты в виде массива по позициям, что удобно, но не всегда читабельно. Новое предложение Promise.allKeyed даст возможность получать результаты с именованными ключами в объекте. Это упростит код, особенно когда нужно обрабатывать несколько асинхронных операций с разными смыслами.
Фича всё еще в разработке, но выглядит как шаг к более чистому и выразительному асинхронному JavaScript.
@WebDev_Plus
Команда разработки ECMAScript продолжает двигать язык вперед. Сегодня предложение Await Dictionary успешно дошло до Stage 2.7 в комитете TC39.
Одним из активных участников улучшения стал инженер Bloomberg Адам Кутмор, за что коллеги уже успели его поздравить.
Сейчас Promise.all возвращает результаты в виде массива по позициям, что удобно, но не всегда читабельно. Новое предложение Promise.allKeyed даст возможность получать результаты с именованными ключами в объекте. Это упростит код, особенно когда нужно обрабатывать несколько асинхронных операций с разными смыслами.
Фича всё еще в разработке, но выглядит как шаг к более чистому и выразительному асинхронному JavaScript.
@WebDev_Plus
✍5❤1
This media is not supported in your browser
VIEW IN TELEGRAM
В Next.js (с cacheComponents) ожидание данных во время выполнения, например params, задает границу между статической и динамической частью страницы.
Переноси await ближе к тому месту, где он реально нужен.
@WebDev_Plus
Переноси await ближе к тому месту, где он реально нужен.
@WebDev_Plus
This media is not supported in your browser
VIEW IN TELEGRAM
Рекомендация по производительности Postgres: индексируйте все внешние ключи.
Primary key в Postgres индексируется автоматически, но если этот primary key используется как внешний ключ в другой таблице, для него индекс там не создаётся сам по себе - его нужно добавить вручную.
@WebDev_Plus
Primary key в Postgres индексируется автоматически, но если этот primary key используется как внешний ключ в другой таблице, для него индекс там не создаётся сам по себе - его нужно добавить вручную.
@WebDev_Plus
👍1
Проблема: нужно включить пару конкретных настроек VS Code для всех, кто работает над проектом.
Решение: положи настройки в .vscode/settings.json и они автоматически применятся к проекту.
Вот несколько, которые мне нравятся.
@WebDev_Plus
Решение: положи настройки в .vscode/settings.json и они автоматически применятся к проекту.
Вот несколько, которые мне нравятся.
{
// Форматировать при сохранении через Prettier
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
// Чинить все ошибки и предупреждения ESLint при сохранении
"source.fixAll.eslint": "always",
// Организовывать импорты при сохранении
"source.organizeImports": "always"
},
// Использовать TypeScript из workspace, а не встроенный в VS Code
"typescript.tsdk": "node_modules/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true,
// Не автоподтягивать barrel-файлы MUI
"typescript.preferences.autoImportSpecifierExcludeRegexes": ["^@mui/[^/]+$"]
}@WebDev_Plus
Боитесь говорить по-английски? Потренируйтесь с помощью этого ресурса!
Он позволяет вам вести естественные разговоры с искусственным интеллектом.
Вы можете выбрать мужской или женский голос, который будет следовать контексту вашего разговора на протяжении всего общения.
Это бесплатно → http://app.sesame.com
@WebDev_Plus
Он позволяет вам вести естественные разговоры с искусственным интеллектом.
Вы можете выбрать мужской или женский голос, который будет следовать контексту вашего разговора на протяжении всего общения.
Это бесплатно → http://app.sesame.com
@WebDev_Plus
❤6👍1
This media is not supported in your browser
VIEW IN TELEGRAM
React Email 5.0 уже вышел
Лучший способ создавать электронные письма.
✓ Теперь с поддержкой темного режима!
✓ Совместимость с Tailwind 4
✓ 8 новых компонентов
Предварительный просмотр, линтер и многое другое:
→
@WebDev_Plus
Лучший способ создавать электронные письма.
✓ Теперь с поддержкой темного режима!
✓ Совместимость с Tailwind 4
✓ 8 новых компонентов
Предварительный просмотр, линтер и многое другое:
→
npx create-email@latest@WebDev_Plus
❤4
Старая HTML-фича, о которой до сих пор многие не знают или просто не используют, хотя она может заметно упростить вёрстку.
Кнопка submit не обязана быть дочерним элементом своего <form>.
@WebDev_Plus
Кнопка submit не обязана быть дочерним элементом своего <form>.
@WebDev_Plus
😁3❤1
Они выкатили PHP 8.5. И среди новых фич появился отличный пайп-оператор |>.
А разве не говорили, что его похоронили?
@WebDev_Plus
А разве не говорили, что его похоронили?
@WebDev_Plus
This media is not supported in your browser
VIEW IN TELEGRAM
Context-aware CSS эффект свечения/блика на карточке
фишка такая: дублируешь и увеличиваешь иконку. двигаешь её через pointermove. вешаешь feGaussianBlur
https://codepen.io/jh3y/pen/WbwZaNa
@WebDev_Plus
фишка такая: дублируешь и увеличиваешь иконку. двигаешь её через pointermove. вешаешь feGaussianBlur
https://codepen.io/jh3y/pen/WbwZaNa
@WebDev_Plus
❤16👍3🔥2
«Создаёт интерфейсы визуального программирования на основе узлов»
https://github.com/retejs/rete/
@WebDev_Plus
https://github.com/retejs/rete/
@WebDev_Plus
❤6👍3
создал JavaScript за 10 дней
написал язык, который стал основой всего веба
соосновал Mozilla и участвовал в создании Firefox
никогда не выпячивал гений и не бегал за вниманием
всегда ставил инженерию выше хайпа
стал CEO, ушел через 11 дней из-за скандала
тихо вернулся с браузером Brave и перевернул тему приватности в интернете
до сих пор пишет код, до сих пор строит, доказывая, что талант не обязан шуметь
Брендан Айк — легенда, которой пользуются каждый день, но почти никогда не благодарят.
@WebDev_Plus
Please open Telegram to view this post
VIEW IN TELEGRAM
❤18🆒5
Лучшая библиотека для аутентификации в веб-проектах получила обновление и завезла новые фичи:
✓ работа без базы (stateless auth)
✓ более гибкая настройка OAuth
✓ ротация JWT-ключей
Поддерживаются React, Vue, Next.js, Nuxt, Astro и другие.
@WebDev_Plus
✓ работа без базы (stateless auth)
✓ более гибкая настройка OAuth
✓ ротация JWT-ключей
Поддерживаются React, Vue, Next.js, Nuxt, Astro и другие.
npm install better-auth
@WebDev_Plus
Это одна из самых полезных настроек VS Code:
Она показывает прямо в коде, где используется функция или переменная.
Удобно, когда проект большой и нужно быстро понять зависимости и связи в коде.
Ставь лайк. если давно пользуешься🩷
@WebDev_Plus
"typescript.referencesCodeLens.enabled": true
Она показывает прямо в коде, где используется функция или переменная.
Удобно, когда проект большой и нужно быстро понять зависимости и связи в коде.
Ставь лайк. если давно пользуешься
@WebDev_Plus
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7
This media is not supported in your browser
VIEW IN TELEGRAM
Это MicroCAD. Язык программирования для твоих 3D-проектов.
Ты можешь создать собственный LEGO-блок в нескольких строках кода и экспортировать его в STL для 3D-печати.
@WebDev_Plus
Ты можешь создать собственный LEGO-блок в нескольких строках кода и экспортировать его в STL для 3D-печати.
@WebDev_Plus
👍5