Представляю несколько проектов с исходным кодом начиная от инструментов для повышения производительности до B2B приложений. Решения можно использовать как замену платным.

Chatwoot

Лицензия: Часть компонентов MIT Expat, есть проприетарные лицензии.

https://www.chatwoot.com
https://www.chatwoot.com

Chatwoot - позиционируется как альтернатива  IntercomZendeskHubSpot, 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

Возможности:

  • Общий 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

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

Нестандартный подход к документированию, потребуется поддержка отдельного процесса документирования. Сейчас популярнее подход документирования в коде с последующей генерацией документации, например, с использованием Sphinx.

Partyrown

Лицензия MIT

Partytown - библиотека ленивой загрузки (lazy-load), которая помогает переместить ресурсоёмкие скрипты из главного потока в Web Workers. Основная цель - ускорить приложение путем отделения основного потока приложения и сторонних библиотек, которые передаются в Web Worker.

Структура приложения без Partyrown (слева) и с использованием Partyrown (справа)
Структура приложения без Partyrown (слева) и с использованием Partyrown (справа)

Если в вашем приложении присутствуют сторонние скрипты, например, 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/

Typesence - Open-source альтернатива для Agolia и Elasticsearch. По утверждениям авторов продукт работает супер быстро и с легкостью интегрируется в приложения.

Возможности:

  • Коорекция опечаток

  • Пространственны поиск

  • Легко устанавливать, обслуживать и масштабировать

  • Быстрый

  • Динамическая сортировка результатов с использованием указанных полей в запросе

  • Поддержка фильтрации

  • Группировка похожих результатов запроса

  • Федеративный поиск между несколькими коллекциями в одном запросе

  • Клиенты для JavaScript, PHP, Python, Ruby, Java

  • Распределение доступа через ключи API

BackdropCMS

Лицензия GPL-2.0

https://backdropcms.org/
https://backdropcms.org/

BackdropCMS - open-source система управления контентом (CMS) реализованная на базе Drupal. Позволяет создавать настраиваемые веб сайты. Можно создать любые сайты от собственного блога до сайта электронной коммерции. 

Возможности:

  • Модули

  • Темы

  • Базовые шаблоны

Hoppscotch

Лицензия MIT

Интерфейс Hoppscotch
Интерфейс Hoppscotch

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

NokoDB - open-source альтернатива клиента по визуализации и аналитики Airtable. Конвертирует многие базы данных в умные электронные таблицы. Пользователю не нужно писать запросы или код.

Представление данных в виде галереи
Представление данных в виде галереи

Возможности:

  • интерфейс электронных таблиц

  • расширения автоматизации для работы с чатами, почтой, SMS, WhatsApp

  • Доступ к API (REST, GraphQL, аутентификация JWT, соц. сети и т.п.)

Представление данных в виде календаря
Представление данных в виде календаря
Архитектура NocoDB
Архитектура NocoDB

Комментарии (9)


  1. white_nigga
    16.04.2022 18:03

    Какая лицензия, или лицензии, позволяет коммерческое использование проэкта? То есть, взять, запустить его его у себя на сервере, продавая доступ к нему.

    Какие обязанности, вкратце, накладываются на того, кто его крутит?


    1. dnazarov007 Автор
      16.04.2022 18:04
      +3

      Тип лицензии указан под заголовком каждого решения


      1. white_nigga
        16.04.2022 18:50
        -14

        Я не спрашиваю какой тип лицензии у каждого из перечисленных проэктов.


    1. Ermak
      17.04.2022 13:50

      Мы используем проекты с лицензией Apache 2.0 без проблем. С лицензией MIT есть проблемы, но тоже используем с одобрения юристов.


      1. dnazarov007 Автор
        17.04.2022 21:02
        +1

        Я считал, что MIT наиболее интересная лицензия, а с лицензиями GPL и MPL могут быть проблемы


  1. Apokalepsis
    17.04.2022 17:37

    Спсибо за подборку, только в hoppscotch уберите фразу - «Все возможности Postman», до всех возможностей ему очень далеко, но инструмент отличный.


    1. trolley813
      17.04.2022 20:52
      +1

      Есть и еще одна опенсорсная альтернатива Postman - Insomnia Core (сайт). Вещь неплохая, сам пользуюсь достаточно давно.


      1. dnazarov007 Автор
        17.04.2022 20:54

        Отлично


    1. dnazarov007 Автор
      17.04.2022 20:54

      Так было в оригинальной статье, видимо, автору было достаточно функционала ) Исправил на более мягкую формулировку