Vue-FAQ
940 subscribers
586 photos
93 videos
571 links
Канал сайта https://vue-faq.org
Информация о Vue.js, фронтенд разработке и не только

Contacts: @RuslanMakarov
Download Telegram
Вчера устроил небольшой AI батл.

На бэкенде надо было разгрести код (PHP), разбить по модулям. Несколько десятков классов. Запросил мнения 4 LLMs

- horizon-beta
- o3
- sonnet 4
- gpt4.1

Gemini-2.5 Pro начала работать, но сломалась. Такое с ней бывает в Cursor-e

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

horizon-beta понравилась быстротой и легкостью (в хорошем смысле) рассуждений. Непонятно, откуда она взялась. В кодинге не очень хорошо видит контекст.

o3 выдала очень полезное точечное решение.

sonnet подходит ко всему обстоятельно, но сидит в своих фиксированных рамках. Вот только так он хочет делать, а по-другому плохо. И код твой он так же перелопачивает под свою дудку, если дать волю.

В итоге сделал компиляцию первых двух, и зашлифовал sonnet-ом.

#ai #cursor
🔥4
Давно Минина не было

Вышло сегодня "собеседование" на senior позицию Vue (React) разработчика

Два чувака не стесняясь несут откровенную пургу
Не стесняясь - потому что работают исключительно на свою безмозглую вкатунскую аудиторию

Немного потыкал
Особенно понравилось вот это - "Особенности использования FSD в Vue"
Не смотрите, что там всего 18 секунд, они смогли осветить всё, что vue fsd-эшники так хотели знать

Видео: Youtube | Rutube

#minin
😁141🤮1
В Cursor появился GPT 5

Попробовал - по-моему, прям ощутимо лучше Sonnet 4

Когда надо было сделать модульный стор с запретом использовать Pinia, сгенерил такое:

/**
* RecordingsRepository provides a single facade for listing and mutating
* recordings, hiding the origin (client/server) and orchestrating syncing.
* It is intentionally simple and uses module-level reactive state.
*/
class RecordingsRepositoryImpl {
private storage = useStorageManager();
private api = useRecordingApi();

recordings = ref<Recording[]>([]);
error = ref<string | null>(null);

...

}

export const recordingsRepository = new RecordingsRepositoryImpl();

export function useRecordingsRepository() {
return recordingsRepository;
}


Кажется, это решение решает проблему цикличных импортов, который бывает с export a = ref(); на уровне JS модуля

#ai
👎5👍42
This media is not supported in your browser
VIEW IN TELEGRAM
Триллер

Скоро во всех кинотеатрах

#video #vite #evanyou
👍101
10 вопросов проверить свою CSS грамотность

Ответы тут

#css
4
Невзлетевший стейт менеджер - Vaxee

С неплохими идеями и плохим маркетингом и связями

Есть какой-нибудь получивший распространение Vue продукт, сделанный не бандой Nuxt-a и Ко?

#reactivity #pinia
Composables-first подход

Это когда:

1. Сперва проектируешь модели данных (ts типы и js классы)
2. Затем создаешь composables и модульные сторы, которые самостоятельно имплементируют всю бизнес логику
3. И только после создаешь компоненты, которые используют эти композаблы

(В противовес сперва созданию компонентов, и затем выделению из них композаблов.)

Получаем более лучшее переиспользование, тестируемость, масштабируемость, и из формошлёпов превращаемся во фронтенд-архитекторов.

P.S. Термин и концепцию "сomposables-first" предложил `sonnet 4`. На момент предложения в Гугле ничего похожего не нашлось.

#architecture #ai
👍183
Случайно обнаружил, что pnpm понимает package.json5

Дилбрейкер

npm явно отвергла идею нативной поддержки JSON5 в package.json. Их аргументация заключается в том, что это вызовет слишком большие потрясения в экосистеме, поскольку множество инструментов ожидают строгого JSON, и в Node.js отсутствует встроенный парсер JSON5 .


#pnpm #npm #json
🫡6
Откуда логотип `Apple`?

Алан Тьюринг (1912–1954) — британский математик, логик и криптограф, один из основателей современной информатики. Его работы заложили основы теории алгоритмов и искусственного интеллекта. Во время Второй мировой войны Тьюринг сыграл ключевую роль в расшифровке сообщений немецкой машины «Энигма», что значительно сократило продолжительность войны и спасло тысячи жизней.

В 1952 году Тьюринг был осуждён по обвинению в «грубой непристойности» из-за своей гомосексуальности, которая в Великобритании тогда считалась уголовным преступлением. Вместо тюремного заключения он подвергся принудительной гормональной терапии («химической кастрации»), что повлекло потерю доступа к секретным проектам и серьёзные последствия для его здоровья.

Алан Тьюринг умер 7 июня 1954 года в результате отравления цианидом. Рядом с его телом было найдено надкусанное яблоко, пропитанное ядом. Официальная версия — самоубийство, хотя точные обстоятельства остаются предметом обсуждений.

В 2013 году Тьюринг был посмертно помилован королевой Елизаветой II.

#history #apple
👍1
Cursor выпустил CLI версию себя

Теперь им можно пользоваться в любом другом IDE или в терминале. Выглядит забавно.

Еще из приятных новостей - в нем убрали ограничение на max 25 tool calling за раз. Теперь он может исправить 60 ошибок линтера и сделать еще кучу всего за один вызов. Очень удобно и экономно.



Меж тем MCP сервера, о которых совсем недавно я писал как о какой-то новинке, захватили AI мир. Их уже тысячи, если не десятки тысяч.

Пример, которыми пользуюсь я:

1) Ark-UI - MCP сервер используемой мной UI библиотеки. Содержит документацию и примеры кода по компонентам. Раньше приходилось скармливать IDE ссылку на доку, она часто ошибалась при генерации и исправлении ошибок, а сейчас сказал - "мне надо BaseSelect как обертку над ark select", и сразу получаешь рабочий код.

2. MySQL MCP сервер позволяет IDE работать с БД, - например, читать таблицу логов. Теперь она может тестируя свою работу в одном запросе писать тестовые файлы и сразу проверять гипотезы по логам и приходить к нужному результату быстрее.

3. Context7 - содержит актуальные документации к большому количеству библиотек. Включая Vue, естественно.

#ai #cursor #mcp
👍7🤝1
На чем они учат Sonnet?

Скоро матерится начнёт...

#ai
😁4