Рубрика «javascript» - 9

Однажды передо мной встала довольно интересная задача: обеспечить взаимодействие стороннего веб-приложения - и набора сервисов, имеющих gRPC интерфейс.

Нужно было проводить обработку данных от веб-приложения через конвейеры AI-агентов, собирать конечный результат, и отдавать его приложению.

А также, что немаловажно, обеспечить наглядность мониторинга и управления всем хозяйством.

Мне потребовалось поддержать три типа интерфейсов. Во-первых,RestAPI для веб-приложения. Во-вторых, gRPC для взаимодействия с сервисами. В-третьих, HTTP + Websocket для интерактивного мониторинга и управления.

Читать полностью »

Пролог: Знакомая боль

Привет! У каждого JS-разработчика есть своя история. История о том, как он впервые встретился с этим. Сидишь, пишешь код, всё логично, всё под контролем. И тут, чтобы проверить одну мелочь, открываешь консоль и из чистого любопытства пишешь:

[] + {} // Получаешь: "[object Object]"
// Хм, ладно, массив привел себя к строке, а объект стал... объектом. Логично.

{} + [] // Получаешь... 0 ???
// ЧТО?!

Стоп. Как это вообще возможно? Мы только что поменяли местами два операнда и получили совершенно другой тип данных. Кажется, будто язык издевается над нами.

Добавим классики:

Читать полностью »

Всем привет! Сегодня хочу разобрать кейс, с которым сталкивается почти каждый Angular-разработчик на существующем проекте.

Часто в компонентах можно встретить такой код:

public user: User | null = null;
public posts: Post[] | null = null;
public stats: Stats | null = null;

constructor(private readonly apiService: ApiService) {}

public ngOnInit(): void {
    this.apiService.getUser().subscribe((user) => this.user = user);
    this.apiService.getPosts().subscribe((posts) => this.posts = posts);
    this.apiService.getStats().subscribe((stats) => this.stats = stats);
}

Все загрузки данных у нас происходят в ngOnInitЧитать полностью »

Инициализация проекта на express и установка требуемых библиотек::

npm init -y
npm i express body-parser jsonwebtoken nodemon dotenv pg argon2 cookie-parser

Меняем в package.json: нужно добавить type и скрипт dev

  "main": "index.js",
  "type": "module",
  "scripts": {
    "dev": "nodemon app.js"
  },

Создаем app.js в корневой папке

Предыдущая статья с подборкой моделей для русского

draw a cat which choosing LLM model

draw a cat which choosing LLM model

Читать полностью »

Как я делал автопуть для игры на Phaser (TypeScript) - 1

Пролог

Всем привет! Сразу хочу сказать, что это не гайд, и я не рассказываю, как нужно кодить — просто хочу поделиться тем, что у меня получилось, и что я использовал в процессе разработки.

Читать полностью »

изображение сгенерировано в ChatGPT

изображение сгенерировано в ChatGPT

Читать полностью »

Сегодня я хочу поделиться глубоким исследованием того, как применять золотое сечение в современном дизайне 2025 года. Эта статья основана не только на теории, но и на реальном опыте работы с крупными проектами, A/B тестах и исследованиях пользователей.

Что такое золотое сечение и почему оно работает в 2025 году

Золотое сечение (φ ≈ 1.618) — это математическая константа, которая представляет собой отношение двух величин, при котором отношение суммы этих величин к большей из них равно отношению большей к меньшей. Простыми словами: если у нас есть отрезок длиной A+B, то A/B = (A+B)/A ≈ 1.618.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js