Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/manyakrus/starter
Starter components for golang, for connect to any external service with 1 line of code.
https://github.com/manyakrus/starter
camunda chatgpt email golang imap kafka nats postgres postgresql telegram whatsapp
Last synced: 23 days ago
JSON representation
Starter components for golang, for connect to any external service with 1 line of code.
- Host: GitHub
- URL: https://github.com/manyakrus/starter
- Owner: ManyakRus
- License: mit
- Created: 2023-03-17T07:38:36.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-12T12:34:56.000Z (9 months ago)
- Last Synced: 2024-04-12T20:16:51.940Z (9 months ago)
- Topics: camunda, chatgpt, email, golang, imap, kafka, nats, postgres, postgresql, telegram, whatsapp
- Language: Go
- Homepage:
- Size: 34.7 MB
- Stars: 10
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Набор компонент для языка Golang
Автор: Александр НикитинНабор компонент для языка golang сделан для облегчения работы программиста,
чтобы любой компонент можно было подключить одной строкой кода.Компоненты для запуска любых микросерверов (ядро):
1. log - компонент для логирования информации в консоль (логгер 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()
stopapp.StartWaitStop()//ваш код
stopapp.GetWaitGroup_Main().Wait()
}
```Пример с разными подключениями:
```
func main() {
config.LoadEnv()contextmain.GetContext()
stopapp.StartWaitStop()
mssql_gorm.StartDB()
postgres_gorm.StartDB()
nats.StartNats()
camunda.StartCamunda()
liveness.Start()
stopapp.GetWaitGroup_Main().Wait()
log.Info("App stopped")
}
```