- PVSM.RU - https://www.pvsm.ru -

Puter.js: бесплатный бэкенд для сайтов, приложений и игр

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 1

В 2024 году после трёх лет разработки вышла первая версия Puter OS [1] — «операционной системы для веба». Эта опенсорсная платформа по замыслу напоминает CasaOS [2], которую мы недавно рассматривали [3], но есть ряд отличий, и она гораздо интереснее.

Puter OS более ориентирована на разработчиков, предоставляя бэкенд, файловое хранилище, облачные вычисления и доступ к ИИ (GPT-4o, o1, o3, o4, Claude 3.7 Sonnet, Llama, Amazon Polly, and Dall-E) совершенно бесплатно для сторонних приложений и сайтов, если добавить туда библиотеку puter.js.

Конечным пользователям Puter OS предлагает единый интерфейс «операционной системы» с десятками тысяч веб-приложений на виртуальном «рабочем столе» (демо [4], КДПВ).


Приложения

Выход первой версии стал большим успехом: за несколько месяцев проект привлёк тысячи разработчиков, которые добавили в App Center [5] более 26 000 приложений — от графических редакторов, таких как Polotno [6] от Антона Лавренова, до редакторов кода VSCode [7] и Code With AI [8], а также игр, например Beat Rush [9].

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 2

К настоящему моменту у репозитория Puter на Github более 33,5 тыс. звёзд, в какой-то момент проект попал на первое место HN [10] и завирусился.

Портировать веб-приложение для Puter совсем несложно: достаточно добавить облачную поддержку с помощью puter.js — и не нужно возиться с техническими вещами вроде аутентификации, бэкенда и СУБД.

Code With AI

Code With AI

Из интересных приложений на платформе Puter — игра Half-Life [11]/Xash3D (исходный код [12]).

Бэкенд для приложений

Посмотрим, что даёт Puter SDK для веб-приложений [13] и зачем разработчикам портировать свои программы под облачную ОС. Как мы уже поняли, Puter работает как бэкенд, предоставляя облачное хранилище для рабочих файлов, СУБД, доступ к OpenAI и другие «плюшки» через puter.js:

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 4

Бесплатный и неограниченный OpenAI

Предположим, нужно интегрировать в наше веб-приложение нейронку GPT-4. Для этого достаточно добавить Puter SDK в HTML-файл и вызвать puter.ai.chat().

<html>
<body>
    <script src="https://js.puter.com/v2/"></script>
    <script>
        puter.ai.chat(`What color was Napoleon's white horse?`).then(alert);
    </script>
</body>
</html>

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

Puter SDK обеспечивает приложениям функции распознавания текста OCR API [14], машинного зрения [15], синтеза речи [16], аутентификации [17] и облачного автосохранения для игр [18].

Кроме OpenAI, платформа предоставляет бесплатный неограниченный доступ к следующим сервисам [19], по ссылкам ниже документация по их использованию:

Файловая система

Точно так же, как мы обратились к OpenAI простым вызовом функции, можно взаимодействовать и с файловой системой пользователя в облаке. Вот пример, как создать файл с именем hello.txt с содержанием Hello, world!:

puter.fs.write('hello.txt', 'Hello, world!').then((file) => {
    alert(`File written successfully at: ${file.path}`);
})

Вот так в приложении появилось облачное хранилище. Аутентификация, вопросы безопасности и масштабирования полностью долежат на стороне Puter.

Встроенная СУБД

Теперь представим, что нужно хранить информацию о пользователе в базе данных — распространённая схема в приложениях. Это делается с помощью встроенного в Puter облачного хранилища ключ-значение [30], бесплатной альтернативы DynamoDB:

<html>
<body>
    <script src="https://js.puter.com/v2/"></script>
    <script>
        // (1) Save user preference
        puter.kv.set('userPreference', 'darkMode').then(() => {
            // (2) Get user preference
            puter.kv.get('userPreference').then(value => {
                puter.print(`User preference: ${value}`);
            });
        })
    </script>
</body>
</html>

Вот и всё. Никаких серверов, DevOps, API-ключей, проблем с безопасностью.

Больше примеров см. в документации Puter [31]. Обратите внимание, что Puter официально ещё не вышел из бета-версии, поэтому над проектом ещё продолжается активная работа. В будущем обещают базы SQL, облачных вычислений, больше API для ИИ и т. д.

Новая модель инфраструктуры

Таким образом, главное преимущество для веб-разработчика — абсолютно бесплатная инфраструктура независимо от количества пользователей. По мнению создателей, Puter — это «новая модель инфраструктуры, которая значительно снижает стоимость разработки и эксплуатации современного программного обеспечения».

