Представляю несколько проектов с исходным кодом начиная от инструментов для повышения производительности до B2B приложений. Решения можно использовать как замену платным.
Chatwoot
Лицензия: Часть компонентов MIT Expat, есть проприетарные лицензии.
![https://www.chatwoot.com https://www.chatwoot.com](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/a26/4c3/253/a264c325373e2d5c464499cd5194309f.png)
Chatwoot - позиционируется как альтернатива Intercom, Zendesk, HubSpot, Salesforce Service Cloud.
В данный момент только чат с поддержкой нескольких каналов: Email, страницы Facebook, Twitter, WhatsApp и др.
Сразу отмечу, что продукт может быть установлен локально в версии Community Edition. Функциональных отличий от платной версии в документации я не нашел, но будет без поддержки.
Архитектура решения содержит следующие сервисы:
Веб-сервисы Chatwoot
Воркеры Chatwoot
СУБД Postgres
СУБД Redis
Сервисы Email (SMTP / sendgrid / mailgum и т.п.)
Хранилище объектов (S3, Azure Storage, GCS, Yandex Object Storage и т.п.)
![Архитектура Chatwoot Архитектура Chatwoot](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/795/d2d/1c0/795d2d1c03345c1e08378e00fe33513d.png)
Возможности:
Общий inbox - взаимодействие между командой упрощается с использованием общего inbox. Назначение различных задач из одного inbox разным исполнителям;
Чат - живое общение на сайте для улучшения пользовательского опыта;
Каналы - поддержка нескольких каналов взаимодействия с пользователем: Email, страница Facebook, Twitter, WhatsApp, Instagram, Line. Доступ к разным каналам объединяется в один поток не требующий переключения;
Автоматизация - автоматизация рутинных задач;
Чатботы - создание чатботов Dialogflow и Rasa и подключение к inbox;
Мобильное приложение - повышение доступности взаимодействие с пользователями через приложения iOS и Android;
Интеграции - доступна интеграция со Slack, WordPress, Dialogflow и Rasa.
Подробнее про интеграцию живых чатов в сайты можно узнать тут.
Amplication
Лицензия Apache-2.0
![https://amplication.com https://amplication.com](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/a78/d9e/140/a78d9e14037359c3836d5e80668fa421.png)
Amplication - инструмент типа low-code/no-code, позволяет генерировать приложение NodeJS с красивой панелью администрирования за считанные минуты.
Возможности:
Геренация React Admin UI с react-admin
NodeJS приложение с БД Postgres
GraphQL и REAT API
Синхронизация с GitHub или скачивается как zip-файл
Окружение для разработки, тестирования
Поддержка Docker для развертывания в облаке
Подробнее о работе с проектом можно узнать тут.
Dokz
Лицензия MIT
Dokz - Инструмент документирования на базе MDX. Простая и легкая замена Docusaurus. Не тратьте время на документирования сайтов, используйте Dokz для быстрого документирования вашего проекта.
Представляет собой движок для написания сайтов с контентом в формате Markdown. Предполагается, что потом сайт будет залит на какую-нибудь площадку с поддержкой NodeJS, например, Netlify.
![https://www.docz.site https://www.docz.site](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/e44/f1e/dde/e44f1edde5458f5cacd6d1cfabec4afc.png)
Нестандартный подход к документированию, потребуется поддержка отдельного процесса документирования. Сейчас популярнее подход документирования в коде с последующей генерацией документации, например, с использованием Sphinx.
Partyrown
Лицензия MIT
Partytown - библиотека ленивой загрузки (lazy-load), которая помогает переместить ресурсоёмкие скрипты из главного потока в Web Workers. Основная цель - ускорить приложение путем отделения основного потока приложения и сторонних библиотек, которые передаются в Web Worker.
![Структура приложения без Partyrown (слева) и с использованием Partyrown (справа) Структура приложения без Partyrown (слева) и с использованием Partyrown (справа)](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/0ec/48d/04f/0ec48d04fa06a7ce4a343997c5c23bde.png)
Если в вашем приложении присутствуют сторонние скрипты, например, Google tag manager, Live chat widget, A/B testing, trackers, их использование может привести к замедлению работы сайта. Partytown позволяет выгрузить из главного процесса в Web Worker эти скрипты, разгрузив работу приложения.
Возможности:
Поддержка интеграция с Astro, Gatsby, HTML, NextJS, Nuxt, React, Remix, Hydrogen(Shopify)
Поддержка различных сторонних сервисов (Facebook Pixel, Google Tag Manager, Adobe Launch, Freshpaint, Hubspot Tracking, Intercom, Klaviyo, TikTok Pixel).
Пример интеграции с Nuxt
Устанавливаем Partytown
yarn add @nuxtjs/partytown # or npm install @nuxtjs/partytown
Добавляем в nuxt.config.js модуль Partytown
import { defineNuxtConfig } from 'nuxt3'
export default defineNuxtConfig({
modules: ['@nuxtjs/partytown'],
})
Для скриптов, которые надо загружать в отдельном Web Worker добавляем атрибут type: 'text/partytown'
<template>
<div>
<Script type="text/partytown" src="https://example.com/analytics.js" />
</div>
</template>
Typesence
Лицензия GPL-3.0
![https://typesense.org/ https://typesense.org/](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/d79/984/967/d79984967ec455248e8569fc3728ed7b.png)
Typesence - Open-source альтернатива для Agolia и Elasticsearch. По утверждениям авторов продукт работает супер быстро и с легкостью интегрируется в приложения.
Возможности:
Коорекция опечаток
Пространственны поиск
Легко устанавливать, обслуживать и масштабировать
Быстрый
Динамическая сортировка результатов с использованием указанных полей в запросе
Поддержка фильтрации
Группировка похожих результатов запроса
Федеративный поиск между несколькими коллекциями в одном запросе
Клиенты для JavaScript, PHP, Python, Ruby, Java
Распределение доступа через ключи API
BackdropCMS
Лицензия GPL-2.0
![https://backdropcms.org/ https://backdropcms.org/](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/5f9/8aa/e9d/5f98aae9d3a788ec5ca55c57eed8e211.png)
BackdropCMS - open-source система управления контентом (CMS) реализованная на базе Drupal. Позволяет создавать настраиваемые веб сайты. Можно создать любые сайты от собственного блога до сайта электронной коммерции.
Возможности:
Модули
Темы
Базовые шаблоны
Hoppscotch
Лицензия MIT
![Интерфейс Hoppscotch Интерфейс Hoppscotch](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/b57/f18/177/b57f1817701a61e31c2b3e62f45b14f9.png)
HoppScotch является open-source альтернативой для клиента тестирования API Postman.
Возможности:
Легковесная
Быстрая
Темы
PWA
GraphQL и REST API
Большинство основных возможностей Postman
Возможна локальный запуск из исходных кодов или в контейнере
Запуск к контейнере:
docker run --rm --name hoppscotch -p 3000:3000 hoppscotch/hoppscotch:latest
NocoDB
Лицензия AGPL-3.0
![Пользовательский интерфейс NocoDB Пользовательский интерфейс NocoDB](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/275/21e/c2c/27521ec2c9d3e0c4598c842de6baf154.png)
NokoDB - open-source альтернатива клиента по визуализации и аналитики Airtable. Конвертирует многие базы данных в умные электронные таблицы. Пользователю не нужно писать запросы или код.
![Представление данных в виде галереи Представление данных в виде галереи](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/1a7/717/66f/1a771766fa694874a4cd32aed1dbd20c.png)
Возможности:
интерфейс электронных таблиц
расширения автоматизации для работы с чатами, почтой, SMS, WhatsApp
Доступ к API (REST, GraphQL, аутентификация JWT, соц. сети и т.п.)
![Представление данных в виде календаря Представление данных в виде календаря](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/19e/23c/a5d/19e23ca5d2404b1ee194001dabf42240.png)
![Архитектура NocoDB Архитектура NocoDB](https://webcf.waybackmachine.org/web/20220506002910/https://habrastorage.org/getpro/habr/upload_files/5b0/3e6/709/5b03e6709b6bf437d65742acfbbf4cbd.png)