黑客馬拉松專案入口網站後端範本
團隊組建、專案提交和評分
一個在 Back4app 上的生產就緒 黑客馬拉松專案入口網站後端,用於使用者登入、團隊組建、專案提交跟蹤和評分審查。包括 ER 圖、資料字典、JSON 結構、API 操作介面,以及一個 AI 代理 提示以便快速設置。
入口網站要點
此模板為您提供一個黑客松項目入口網站的後端,用於用戶帳戶、團隊組建、項目提交追蹤和評分審查,讓組織者可以在一個工作區內保持每個項目。
- 用戶和角色追蹤 — 追蹤組織者、參與者、評委和導師的用戶名、電子郵件、角色和顯示名稱。
- 一個模型中的團隊組建 — 追蹤 Team.teamName、Team.track、Team.status、Team.captain、Team.members 和 Team.maxMembers,並可查詢 Parse 類。
- 提交工作流程 — 存儲 ProjectSubmission.projectTitle、repositoryUrl、demoUrl、submissionStatus 和 submittedAt 字段。
- 評分捕捉 — 記錄 JudgingScore.criteria、分數、評論、評審和評審時間的每次提交。
黑客松專案門戶模板是什麼?
客戶期望在黑客松專案門戶中獲得主動更新,這只有在案件狀態、文件和下一步行動都在一個系統中時才現實。團隊會在早晨的站立會議中首先體會到這一點。此模板基於 Back4app 對 Team、ProjectSubmission 和 JudgingScore 進行建模,實現基於角色的訪問權限,使每個黑客松專案門戶的隊友都能看到自己所擁有的管道區域。架構涵蓋用戶 (用戶名、電子郵件、角色、顯示名稱)、團隊 (團隊名稱、賽道、狀態、隊長、成員、最大成員數)、ProjectSubmission (專案標題、專案摘要、存儲庫 URL、演示 URL、團隊、提交者、提交狀態、挑戰賽道、提交時間) 和 JudgingScore (提交、評審、標準、分數、評論、評審時間),並內建身份驗證和基於角色的訪問權限。連接您喜愛的前端並更快啟動。
最佳適用於:
此黑客松專案門戶後端的組織方式
黑客松專案門戶的質量是滯後指標;前線更新報告是否在同一天流入的情況是領先指標。
這個中心保持 Team、ProjectSubmission 和 JudgingScore 語言的一致性,這樣產品、運營和工程在說「記錄」時的意思相同。
入口網站功能
這個中心中的每個技術卡片都使用相同的門戶架構,其中包括用戶、團隊、ProjectSubmission 和 JudgingScore。
帳戶和角色設置
用戶存儲用戶名、電子郵件、角色和顯示名稱以供門戶訪問。
團隊組建
團隊鏈接隊長、成員數組、賽道、狀態和最大成員數。
項目提交詳情
ProjectSubmission 存儲 projectTitle、projectSummary、repositoryUrl、demoUrl 和 challengeTrack。
提交工作流程
ProjectSubmission 跟蹤團隊、提交者、提交狀態和提交時間。
評審及打分
JudgingScore 保留提交、評審、標準、分數、評論和評審時間。
為什麼 Back4app 適合黑客松專案門戶
Back4app 為您提供黑客松所需的門戶基本元件,這樣您的團隊可以專注於註冊、提交處理和評分審查,而不是基礎設施的工作。
- •使用者、團隊、專案提交和評分類別: 從一開始就將事件、團隊成員、專案細節和評審分數建模為專用的 Parse 類別。
- •提交和分數追蹤: 儲存 ProjectSubmission.repositoryUrl、demoUrl、submittedAt 和 JudgingScore.criteria、score 和 comments,而不必稍後即興創建您的架構。
- •即時評審可見性: 在保持 REST 和 GraphQL 供評審和組織者使用的同時,使用 Live Queries 進行 JudgingScore 更新。
通過網頁和手機跨一個後端合約運行註冊、提交和評審。
門戶優勢
一個黑客松門戶後端,在比賽進行期間保持活動操作的有序。
更快的活動啟動
從用戶和團隊類別開始,而不是從零設計註冊表。
清晰的提交跟蹤
使用 ProjectSubmission 字段,如 submittedAt、demoUrl 和 submissionStatus 來跟蹤每個項目條目。
評審準備好的計分記錄
將 JudgingScore 條目附加到 ProjectSubmission 和評審,以保持審查的可審核性。
角色感知的訪問流程
使用 ACL 和 CLP 規則來保護組織者、評審、導師和參與者的行動。
您可以查詢的事件數據
將用戶、團隊、項目提交和評分物件存儲在一個地方以便於儀表板和排行榜。
AI輔助設置
使用一個結構化的提示生成後端框架和集成說明。
準備好啟動您的黑客馬拉松門戶嗎?
讓 Back4app AI 代理搭建您的黑客馬拉松項目門戶後端,並從一個提示生成用戶、團隊、項目提交和評分流程。
免費開始 - 每月 50 次 AI 代理提示,無需信用卡
門戶技術棧
這個黑客松項目門戶後端模板包含所有內容。
入口網站實體映射
黑客松專案入口網站架構的實體關係模型。
涵蓋用戶、團隊、項目提交和評分記錄的模式。
查看圖表來源
erDiagram
User ||--o{ Team : "captain"
User }o--o{ Team : "members"
User ||--o{ ProjectSubmission : "submittedBy"
User ||--o{ JudgingScore : "judge"
Team ||--o{ ProjectSubmission : "team"
ProjectSubmission ||--o{ JudgingScore : "submission"
User {
String objectId PK
String username
String email
String password
String role
String displayName
Date createdAt
Date updatedAt
}
Team {
String objectId PK
String teamName
String track
String status
String captainId FK
Array members
Number maxMembers
Date createdAt
Date updatedAt
}
ProjectSubmission {
String objectId PK
String projectTitle
String projectSummary
String repositoryUrl
String demoUrl
String teamId FK
String submittedById FK
String submissionStatus
String challengeTrack
Date submittedAt
Date createdAt
Date updatedAt
}
JudgingScore {
String objectId PK
String submissionId FK
String judgeId FK
String criteria
Number score
String comments
Date judgedAt
Date createdAt
Date updatedAt
}
門戶整合流程
登入、團隊看板查找、項目提交、分數輸入和即時更新的典型運行流程。
查看圖表來源
sequenceDiagram
participant User
participant App as Hackathon Project Portal App
participant Back4app as Back4app Cloud
User->>App: Sign in to the hackathon workspace
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Browse team formation board
App->>Back4app: GET /classes/Team?include=captain
Back4app-->>App: Teams and member lists
User->>App: Create or update a project submission
App->>Back4app: POST or PUT /classes/ProjectSubmission
Back4app-->>App: Submission saved
Judge->>App: Review a project and enter scores
App->>Back4app: POST /classes/JudgingScore
Back4app-->>App: Score stored
App->>Back4app: Live query project updates and score changes
Back4app-->>App: Realtime portal events字段字典
黑客松門戶模式中每個類的完整字段級參考。
| 欄位 | 類型 | 描述 | 必填 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| username | String | Login name for a portal account | |
| String | Email address used for team invites and judging notifications | ||
| password | String | Hashed password (write-only) | |
| role | String | Portal role such as organizer, participant, judge, or mentor | |
| displayName | String | Name shown inside teams, submissions, and score review | — |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
8 欄位在 User
入口網站存取規則
如何透過 ACL 和 CLP 策略來保護使用者、團隊、項目提交及評分數據。
參與者所有權規則
只有隊長或組織者應該更新團隊成員、項目詳情或提交狀態。
評分界限
評審可以為分配的提交創建 JudgingScore 記錄,而只有組織者可以覆蓋事件級別的規則。
範疇事件可見性
向需要的角色公開用戶、團隊和項目提交數據,同時保持私人備註或審核字段的限制。
JSON Schema
原始 JSON 架構定義準備好複製到 Back4app 或用作實施參考。
{
"classes": [
{
"className": "User",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"displayName": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Team",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"teamName": {
"type": "String",
"required": true
},
"track": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"captain": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"members": {
"type": "Array",
"required": true,
"targetClass": "User"
},
"maxMembers": {
"type": "Number",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ProjectSubmission",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"projectTitle": {
"type": "String",
"required": true
},
"projectSummary": {
"type": "String",
"required": true
},
"repositoryUrl": {
"type": "String",
"required": true
},
"demoUrl": {
"type": "String",
"required": false
},
"team": {
"type": "Pointer",
"required": true,
"targetClass": "Team"
},
"submittedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"submissionStatus": {
"type": "String",
"required": true
},
"challengeTrack": {
"type": "String",
"required": true
},
"submittedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "JudgingScore",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"submission": {
"type": "Pointer",
"required": true,
"targetClass": "ProjectSubmission"
},
"judge": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"criteria": {
"type": "String",
"required": true
},
"score": {
"type": "Number",
"required": true
},
"comments": {
"type": "String",
"required": false
},
"judgedAt": {
"type": "Date",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}與 AI 代理一起建設
使用 Back4app AI 代理從這個範本生成一個真實的黑客松專案門戶應用,包括前端、後端、認證,以及用戶、團隊、項目提交和評分流。
在 Back4app 上創建一個安全的黑客松項目門戶後端,使用此確切架構和行為。 架構: 1. 用戶(使用 Back4app 內建):用戶名,電子郵件,密碼,角色,顯示名稱;objectId,createdAt,updatedAt(系統)。 2. 團隊:團隊名稱(字符串,必填),賽道(字符串,必填),狀態(字符串,必填),隊長(指向用戶的指針,必填),成員(用戶指針的數組,必填),最大成員數(數字,必填);objectId,createdAt,updatedAt(系統)。 3. 項目提交:項目標題(字符串,必填),項目摘要(字符串,必填),倉庫網址(字符串,必填),演示網址(字符串,選填),團隊(指向團隊的指針,必填),提交者(指向用戶的指針,必填),提交狀態(字符串,必填),挑戰賽道(字符串,必填),提交時間(日期,選填);objectId,createdAt,updatedAt(系統)。 4. 評分:提交(指向項目提交的指針,必填),評委(指向用戶的指針,必填),標準(字符串,必填),評分(數字,必填),評論(字符串,選填),評價時間(日期,必填);objectId,createdAt,updatedAt(系統)。 安全性: - 參與者只能編輯自己的團隊成員資格以及自己的項目提交草稿/最終記錄。 - 評委可以為指派的提交創建和審核評分行。 - 組織者可以讀取所有團隊、項目提交和評分條目,然後在截止日期後鎖定提交。 - 在最終狀態設置後保持提交數據不可變,更改僅限於組織者的修正。 身份驗證: - 註冊、登錄、登出。 行為: - 團隊組建、項目提交和評分條目。 - 提交狀態和分數變更的即時更新。 - 包含 Parse CLPs、ACLs 和基於角色的訪問規則,針對組織者、參與者和評委。 交付: - Back4app 應用程式,具有架構、權限和樣本數據,用於團隊組建、提交和評分審查。
按下下面的按鈕以用此模板提示預填打開代理。
這是沒有技術後綴的基本提示。您可以在稍後根據需要調整生成的前端棧。
API 沙盒
嘗試對黑客馬拉松門戶架構使用 REST 和 GraphQL 端點。回應使用模擬數據,並且不需要 Back4app 帳戶。
使用與此範本相同的架構。
選擇您的技術栈
展開每個卡片以查看如何將 Team、ProjectSubmission 和 JudgingScore 與您選擇的技術堆疊整合。
Flutter 黑客松專案後端
React 黑客松專案後端
React 原生 黑客松專案後端
Next.js 黑客松專案後端
JavaScript 黑客松專案後端
Android 黑客松專案後端
iOS 黑客松專案後端
Vue 黑客松專案後端
Angular 黑客松專案後端
GraphQL 黑客松專案後端
REST API 黑客松專案後端
PHP 黑客松專案後端
.NET 黑客松專案後端
每項技術可獲得的內容
每個技術堆疊都使用相同的黑客松後端模式和 API 合約。
統一的門戶數據結構
輕鬆管理用戶、團隊、ProjectSubmission 和 JudgingScore,並使用一致的模式。
黑客松活動的團隊組成
讓參加者創建團隊、加入成員並指定一位隊長。
提交和評審工作流程
在一個後台中跟踪項目提交、評審查看和得分總計。
基於角色的事件訪問
為組織者、評審者、導師和參與者定義訪問級別。
黑客松堆棧比較
比較所有支持技術的設置速度、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 網頁介面供黑客松門戶使用。 | 類型 SDK | 完整 | |
| 快速(5 分鐘)設置 | 企業網頁應用程式供黑客松門戶使用。 | 類型 SDK | 完整 | |
| 少於 2 分鐘 | 靈活的 GraphQL API 用於駭客松入口網站。 | GraphQL API | 完整 | |
| 快速設定(2分鐘) | REST API 整合用於駭客松入口網站。 | REST API | 完整 | |
| 約 3 分鐘 | 伺服器端 PHP 後端用於駭客松入口網站。 | REST API | 完整 | |
| 約 3–7 分鐘 | .NET 後端用於黑客松門戶。 | 類型化 SDK | 完整 |
設置時間反映從專案啟動到第一次使用者、團隊或專案提交查詢的預期持續時間,使用此範本架構。
入口網站常見問題
有關使用此模板建立黑客松項目入口後端的常見問題。