2025-05-25

MCPサーバにKeycloakを用いて認証を付ける

Model Context Protocol(MCP)における認証フローを基に、Keycloakを用いてサードパーティ認可フロー対応のMCPサーバを構築・実装した備忘録です。

2025-02-10

django-polymorphicを使ってMTIを実装してみた

django-polymorphicを用いると、DjangoのMTI(Multi-table Inheritance)で取得するオブジェクトを親クラスではなく、子クラスのインスタンスとして取得でき、実装をより簡素化することができます。今回はそのdjango-polymorphicを使ってみたの会になります。

2025-02-02

GitHub Actionsでブランチ単位でRedocをGitHub Pagesにホストする

Django Ninjaで生成したOpenAPIの定義をRedocを用いて、ブランチごとにGitHub Pagesで公開できたら便利だなと思い、GitHub Actionsを使って行ってみた備忘録です。

2025-01-25

react-markdownでmermaidを使えるようにする

このブログでも使用しているmarkdownのHTML変換ライブラリreact-markdownを用いて、mermaidをライブラリから描画する方法についてのメモになります。

2025-01-23

django adminをkeycloakで認証してSSOする

django-allauthとKeycloakを利用し、複数のdjango-adminのSSOを行うイメージを掴むために行ったデモアプリの備忘録です。

2024-10-24

goroutineのキャンセル伝播について

pythonのtaskGroupのように、各goroutineへのキャンセル伝播はどのようにすればよいのか。疑問に思ったため調べたことを記事にしました。

2024-09-09

PythonのProtocolで行うStructural Subtyping

PythonのProtocolを用いたStructural Subtyping(構造的型付け)について説明しています。Protocolを使用することで、型の互換性をコードの構造に基づいて判断することができ、抽象基底クラス(ABC)のnominal typingよりPythonらしい記述が可能です。

2024-08-14

抽象化について ~ドラクエを添えて~

オブジェクト指向プログラミングにおける抽象化の重要性をドラクエを題材に記事にしました。具体的なコード例を通じて、依存性逆転の原則や関心の分離、カプセル化などを実践的に説明します。

2024-07-11

EchoのNewHTTPErrorにおける型ごとのレスポンスについて

Go言語のWebフレームワークのEchoで、NewHTTPErrorを用いてエラーレスポンスを返却する際、第二引数に渡す値の型によってレスポンス形式が変化します。この記事では、その内部実装と、同等のレスポンスを返却する対応について紹介します。