Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Markr

Go Version License

Markr — это современная, облачно-ориентированная (cloud-native) платформа для управления ссылками и закладками, построенная на базе микросервисной архитектуры. Проект демонстрирует лучшие практики построения распределенных систем на Go.

Архитектура

Проект построен с использованием следующих технологий и паттернов:

  • Язык: Go 1.26+
  • Микросервисы: go-kit (разделение на Transport, Endpoint, Service)
  • Коммуникация: gRPC + Protocol Buffers (внутреннее взаимодействие)
  • База данных: PostgreSQL (основное хранилище) + Redis (кэш/сессии)
  • Асинхронность: NATS (брокер сообщений для событийной архитектуры)
  • Serverless: Nuclio (для фоновых задач, например, проверки доступности ссылок)
  • Тестирование: Ginkgo (BDD) + интеграционные тесты с реальными Docker-контейнерами

Подготовка окружения

Для локальной разработки и запуска тестов вам понадобятся:

  1. Go 1.26 или новее: Установка Go
  2. Docker: Для запуска зависимостей (PostgreSQL, Redis, NATS) в изолированных контейнерах.
  3. Protobuf Compiler (protoc): Для генерации кода из .proto файлов (понадобится на поздних этапах).

About

Modern cloud-native microservices bookmark platform in Go.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages