> For the complete documentation index, see [llms.txt](https://studist-engineering.gitbook.io/entrance-book/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://studist-engineering.gitbook.io/entrance-book/dev/tech.md).

# 技術スタック

スタディストは、主力プロダクトの Teachme Biz に加え、Teachme MySkill / Teachme Communication / Teachme Process / Teachme Knowledge / Teachme Check からなる「Teachmeシリーズ」をマルチプロダクト体制で開発しています。\
プロダクトごとに技術スタックは異なり、それぞれのチームが課題に合わせて技術選定を行っています。

## 共通 <a href="#common" id="common"></a>

#### ナレッジツール <a href="#knowledge" id="knowledge"></a>

* Notion
* GitHub Issues

#### 生成AIツール <a href="#ai" id="ai"></a>

* Cursor
* Devin
* GitHub Copilot
* Claude Code
* Codex
* Dify
* n8n
* etc.

#### コラボレーション <a href="#collaboration" id="collaboration"></a>

* GitHub
* Slack
* Figma

#### 開発スタイル <a href="#style" id="style"></a>

* Agile (Scrum, Kanban, etc.)

## Teachme Biz

### WebApp

#### 開発言語

* Ruby
* TypeScript (JavaScript)
* Clojure
* Python

#### フレームワーク

* Ruby on Rails
* Vue.js
* NestJS
* Hono
* FastAPI
* etc.

#### テストツール

* RSpec, Capybara
* Jest, Vitest
* RuboCop
* eslint
* reg-suit(Visual Regression Test)

#### フロントエンド

* Webpack / Vite
* Storybook

### Mobile App (iOS)

#### 開発言語

* Swift
* Objective-C

#### 依存管理

* Swift Package Manager
* CocoaPods

#### CI/CD

* Xcode Cloud
* fastlane

#### モニタリング

* Crashlytics
* GoogleAnalytics for Firebase

#### テスト・開発ツール

* XCTest
* SwiftLint

{% embed url="<https://studist.tech/teachme-biz-ios-tech-stach-92297d755d09>" %}

### Mobile App (Android)

#### 開発言語

* Kotlin
* Java

#### 構成管理ツール

* Gradle

#### CI/CD

* GitHub Actions
* Firebase App Distribution

#### モニタリング

* Crashlytics
* GoogleAnalytics for Firebase

#### テストツール

* JUnit
* Kotest
* MockK
* Espresso

{% embed url="<https://studist.tech/teachme-biz-android-tech-stack-ff283c5bfbaa>" %}

## Teachme MySkill

* Clojure / ClojureScript (React) によるフルスタック開発
* PostgreSQL
* モバイルアプリ: Flutter (ClojureDart)

## Teachme Communication

* TypeScript
* Next.js / React
* Chakra UI
* Drizzle ORM
* Vitest
* PostgreSQL

## Teachme Process

* TypeScript
* Next.js / React
* pnpm + Turborepo によるモノレポ構成
* Vitest

## Teachme Knowledge

* TypeScript
* Next.js / Hono / tRPC
* Drizzle ORM
* pnpm + Turborepo によるモノレポ構成
* PostgreSQL / ベクトル検索
* 音声文字起こし (Whisper on Amazon SageMaker)

## Teachme Check

* TypeScript
* Vue.js / Nuxt
* Supabase (PostgreSQL)
* pnpm によるモノレポ構成

## プラットフォーム <a href="#platform" id="platform"></a>

Teachmeシリーズ全体を支える共通基盤は、Platform Engineering チームが横断的に設計・運用しています。

#### インフラ

* Amazon Web Services - EKS/Fargate, Aurora(MySQL/PostgreSQL), S3/CloudFront, Elemental MediaConvert, OpenSearch Service, Timestream, Amazon Bedrock, Amazon SageMaker etc.
* Google Cloud - Firebase, BigQuery, Cloud Tasks, Vertex AI etc.

#### インフラ構成管理

* Terraform

#### CI/CD

* GitHub Actions
* ArgoCD (GitOps)
* lambroll

#### モニタリング

* Datadog

#### 分析基盤

* Redash
* OpenSearch Dashboards
* Looker Studio

#### 認証基盤

* OAuth 2.0 / OpenID Connect によるプロダクト共通のID基盤

#### 開発環境

* OrbStack
* ブランチ単位で動的に立ち上がる検証環境 (Slack コマンドから作成・削除)
