跳到主要内容
版本:Current

主席选举系统文档

BUCSSA 内部线上公投 / 主席选举门户。成员用 Google 登录后加入进行中的竞选,按部门与职位获得本场票数,并把票完整拆分给候选人名簿中的人选;管理员与审核员可管理用户、竞选、选票与开闭投票,结束后按分票聚合查看排名。

读者

面向后续维护者与活动执行人员。界面品牌标题为「BUCSSA Portal」,不是 Django 招新门户。

本站点按 Diátaxis 框架组织。

文档导航​

分类说明入口
概览定位、角色、架构Introduction
入门指南安装、环境、首次竞选Quick Start
用户指南加入、分票、管理选票Core Concepts
参考表结构、Server Actions、路由Database Schema
配置环境变量、登录门禁、票数规则Environment Variables
部署指南本地与生产检查清单Production Deployment
开发者指南目录、架构、迁移Project Structure
故障排查登录、分票、NeonCommon Errors
常见问题FAQFAQ
参与贡献开发环境与流程Development Setup

快速链接​

页面路径角色
首页/已登录
登录/auth/signin公开
进行中的竞选/campaignsvoter / moderator / candidate(admin 会跳到管理页)
分票投票/campaigns/[id]/vote非 admin、且已加入本场
选票管理/campaigns/[id]/ballotsadmin / moderator
排名结果/campaigns/[id]/result侧栏对 admin/moderator 展示;结束后才显示排名
竞选管理/admin/campaignsadmin
用户管理/admin/usersadmin
Auth.js/api/auth/[...nextauth]唯一 HTTP API

本地开发默认:http://localhost:3000

技术栈​

Next.js 15 · React 19 · NextAuth v5 · Neon PostgreSQL · MUI 7 · Toolpad Core

完整列表见 Tech Stack。

上游与参考​

项目官方文档源码
主席选举系统本文档;仓库 READMEBU-CSSA-Tech/CSSA-Election
Next.jsnextjs.org/docsvercel/next.js
Auth.js / NextAuth v5authjs.devnextauthjs/next-auth
Neonneon.tech/docsneondatabase/serverless
MUImui.commui/material-ui
Toolpad Coremui.com/toolpadmui/toolpad