1
0
mirror of https://github.com/ManyakRus/starter.git synced 2024-11-24 08:52:34 +02:00
Go to file
2023-05-02 09:51:50 +03:00
calendar сделал gpt4 2023-05-02 09:51:50 +03:00
camunda_connect сделал gpt4 2023-05-02 09:51:50 +03:00
chatgpt_connect сделал gpt4 2023-05-02 09:51:50 +03:00
claim_debtors_list/internal/v0/app сделал gpt4 2023-05-02 09:51:50 +03:00
config сделал gpt4 2023-05-02 09:51:50 +03:00
constants сделал log 2023-04-25 17:28:10 +03:00
contextmain new 2023-03-17 11:20:09 +03:00
email сделал gpt4 2023-05-02 09:51:50 +03:00
email_imap сделал gpt4 2023-05-02 09:51:50 +03:00
fiber_connect сделал gpt4 2023-05-02 09:51:50 +03:00
kafka_connect сделал gpt4 2023-05-02 09:51:50 +03:00
liveness сделал gpt4 2023-05-02 09:51:50 +03:00
log сделал gpt4 2023-05-02 09:51:50 +03:00
logger сделал gpt4 2023-05-02 09:51:50 +03:00
micro сделал gpt4 2023-05-02 09:51:50 +03:00
mssql_connect сделал gpt4 2023-05-02 09:51:50 +03:00
mssql_func сделал log 2023-04-25 17:28:10 +03:00
mssql_gorm сделал gpt4 2023-05-02 09:51:50 +03:00
mssql_stek сделал gpt4 2023-05-02 09:51:50 +03:00
nats_connect сделал gpt4 2023-05-02 09:51:50 +03:00
pdf_generator сделал gpt4 2023-05-02 09:51:50 +03:00
ping сделал gpt4 2023-05-02 09:51:50 +03:00
postgres_connect сделал gpt4 2023-05-02 09:51:50 +03:00
postgres_func сделал log 2023-04-25 17:28:10 +03:00
postgres_gorm сделал gpt4 2023-05-02 09:51:50 +03:00
postgres_pgx сделал gpt4 2023-05-02 09:51:50 +03:00
postgres_stek сделал gpt4 2023-05-02 09:51:50 +03:00
stopapp сделал gpt4 2023-05-02 09:51:50 +03:00
vendor сделал gpt4 2023-05-02 09:44:46 +03:00
whatsapp_connect сделал gpt4 2023-05-02 09:51:50 +03:00
.env_empty сделал gpt4 2023-05-02 09:44:46 +03:00
.gitignore new 2023-03-17 11:20:09 +03:00
go.mod сделал gpt4 2023-05-02 09:51:50 +03:00
go.sum сделал gpt4 2023-05-02 09:44:46 +03:00
graph.svg сделал log 2023-04-25 17:28:10 +03:00
Makefile сделал gpt4 2023-05-02 09:51:50 +03:00
readme.eng new 2023-03-17 11:20:09 +03:00
README.md new 2023-03-17 11:20:09 +03:00

Набор компонент для языка Golang Автор: Александр Никитин Skype login: Travianbot

Набор компонент для языка golang сделан для облегчения работы программиста, чтобы любой компонент можно было подключить одной строкой кода.

Компоненты для запуска любых микросерверов (ядро):

  1. logger - компонент для логирования информации в консоль (logrus)
  2. contextmain - контекст общий на всё приложение
  3. stopapp - ожидание завершения работы приложения Gracefull shutdown (CTRL+C), WaitGroup
  4. config - загрузка параметров из файла .env или из переменных окружения

Подключение к внешним сервисам:

  1. camunda_connect - подключение с сервису camunda
  2. chatgpt_connect - подключение к сервису ChatGPT OpenAI, искуственный интеллект
  3. fiber_connect - подключение веб сервера с компонентой fiber
  4. kafka_connect - подключение к брокеру сообщений kafka
  5. liveness - создание примитивного веб сервера для проверки работает или нет микросервис
  6. mssql_connect - подключение к серверу Microsoft SQL server с драйвером sqlx
  7. mssql_gorm - подключение к серверу Microsoft SQL server с драйвером gorm
  8. nats_connect - подключение к брокеру сообщений NATS
  9. postgres_connect - подключение с серверу баз данных Postgres, с драйвером sqlx
  10. postgres_gorm - подключение с серверу баз данных Postgres, с драйвером gorm
  11. postgres_pgx - подключение с серверу баз данных Postgres, с драйвером pgx
  12. whatsapp_connect - подключение к сервисам мессенджера whatsapp

Каждое подключение к внешним сервисам использует общий logger, contextmain, WaitGroup, config, и свою структуру Settings с параметрами

А также дополнительные библиотеки:

  1. micro - набор небольших полезных функций
  2. ping - функция для проверки работы порта на нужном хосте

Пример минимального ядра:

func main() { config.LoadEnv() contextmain.GetContext() stopapp.StartWaitStop()

//ваш код

stopapp.GetWaitGroup_Main().Wait()

}

Пример с разными подключениями:

var log = logger.GetLog()

func main() { config.LoadEnv() contextmain.GetContext()

stopapp.StartWaitStop()

mssql_gorm.StartDB()

postgres_gorm.StartDB()

nats.StartNats()

camunda.StartCamunda()

liveness.Start()

stopapp.GetWaitGroup_Main().Wait()

}