SprintLog
受託チームと顧客のプロジェクト管理
SprintLog は、受託チームと顧客の仕事・判断・経緯をひとつにまとめる、マルチテナント型のプロジェクト管理ツールです。社内の作業は社内に留め、顧客には明示的に公開した情報だけを顧客ポータルで見せます。
概要
社内向けのワークスペースでは、プロジェクト、連番の課題、ラベル、カンバン、ガントチャート、Markdown のドキュメント(版管理・同時編集つき)を扱います。組織には owner・admin・member の権限があり、内部メンバーを招待できます。
顧客企業とそのユーザーを招待すると、顧客ポータルで共有された進捗を確認できます。追加作業は見積つきの変更依頼として提出し、顧客が承認または差し戻します。提出した時点の内容は、変更できない記録として残ります。
owner と admin は、見積書・請求書、入金履歴、売上レポートを扱えます。通知はアプリ内・メール・Web プッシュ・Slack・Chatwork・Discord に対応し、GitHub App 連携(読み取り専用)と Public API v1 も備えます。iOS / Android アプリもあります。
アーキテクチャ
- 構成
- Web(Next.js・React・TypeScript)、REST API(Laravel・PHP)、モバイルアプリ(Expo / React Native)を、ひとつのリポジトリ(モノレポ)に収めています。ブラウザは Web サーバー側を経由して API を呼びます。
- 認証
- ブラウザ・モバイルアプリ・外部連携の API で、それぞれ別の認証方式を使い、外部連携の API は読み取り専用にしています。ログインはパスワード・確認コード・SNS ログインに対応し、二段階認証も使えます。
- データ
- 業務データは PostgreSQL、セッション・キャッシュ・キューは Redis に置きます。添付ファイルは、クラウドのオブジェクトストレージに保存します。
- 実行環境
- コンテナ(Docker)で動かします。GitHub Actions が CI を通ったコミットのイメージを作り、サービスを止めずに切り替える方式で、本番を更新します。
- 種別
- 受託チームと顧客のプロジェクト管理
- 区分
- プロダクト(SaaS・Webサービス)
- 状態
- 公開中
- 担当
- 企画・設計・開発
- 技術
- Next.js
- React
- TypeScript
- TanStack Query
- Laravel
- PHP
- PostgreSQL
- Redis
- Expo / React Native
- Docker