Мы делаем чат-агрегатор, где в одном окне доступны GPT, Claude, Kimi и DeepSeek. Фронтенду нужно отдавать ответ в реальном времени — токен за токеном, как в ChatGPT. Бэкенд при этом ходит к четырём разным API, и стриминг у них устроен по-разному. Расскажу, как мы свели это к единому SSE-потоку наружу, и про две грабли, на которые наступили: рваные UTF-8 символы и парсинг чужих SSE.Статья будет полезна всем, кто проксирует LLM через свой сервер.Зачем вообще свой проксиФронтенд не должен знать кл…
$mol — реактивный микромодульный фронтенд-фреймворк, который Дмитрий Карловский (nin-jin) и сообщество развивают с 2016 года. За эти годы накопилась сотня статей на Хабре и большая документация на mol.hyoo.ru, но разбросанные по годам и площадкам тексты сложно осваивать линейно.Это навигатор. На каждый материал один абзац о сути и ссылка на оригинал.СодержаниеЗачем $mol и для когоКак выглядит кодИстория $molРеактивность — фундаментАрхитектура $molРуководство: как писать на $molУтилиты экосистем…
Free, open-source Windows optimization tool for performance, privacy, and simplicity. optimizerDuck optimizerDuck is a free, open-source Windows optimization tool focused on performance, privacy, and simplicity. Getting Started | How It Works | FAQ English | Tiếng Việt | 繁體中文 | 简体中文 | Русский | Français | 한국어 | Español | 日本語 | Polski | Português (BR) ⭐ Star History If optimizerDuck helped improve your PC, consider giving the repo a ⭐ and sharing it with others. Every star helps mot…
A self-hosted data logger for your Tesla 🚘 [main maintainer=@JakobLichterfeld]TeslaMate A powerful, self-hosted data logger for your Tesla. Written in Elixir Data is stored in a Postgres database Visualization and data analysis with Grafana Vehicle data is published to a local MQTT Broker ⚠️ Security Warning CautionUse Official Versions Only To protect yourself from malicious forks, malware, and data theft, please ensure you only obtain TeslaMate from the official source: Official R…
Запись в Notion - и текст на чужом сервере. Задачи в облачном планировщике - данные в чужой аналитике.Волна локальных LLM показала широкой аудитории, что on-device - это реально. Модель работает, данные не покидают машину. RAG в indexeddb - кто так не делал?Тот же сдвиг происходит с обычными инструментами. Всё заметнее, что ежемесячная подписка - это аренда софта, которым не владеешь и который нельзя отключить от сети.Я доделал свои 7 pet-проектов. Все работают целиком в браузере, без сервера, …
Здравствуйте уважаемые читатели. За ранее хочу сказать, что это мой первый пост и не судите очень строго. Сегодня пост будет посвящен передачи значений переменной PHP в JavaScript — сценарий. Этот урок подойдет самым новичкам, тем кто только начинает заниматься Web — программированием. Для начала создадим обычный документ index.php и его каркасом будет служить простой HTML код. <!DOCTYPE HTML> <html> <head> <meta charset = "utf-8" > <title>Работа с пере…
И так, вы в Telegram Web и вы запускаете безобидное на первый взгляд Mini App, сворачиваете его или просто переключаетесь на соседний приватный чат, чтобы продолжить переписку. Казалось бы, контексты изолированы, фрейм приложения неактивен, и вы в полной безопасности. Но так ли это на самом деле? Всё началось с негромких новостей от малоизвестного блогера, которого в сети называют «Дядя J», который упомянул странное поведение Mini Apps в Telegram и не только. А проблема заключалась в фрейме. Я …
Один из лучших способов по-настоящему разобраться в инструменте — понять, как он устроен изнутри. С большинством JavaScript-библиотек у меня работает так: мне не нужно заглядывать в исходники, потому что по дизайну API уже можно примерно представить его реализацию. Но API фикстур в Playwright поставил меня в тупик. Минимальный тест выглядит следующим образом:import { test, expect } from "@playwright/test"; test("basic test", async ({ page }) => { await page.goto("https…
Когда верстаешь адаптив, постоянно скачешь между десктопом и мобильной версией: то DevTools в режиме устройства, то ресайз окна, то открыть на телефоне. Десктоп и мобайл при этом никогда не видны одновременно — один прячется, когда смотришь на другой. А при показе работы заказчику демонстрация «узкого окна браузера» по видеосвязи выглядит так себе.Готовые решения, конечно, есть. Я смотрел на мобильные симуляторы из Chrome Web Store — например «Mobile First»Мобильный симулятор - тестирование ада…