Знакомимся с Cruzo. Часть 1. RxBucket – контейнер состояний и конфигураций компонентов на фронте
900k 15 минут назад Знакомимся с Cruzo. Часть 1. RxBucket – контейнер состояний и конфигураций компонентов на фронте Средний 6 мин 385 TypeScript * JavaScript * Angular * ReactJS * Не так давно, я наконец выложил на...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. 900k 15 минут назад Знакомимся с Cruzo. RxBucket – контейнер состояний и конфигураций компонентов на фронте Средний 6 мин 385 TypeScript * JavaScript * Angular * ReactJS * Не так давно, я наконец выложил на github свой фреймворк cruzo – Сам фреймворк писался где-то с 2020г, в свободное от работы время. Причем большую часть времени я потратил на шаблонизатор с реактивными значениями.
Я сам в разработке с 2013 года, начинал с фронта. Еще когда не было angular. js, react - все сидели на jQuery, большая часть сайтов была не как single-page-application, а прям генерировалась на сервере.
Технические детали
Первый мой фреймворк angularjs, поэтому он оказал сильное влияние на cruzo. Но я хотел сделать более минималистичный фреймворк, при этом чтобы все было: шаблонизатор, роутер, хтпп-клиент и чтобы он работал быстрее и весил меньше. Я использовал LLM, по большей части для UI-тестов, примеров.
завершение фреймворка выпало на начало LLM-эры кодогенерации. ~80% кода написаны мной. Использовал также LLM для рутины в vm.
Это сильно ускорило мою работу, ну я в принципе считаю, что LLM не способна решать на самом деле креативные задачи, ее удел, рутина в том или ином виде. Я хотел сделать минималистичный, но в то же время мощный инструмент для создания простых и сложных веб-приложений. Попытался взять хорошие идеи от разных фреймворков и собрать их в одном месте.
Одна из таких идей - это RxBucket - контейнер состояний (где-то это называют стором), я хотел оставить общую идею, но при этом, чтобы она выглядела минималистичной и функциональной from "cruzo"; from "cruzo/ui-components/input"; from "cruzo/ui-components/button-group"; export class DemoRxBucketComponent extends AbstractComponent { static selector = "demo-rx-bucket-component"; dependencies = new Set(); innerBucket = new RxBucket({ input: { config: InputConfig({ placeholder: "Enter your name" }) }, buttonGroup: { config: ButtonGroupConfig({ items: }) } }); currentInputValue$ = this. newRxValueFromBucket(this. innerBucket, "input currentButtonGroupValue$ = this.
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.





