Skip to content

Blog Service

概要

Blog Serviceは、技術記事とライフスタイル記事を管理するためのGoマイクロサービスです。記事の作成・編集・削除・検索機能と、タグによる分類機能を提供します。

主な機能

  • 記事管理: 記事の作成、編集、削除、一覧取得
  • タグ管理: タグの作成、編集、削除、一覧取得
  • カテゴリ分類: tech(技術)、life(ライフスタイル)の2つのカテゴリ
  • 認証: JWT認証による安全なAPI操作
  • 検索・フィルタリング: タグ、カテゴリによるフィルタリング、ページネーション

技術スタック

項目技術
言語Go
フレームワークEcho
データベースMySQL 8.0
ORMent
マイグレーションatlas
テストtestify
ログzap
コード生成oapi-codegen

ドメインモデル

本サービスでは以下の2つの主要ドメインを扱います:

Article(記事)

プロパティ説明
idstring記事の一意識別子
titlestring記事タイトル
contentstring記事本文
tagIds[]string関連タグのID配列
categorytech | life記事カテゴリ
created_atdatetime作成日時
updated_atdatetime更新日時

Tag(タグ)

プロパティ説明
idstringタグの一意識別子
namestringタグ名

ユースケース

記事管理

  • 記事作成: 認証済みユーザーが新規記事を作成
  • 記事一覧取得: 公開記事の一覧をページネーション付きで取得
  • 記事詳細取得: 指定IDの記事詳細を取得
  • 記事更新: 認証済みユーザーが既存記事を更新
  • 記事削除: 認証済みユーザーが記事を削除

タグ管理

  • タグ作成: 認証済みユーザーが新規タグを作成
  • タグ一覧取得: 全てのタグ一覧を取得
  • タグ詳細取得: 指定IDのタグ詳細を取得
  • タグ更新: 認証済みユーザーが既存タグを更新
  • タグ削除: 認証済みユーザーがタグを削除

サービス連携

関連リンク