JavaScript.

Я собрал линтер для юридического соответствия сайтов. Сложнее всего было отличить Google Analytics от CSS‑переменной

Коротко. Сервис открывает чужой сайт и считает штраф по КоАП. Внутри двухуровневая проверка по 22 правилам: дешёвые эвристики на cheerio там, где хватает регулярок, и Claude через российский прокси там, где нужно понять смысл текста. На выходе балл от 0 до 100, список нарушений со статьями КоАП и вилкой штрафа. Законы в основе: 152-ФЗ о персональных данных, 242-ФЗ о локализации, закон о рекламе, закон о защите прав потребителей. Ниже стек, архитектура и грабли. Самая обидная грабля в том, что b в JavaScript не образует границу слова перед кириллицей, и детектор молча слепнет на русском тексте.Зачем я вообще это делал

продолжить чтение

Представляем MDN MCP-сервер

Эта статья — перевод оригинальной статьи «Introducing the MDN MCP server».Самые полезные MCP и скиллы для фронтенд разработки можешь найти в этом посте.ВступлениеМы рады объявить о релизе MDN MCP-сервера. MCP (Model Context Protocol) — это открытый стандарт, который позволяет ИИ-инструментам подключаться к внешним источникам данных. MDN MCP-сервер использует этот протокол, чтобы доставлять документацию MDN и данные о совместимости браузеров прямо в твой редактор кода или IDE.

продолжить чтение

Делаем базу знаний и Телеграм бота психотерапевта, с использованием LLM Wiki и CF Workers вот такой заголовок

В предыдущей статье разбирали, как собрать структурированную wiki из markdown-файлов на Astro/Starlight — на примере личного карьерного менеджера. В комментариях появились закономерные вопросы: «почему именно так?», «что за странный выбор стека?», «а для чего ещё это можно использовать, кроме как для себя?».Хороший вопрос. Эта статья отвечает на него делом.Та же механика — wiki из markdown — но теперь с Telegram-ботом поверх. Бот умеет искать по базе знаний и отвечать с цитатами и ссылками на источники. В качестве предметной области выбрана психология и философия: получился @pif_bbot

продолжить чтение

free AI girlfriend. Почему мужчины уходят из экономики отношений и как устроен пространственный 3D-аватар в браузере

продолжить чтение

Как я сжёг 17,4 миллиарда токенов за 25 дней. По тарифам API это 3,2 миллиона рублей. IT приходит конец

В конце цикла я прогнал скрипт по своим логам и увидел число, в которое сам не сразу поверил. За 25 дней, с 24 апреля по 19 мая, я сжёг 17,4 миллиарда токенов. Один человек, 344 сессии, 75 587 ответов ассистента, 176 695 строк транскриптов. Посчитайте это по тарифам API, и выходит 39 651 доллар. Около 3,17 миллиона рублей. Примерно 1586 долларов в день. Почти всё это Opus, самая дорогая модель на рынке.

продолжить чтение

Я делаю ГИГАХРУЩ: браузерный survival horror без движка, ассетов и спокойной жизни

Привет. Я делаю ГИГАХРУЩ — браузерный survival horror / ARPG shooter про вылазки внутри безграничной бетонной структуры.Да, звучит как питч из папки после этого меня точно забанят, поэтому начну с технической части. Это не Unity WebGL, не Phaser, не Godot export, не React‑обвязка вокруг canvas и не набор купленных ассетов. Игра собрана как один браузерный билд на TypeScript/Vite, WebGL/canvas, процедурных текстурах, процедурных спрайтах, процедурном звуке и плоских структурах данных.

продолжить чтение

Как я разогнал Qwen3.6-27B до 73 токен-с в llama.cpp: параметры, которые реально работают

Локальные LLM сейчас — это действительно мощный инструмент. Они уже вплотную приблизились к проприетарным моделям вроде Claude, особенно в задачах кодинга. Я сам активно использую локальные модели для разработки на TypeScript и Go.На данный момент самая интересная модель для моего стека — Qwen3.6-27B. Но один только выбор хорошей модели ничего не гарантирует. Без правильных параметров вы не получите ни скорости, ни качества.В этой статье я расскажу, с какими конкретно параметрами запускаю Qwen3.6-27B в llama.cpp

продолжить чтение

Назирокодил утилиту на Kotlin и JavaScript для создания аккордов в любой тональности

Пробовали когда-нибудь сочинять свои аккорды на гитаре, укулеле или на клавишных? Не всякий аккорд подходить к любому другому, так? Например, ре-мажорный аккорд (D) не очень-то ладит с фа-минорным (Fm). То есть просто "слепить" любые аккорды друг с другом в одну последовательность не получится. Тем более, что хочется, чтобы их было больше 2-х. И повторять до бесконечности Am Dm Em не хочется, так?Для решения этой проблемки написал, используя ИИ, утилиту на JavaScript, доступную по URL:https://6a1998fa8733707618d3a7e0--gregarious-flan-52fbaf.netlify.app/

продолжить чтение

Capacitor: от веба к мобильным приложениям. Часть 4. Интегрируем локальный LLM в проект

Привет, Хабр! Продолжаем серию статей о разработке мобильных приложений с помощью Capacitor. Если вы не читали предыдущие части, лучше начать с них:Часть 0. Зачем нужен CapacitorЧасть 1. Миграция проекта на CapacitorЧасть 2: Как написать свой плагинЧасть 3: OTA-обновленияВ этой части разберём, как запустить языковую модель прямо на телефоне — без сервера, без API-ключей и без постоянного интернета.Зачем локальный AI

продолжить чтение

Kwayk: как я сделал Quake на Qt Quick3D и прикрутил физику из Death Stranding 2

Босс на e1m7Получится ли сделать полноценную 3D-игру на Qt Quick3D?Именно такой вопрос у меня возник, когда я начал изучать Quick3D. Казалось бы, рендер и партиклы есть, базовая физика в лице Quick3D Physics тоже присутствует. Пример CharacterController из Qt

продолжить чтение

123456...10...15