切手コレクションマネージャー バックエンド テンプレート
切手、カタログ番号、およびオークション記録のためのコレクショントラッキング
製品準備完了の 切手コレクションマネージャーバックエンド on Back4app には、切手記録、穴あけログ、スコット番号、及びオークション履歴が含まれます。ER図、データ辞書、JSONスキーマ、APIプレイグラウンド、及び迅速なブートストラップ用の AIエージェントプロンプトが含まれています。
重要なポイント
このテンプレートでは、perforation logs、Scott番号、オークション履歴を持つスタンプコレクションマネージャーのバックエンドを提供し、コーディネーターやカタログ作成者が1か所にコレクションのメモを保存できます。
- Perforation logの追跡 — Gauge、count、notesなどのフィールドを持つStampPerforationLogクラスに基づいてperforation logsをモデル化します。
- Scott番号の参照 — Stamp.scottNumberにカタログ識別子を保存し、すべての発行物がコレクターに優しい番号で検索可能です。
- オークション履歴のタイムライン — 各スタンプ記録に対して、入札、実現価格、販売日をAuctionHistoryに添付します。
- コレクションの所有権管理 — StampCollection.ownerとACLを使用して、プライベートな在庫本と共有レビューセットを分離します。
概要: スタンプコレクションマネージャー
スプレッドシートは、誰かがSKUを複製したり、間違った行をマージしたりすると、突然2つのチームが異なる真実の上で運営されるまで、スタンプコレクションに役立ちます。チームは朝のスタンドアップで最初にそれを感じます。Back4appでStampCollection、Stamp、StampPerforationLog、AuctionHistoryをエンドツーエンドで追跡し、スタンプコレクションの運用がロケーション、保管の変更、監査を通じて説明可能な状態を保つようにします。スキーマは、StampCollection(名前、所有者、国の焦点)、Stamp(コレクション、スコット番号、パフォレーションゲージ、状態)、StampPerforationLog(スタンプ、ゲージ、カウント、ノート)、およびAuctionHistory(スタンプ、オークションハウス、実現価格、販売日)をカバーし、認証とコレクションの権限が組み込まれています。フロントエンドを接続して、スタンプのカタログ化をより早く開始します。
最適:
切手コレクション:バックエンドスナップショット
切手コレクションはスピードだけではなく、「それが本当だとわかった方法を見せて」と誰かに聞かれたときの防御性についても関係しています。
ここにあるすべてのテクノロジーカードは、同じStampCollection、Stamp、StampPerforationLogモデルにマッピングされています—バックエンド契約を再交渉することなくスタックを選択してください。
コア スタンプ コレクション機能
このハブ内のすべての技術カードは、StampCollection、Stamp、StampPerforationLog、およびAuctionHistoryを使用して同じスタンプコレクションスキーマを使用します。
コレクションの所有権とキュレーション
StampCollectionは名前、所有者、および国の焦点を保存します。
スコット番号カタログ
Stamp.scottNumberとcatalogTitleは各スタンプを特定します。
パーフォレーションログ
StampPerforationLogはゲージ、カウント、およびノートを記録します。
オークション履歴
AuctionHistoryはauctionHouse、realizedPrice、およびsaleDateを保持します。
なぜBack4appで切手コレクションマネージャーのバックエンドを構築するのか?
Back4appは、コレクション、切手、 perforation、およびオークションのプリミティブを提供するので、チームはインフラの雑用ではなくカタログの正確性に集中できます。
- •コレクションおよびスタンプカタログ: StampCollection および Stamp クラスは、所有権、スコット番号、および状態の詳細を単一のクエリ可能なモデルに保持します。
- • perforationおよびオークション履歴: StampPerforationLog および AuctionHistory は、研究のためのゲージノート、カウント、販売日、および実現価格をキャプチャします。
- •リアルタイム + APIの柔軟性: 新しいオークション履歴のエントリには Live Queries を使用し、REST と GraphQL をすべてのクライアントで利用可能に保ちます。
すべてのプラットフォームで1つのバックエンド契約を通じて、スタンプコレクション機能を迅速に構築および洗練します。
主な利点
作業を遅くすることなく正確にカタログ化を支援するスタンプコレクションのバックエンド。
より迅速なカタログ設定
フィールドを1つずつ発明するのではなく、StampCollectionとStampから始めます。
より良い研究記録
perforationGauge、scottNumber、および condition を一緒に保持して、スタンプノートが一貫性を保つようにします。
所有権ルールの明確化
所有者ポインタとACL/CLP設定を使用して、各コレクションが正しいキュレーターに対してプライベートに保たれるようにします。
オークションレビュー履歴
価格比較と起源確認のために、AuctionHistoryにrealizedPriceとsaleDateを保存します。
持続するコレクションノート
StampPerforationLogにgauge、count、およびノートを追跡して、UIがそのロジックを単独で担うことを強制しません。
AI支援ブートストラップ
構造化されたプロンプトを使って、バックエンドの足場と統合ガイダンスを迅速に生成します。
スタンプコレクションマネージャーの準備はできましたか?
Back4app AIエージェントにスタンプコレクションのバックエンドをスキャフォールドさせ、1つのプロンプトからパーフォレーションログ、スコット番号検索、オークション履歴を生成します。
無料で始められます — 月50回のAIエージェントプロンプト、クレジットカード不要
技術スタック
このスタンプコレクションバックエンドテンプレートに含まれるすべて。
ER図
スタンプコレクションバックエンドスキーマのエンティティリレーションシップモデル。
コレクション所有者、スタンプ、穿孔ログ、オークション履歴をカバーするスキーマ。
図のソースを表示
erDiagram
Curator ||--o{ Collection : "owner"
Collection ||--o{ Stamp : "includes"
Stamp ||--o{ PerforationLog : "measured in"
Stamp ||--o{ AuctionHistory : "sold in"
Curator ||--o{ PerforationLog : "loggedBy"
Curator ||--o{ AuctionHistory : "createdBy"
Curator {
String objectId PK
String username
String email
String password
String displayName
String role
Date createdAt
Date updatedAt
}
Collection {
String objectId PK
String name
String countryFocus
String status
String ownerId FK
Date createdAt
Date updatedAt
}
Stamp {
String objectId PK
String collectionId FK
String title
String scottNumber
String country
Number yearIssued
String condition
String imageUrl
Date createdAt
Date updatedAt
}
PerforationLog {
String objectId PK
String stampId FK
String perforationGauge
String measurementMethod
String notes
String loggedById FK
Date loggedAt
Date createdAt
Date updatedAt
}
AuctionHistory {
String objectId PK
String stampId FK
String auctionHouse
Date auctionDate
String lotNumber
Number hammerPrice
String currency
String result
String createdById FK
Date createdAt
Date updatedAt
}
統合フロー
認証、コレクション一覧、穴あけログ、スコット番号照会、オークション履歴の更新における典型的な実行フロー。
ダイアグラムソースを表示
sequenceDiagram
participant Curator
participant App as Stamp Collection Manager App
participant Back4app as Back4app Cloud
Curator->>App: Sign in to the stamp manager
App->>Back4app: POST /login
Back4app-->>App: Session token
Curator->>App: Open a collection
App->>Back4app: GET /classes/Collection?include=owner&order=-updatedAt
Back4app-->>App: Collection list
Curator->>App: Review stamp catalog entries
App->>Back4app: GET /classes/Stamp?include=collection&order=-createdAt
Back4app-->>App: Stamp list with Scott numbers
Curator->>App: Add a perforation log or auction history row
App->>Back4app: POST /classes/PerforationLog
App->>Back4app: POST /classes/AuctionHistory
Back4app-->>App: Saved log objects
App->>Back4app: Live query updates for new stamp changes
Back4app-->>App: Updated stamp, perforation, and auction recordsデータ辞書
スタンプコレクションスキーマ内の各クラスに対する完全なフィールドレベルの参照。
| フィールド | タイプ | 説明 | 必須 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | オート |
| username | String | Curator login name | |
| String | Curator email address | ||
| password | String | Hashed password (write-only) | |
| displayName | String | Display name shown in the manager | |
| role | String | Curator role such as manager, editor, or viewer | |
| createdAt | Date | Auto-generated creation timestamp | オート |
| updatedAt | Date | Auto-generated last-update timestamp | オート |
8フィールド内のCurator
セキュリティと権限
ACLおよびCLP戦略がコレクション、スタンプ、打孔ログ、およびオークション履歴エントリをどのように保護するか。
コレクション所有者の制御
所有者のみが自分のStampCollectionエントリを作成、編集、または削除できます。
カタログの整合性チェック
スタンプまたはオークション記録を保存する前に、Cloud Codeを使用してscottNumber、perforationGauge、およびrealizedPriceを検証します。
スコープ付きリードアクセス
スタンプセットが評価のために共有されるときは、コレクション所有者または承認された共同作業者に読み取りを制限します。
スキーマ (JSON)
Back4app にコピーする準備ができた生の JSON スキーマ定義または実装参照として使用します。
{
"classes": [
{
"className": "Curator",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"displayName": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Collection",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"name": {
"type": "String",
"required": true
},
"countryFocus": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"owner": {
"type": "Pointer",
"required": true,
"targetClass": "Curator"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Stamp",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"collection": {
"type": "Pointer",
"required": true,
"targetClass": "Collection"
},
"title": {
"type": "String",
"required": true
},
"scottNumber": {
"type": "String",
"required": true
},
"country": {
"type": "String",
"required": true
},
"yearIssued": {
"type": "Number",
"required": true
},
"condition": {
"type": "String",
"required": true
},
"imageUrl": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "PerforationLog",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"stamp": {
"type": "Pointer",
"required": true,
"targetClass": "Stamp"
},
"perforationGauge": {
"type": "String",
"required": true
},
"measurementMethod": {
"type": "String",
"required": true
},
"notes": {
"type": "String",
"required": false
},
"loggedBy": {
"type": "Pointer",
"required": true,
"targetClass": "Curator"
},
"loggedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AuctionHistory",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"stamp": {
"type": "Pointer",
"required": true,
"targetClass": "Stamp"
},
"auctionHouse": {
"type": "String",
"required": true
},
"auctionDate": {
"type": "Date",
"required": true
},
"lotNumber": {
"type": "String",
"required": true
},
"hammerPrice": {
"type": "Number",
"required": true
},
"currency": {
"type": "String",
"required": true
},
"result": {
"type": "String",
"required": true
},
"createdBy": {
"type": "Pointer",
"required": true,
"targetClass": "Curator"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}AI エージェントで構築
このテンプレートを使用して、フロントエンド、バックエンド、認証、 perforation log、Scott 番号、およびオークション履歴フローを含む、実際の切手コレクションアプリを生成するために Back4app AI エージェントを使用します。
この正確なスキーマと挙動で Back4app 上に切手コレクションマネージャーアプリのバックエンドを作成します。 スキーマ: 1. ユーザー (使用 Back4app ビルトイン): ユーザー名、メール、パスワード; objectId, createdAt, updatedAt (システム)。 2. StampCollection: 名前 (文字列、必須)、所有者 (ユーザーへのポインタ、必須)、国の焦点 (文字列)、説明 (文字列)、プライベートかどうか (ブール値、必須); objectId, createdAt, updatedAt (システム)。 3. 切手: コレクション (StampCollection へのポインタ、必須)、Scott 番号 (文字列、必須)、カタログタイトル (文字列、必須)、発行年 (数値)、 perforationGauge (文字列)、状態 (文字列)、額面 (文字列)、ノート (文字列); objectId, createdAt, updatedAt (システム)。 4. StampPerforationLog: 切手 (切手へのポインタ、必須)、ゲージ (文字列、必須)、カウント (数値、必須)、ノート (文字列)、検査日 (日付、必須); objectId, createdAt, updatedAt (システム)。 5. AuctionHistory: 切手 (切手へのポインタ、必須)、オークションハウス (文字列、必須)、ロット番号 (文字列)、実現価格 (数値、必須)、販売日 (日付、必須)、来歴ノート (文字列); objectId, createdAt, updatedAt (システム)。 セキュリティ: - オーナーのみが自分のコレクションを作成/更新/削除できます。バリデーションにはクラウドコードを使用してください。 認証: - サインアップ、ログイン、ログアウト。 動作: - コレクションのリスト、切手エントリの追加、perforation log の記録、オークション履歴の保存。 配信: - スキーマ、ACL、CLP を持つ Back4app アプリ; 切手コレクション、perforation log、Scott 番号検索、およびオークション履歴のためのフロントエンド。
このテンプレートプロンプトが事前に入力された状態でエージェントを開くには、以下のボタンを押してください。
これは技術的サフィックスがない基本プロンプトです。生成されたフロントエンドスタックは後で適応できます。
APIプレイグラウンド
スタンプコレクションスキーマに対してRESTとGraphQLエンドポイントを試してください。レスポンスはモックデータを使用し、Back4appアカウントは必要ありません。
このテンプレートと同じスキーマを使用します。
テクノロジーを選択
各カードを展開して、選択したスタックで StampCollection、Stamp、StampPerforationLog を統合する方法を確認してください。
Flutter スタンプコレクションバックエンド
React スタンプコレクションバックエンド
React ネイティブ スタンプコレクションバックエンド
Next.js スタンプコレクションバックエンド
JavaScript スタンプコレクションバックエンド
Android スタンプコレクションバックエンド
iOS スタンプコレクションバックエンド
Vue スタンプコレクションバックエンド
Angular スタンプコレクションバックエンド
GraphQL スタンプコレクションバックエンド
REST API スタンプコレクションバックエンド
PHP スタンプコレクションバックエンド
.NET スタンプコレクションバックエンド
すべての技術で得られるもの
すべてのスタックは、同じスタンプコレクションバックエンドスキーマとAPI契約を使用します。
統一されたスタンプカタログ構造
一貫したスキーマでコレクション、スタンプ、 perforationログ、およびオークション履歴を管理します。
コレクション作業のためのスコット番号検索
scottNumber、issueYear、およびcatalogTitleでスタンプを検索およびフィルタリングします。
評価レビューのためのオークション履歴
各スタンプのオークションハウスでrealizedPriceとsaleDateを追跡します。
所有権とプライバシー管理
レビューセットを承認されたコラボレーターと共有するとき、コレクションの編集を所有者に制限します。
REST/GraphQL コレクションツール用API
カタログビュー、ログ、履歴画面を柔軟なAPIアクセスで統合します。
スタンプ作業のための拡張可能なアーキテクチャ
Blocksの証明書、プレート、または欲しいリストを後で追加することができますが、ベースモデルを再記述する必要はありません。
スタンプコレクション技術比較
サポートされているすべての技術でセットアップ速度、SDKスタイル、AIサポートを比較します。
| フレームワーク | セットアップ時間 | スタンプコレクションの利点 | SDKタイプ | AIサポート |
|---|---|---|---|---|
| 約5分 | モバイルおよびウェブ向けのスタンプカタログツールの単一コードベース。 | 型付きSDK | 全ての | |
| 5分未満 | スタンプコレクション用の高速ウェブダッシュボード。 | 型付きSDK | 全ての | |
| 約3〜7分 | 切手をカタログ化するためのクロスプラットフォームモバイルアプリ。 | 型付きSDK | 全ての | |
| 迅速な(5分)セットアップ | コレクション検索のためのサーバーレンダリングウェブアプリ。 | 型付きSDK | 全ての | |
| 約3〜5分 | 切手データのための軽量ウェブ統合。 | 型付きSDK | 全ての | |
| 約5分 | 切手コレクション作業のためのネイティブ Android アプリ。 | 型付きSDK | 全ての | |
| 5分未満 | スタンプ収集作業のためのネイティブiOSアプリ。 | 入力されたSDK | 全ての | |
| 約3〜7分 | スタンプカタログ作成のためのReactウェブUI。 | 入力されたSDK | 全ての | |
| 迅速な(5分)セットアップ | コレクション管理のための企業向けウェブアプリ。 | 入力されたSDK | 全ての | |
| 2分未満 | コレクション検索のための柔軟な GraphQL API。 | GraphQL API | 全ての | |
| クイック (2 分) セットアップ | スタンプカタログツール用の REST API 統合。 | REST API | 全ての | |
| 約 3 分 | コレクションツール用のサーバーサイド PHP バックエンド。 | REST API | 全ての | |
| 約 3~7 分 | .NET の切手コレクション管理用バックエンド。 | 型付き SDK | 全ての |
セットアップ時間は、プロジェクトのブートストラップからこのテンプレートスキーマを使用した最初のコレクションまたはスタンプクエリまでの予想される期間を反映しています。
よくある質問
このテンプレートを使用してスタンプコレクションバックエンドを構築する際の一般的な質問。