Разработчик из FlutterFlow собрал прототип 2D-холста для работы, где терминалы, приложения и браузеры можно размещать рядом, а не в ряду вкладок. Идея так захватила команду, что продукт довели до ума и назвали Campus. Campus бесплатен и уже доступен для macOS.
Раньше разработка шла линейно: спланировали, сделали, переключились. С приходом агентного кодирования работать стало иначе — обсуждать задачу дольше, чем поручить её агенту. Люди всё чаще занимаются несколькими делами параллельно, но платят за это переключением контекста. Именно оно делает инженерную работу утомительной, хотя самой работы стало меньше.
Автор долго искал способы упаковать работу в более целостное пространство. Сначала поселил агентов в Minecraft — там уже есть 3D, сеть и моддинг. Потом сделал прототип на Three.js, чтобы не покупать Minecraft, но от 3D кружилась голова. Коллега Абель подсказал, что интереснее сделать в 2D. Через день появился прототип на Flutter, и команда добровольно перешла на него.
Campus — это совместный бесконечный холст, на котором можно реально работать. Из коробки есть терминалы, веб-браузеры, ассеты, в разработке — система плагинов. Философия проста: всё должно быть в контексте. Связанные вещи лежат рядом, сгруппированные по задаче, а не по типу. Агент, который делает работу, готовое приложение, тикеты и инспирация — всё в одной области. Переключение контекста не исчезает, но подхватывать задачу снова стало проще.
Чем Campus отличается от Miro, FigJam и Obsidian Canvas? Там тайл — это картинка: скриншот, стикер, ссылка на настоящий объект. В Campus тайл — это и есть реальная вещь. Терминал работает в репозитории, приложение рядом — реальный запущенный билд. Работу не вставляют в Campus, её кладут в Campus.
Пространственная память работает лучше вкладок. По расположению и размеру тайлов сразу видно, что где выполняется. Даже в беспорядке легко ориентироваться.
Мультиплеер опционален: всё происходит на личных компьютерах, работа локальна, а шаринг — явное действие. Ассеты определяются хэшами, недостающее просится у владельца через fanout-сервер, без прямых соединений между участниками. В планах — перейти на настоящий p2p с помощью Iroh.
Ещё неожиданно прижился локальный чат: сообщение по "/" появляется у курсора и исчезает. Видны опечатки, сообщение легко пропустить, но именно это создаёт живые микровзаимодействия, как у кулера.
Campus бесплатен, ядро останется бесплатным. Дальше — расширения на WASM, мобильное приложение в TestFlight, веб-версия на Flutter, 3D-возможности благодаря работе Brandon DeRosier.