Среди партнёров платформы — сервис Lovable [32], который помогает навайбкодить веб-приложение через промпты к LLM, а после тестирования одним нажатием кнопки захостить его на платформе Puter (инструкция [33]).

Хостинг сайта

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 5

На платформу Puter можно загрузить свой сайт [34].

Хостинг [35] статического сайта:

<html>
<body>
    <script src="https://js.puter.com/v2/"></script>
    <script>
        (async () => {
            // (1) Создать случайную директорию
            let dirName = puter.randName();
            await puter.fs.mkdir(dirName)

            // (2) Создать в этой директории 'index.html' с текстом "Hello, world!"
            await puter.fs.write(`${dirName}/index.html`, '<h1>Hello, world!</h1>');

            // (3) Захостить директорию на случайном поддомене
            let subdomain = puter.randName();
            const site = await puter.hosting.create(subdomain, dirName)

            puter.print(`Website hosted at: <a href="https://${site.subdomain}.puter.site" target="_blank">https://${site.subdomain}.puter.site</a>`);
        })();
    </script>
</body>
</html>

В песочнице Puter.js Playground [36] можно посмотреть, как в реальности работают разные запросы к Puter. В левой части пишем код, а по нажатию кнопки Run видим результат его выполнения:

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 6

Установка на своём сервере

Платформу Puter можно поднять на своём хостинге [35], обеспечив инфраструктуру для любых веб-приложений и сайтов.

Системные требования:

  • Операционные системы: Linux, macOS, Windows

  • RAM: 2 ГБ минимум (4 ГБ рекомендуется)

  • Свободное место на диске: 1 ГБ

  • Node.js 16+ (рекомендуется 23+)

  • npm последней стабильной версии

Установка в локальном окружении:

git clone https://github.com/HeyPuter/puter
cd puter
npm install
npm start
Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 7

После этого Puter станет доступен в локальной сети по адресу http://puter.localhost:4100/ [37] или на следующем свободном порту.

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 8

Пароль к учётной записи администратора сгенерирован и указан в консоли выше.

Установка на VPS:

На удалённом сервере проще всего воспользоваться контейнером Docker.

Для этого выбираем в маркетплейсе [38] инстанс DOCKER CE – UBUNTU 18.04 [39] с установленным Docker CE и Docker Compose. Начинается установка системы, которая занимает несколько минут:

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 9

Подключаемся к серверу 194.87.248.123 по SSH и устанавливаем докер-контейнер Puter:

mkdir -p puter/config puter/data
sudo chown -R 1000:1000 puter
wget https://raw.githubusercontent.com/HeyPuter/puter/main/docker-compose.yml
docker compose up
Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 10

Затем нужно изменить настройки в файле config.md [40] и сконфигурировать домен [41], добавив соответствующие строки в hosts.

194.87.248.123 puter.local
194.87.248.123 api.puter.local
Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 11

После этого Puter станет доступен через интернет по адресу http://194.87.248.123:4100/ [42].

Более подробно о самохостинге Puter см. в документации [43].


Таким образом, puter.com [4] работает как бесплатный бэкенд и инфраструктура для веб-приложений, игр и сайтов. Достаточно всего лишь запустить библиотеку puter.js, которая обрабатывает все запросы к бэкенду. Неудивительно, что такой привлекательным предложением уже воспользовались более 31 тыс. разработчиков для 43 тыс. приложений и сайтов, более 220 тыс. установок на самохостинге:

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 12

Опенсорсный проект можно установить на своём хостинге [35] — на домашнем сервере или VPS [35]. Здесь он будет выполнять ту же роль бэкенда, тоже через puter.js.

Это интернет-ОС, которая «живёт» на сервере. Приложения написаны на веб-стеке Node.js и доступны с любого терминала: редакторы кода, графические редакторы, интерфейсы к LLM, игры и многое другое. Это облачное хранилище, СУБД NoSQL, хостинг [35] сайтов, интеграция с ИИ для любых приложений и сервис аутентификации. Всё это «на 100% бесплатно и навсегда». По крайней мере, так обещают [44].

Если для разработчиков Puter — это бесплатная инфраструктура, то для обычных пользователей это «персональный интернет-компьютер», рабочий стол, доступный через интернет с любого устройства. По идее, именно пользователь должен платить за эту бесплатную инфраструктуру, но пока не совсем понятно, каким образом планируется осуществлять монетизацию.

«Интернет-компьютер» Puter пока в бета-версии. Посмотрим, насколько популярной окажется такая концепция.

P. S. Кстати, если открыть в браузере рабочий стол Puter, то в этом браузере можно запустить другой браузер [45].

Puter.js: бесплатный бэкенд для сайтов, приложений и игр - 13

Как вариант, можно сразу загрузить Puter в Puter [46].

© 2025 ООО «МТ ФИНАНС»

Автор: ru_vds

Источник [47]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/oblachny-j-hosting/425417

Ссылки в тексте:

[1] Puter OS: https://github.com/HeyPuter/puter

[2] CasaOS: https://casaos.zimaspace.com/

[3] рассматривали: https://habr.com/ru/companies/ruvds/articles/913392/

[4] демо: https://puter.com/

[5] App Center: https://puter.com/app/app-center

[6] Polotno: https://studio.polotno.com/

[7] VSCode: https://puter.com/app/code

[8] Code With AI: https://puter.com/app/code-with-ai

[9] Beat Rush: https://puter.com/app/beat-rush

[10] на первое место HN: https://news.ycombinator.com/item?id=39597030

[11] Half-Life: https://puter.com/app/half-life-c3j01ag3pyd

[12] исходный код: https://github.com/Pixelsuft/hl

[13] что даёт Puter SDK для веб-приложений: https://nj.puter.site/web-os/

[14] OCR API: https://developer.puter.com/tutorials/free-unlimited-ocr-api/

[15] машинного зрения: https://developer.puter.com/tutorials/serverless-ai-forever-free-for-developers/

[16] синтеза речи: https://developer.puter.com/tutorials/free-unlimited-text-to-speech-api

[17] аутентификации: https://developer.puter.com/tutorials/free-unlimited-auth-api/

[18] автосохранения для игр: https://developer.puter.com/tutorials/free-unlimited-cloud-save-api-for-games/

[19] следующим сервисам: https://developer.puter.com/tutorials/

[20] Claude API: https://developer.puter.com/tutorials/free-unlimited-claude-35-sonnet-api

[21] OpenRouter API: https://developer.puter.com/tutorials/free-unlimited-openrouter-api

[22] DeepSeek API: https://developer.puter.com/tutorials/free-unlimited-deepseek-api

[23] Gemini API: https://developer.puter.com/tutorials/free-gemini-api

[24] o3-mini API: https://developer.puter.com/tutorials/free-unlimited-o3-mini-api

[25] o1-mini API: https://developer.puter.com/tutorials/free-unlimited-o1-mini-api

[26] Mistral Large API: https://developer.puter.com/tutorials/free-unlimited-mistral-large-api

[27] Codestral API: https://developer.puter.com/tutorials/free-unlimited-codestral-api

[28] Llama API: https://developer.puter.com/tutorials/free-unlimited-llama-api

[29] Claude 3.7 Sonnet API: https://developer.puter.com/tutorials/free-unlimited-claude-37-sonnet-api

[30] облачного хранилища ключ-значение: https://developer.puter.com/tutorials/add-a-cloud-key-value-store-to-your-app-a-free-alternative-to-dynamodb

[31] документации Puter: https://docs.puter.com/

[32] Lovable: https://lovable.dev/

[33] инструкция: https://developer.puter.com/tutorials/create-a-full-stack-app-with-lovable/

[34] загрузить свой сайт: https://developer.puter.com/tutorials/add-upload-to-your-website-for-free/

[35] Хостинг: https://www.reg.ru/?rlink=reflink-717

[36] Puter.js Playground: https://docs.puter.com/playground/

[37] http://puter.localhost:4100/: http://puter.localhost:4100/

[38] маркетплейсе: https://ruvds.com/ru/mp/

[39] DOCKER CE – UBUNTU 18.04: https://ruvds.com/ru/mp/docker/

[40] config.md: https://github.com/HeyPuter/puter/blob/main/doc/self-hosters/config.md

[41] сконфигурировать домен: https://github.com/HeyPuter/puter/blob/main/doc/self-hosters/domains.md

[42] http://194.87.248.123:4100/: http://194.87.248.123:4100/

[43] документации: https://github.com/HeyPuter/puter/blob/main/doc/self-hosters/instructions.md

[44] обещают: https://developer.puter.com/

[45] другой браузер: https://puter.com/app/scramjet-browser

[46] Puter в Puter: https://puter.com/app/puter

[47] Источник: https://habr.com/ru/companies/ruvds/articles/927970/?utm_source=habrahabr&utm_medium=rss&utm_campaign=927970