Skip to content

Latest commit

 

History

History
119 lines (70 loc) · 3.03 KB

README.md

File metadata and controls

119 lines (70 loc) · 3.03 KB

Whooshing 悟性

项目简介

该系统旨在为在家教育提供一个高效、方便、安全且完全可控的解决方案,以辅助孩子,学长以及家长们在学习中贯彻我们的基督化教育原理。同时也为监督者以及长者提供完整的权限审查和设置。系统设计注重以下核心功能:

  1. 严格的权限划分

    不同用户角色(如学生、家长、学长、据点负责人等等)享有明确的权限范围,确保学习活动在清晰的规则下且不受干扰地进行。

  2. 完整的权限控制与规则

    包括权限任命机制,账号注册,群组创建等等。

  3. 效率

    尽可能简化每日报告,年表,课表等等的安排效率。

  4. 分布式系统

    数据在云端以及各据点分布放置,一方面提高据点数据操作的容错,一方面可以提高数据的安全性。

  5. 安全性

    所有的网络访问都将进行加密,且在数据库的设计上也体现这一点。另外,服务器(据点或云服务器)都将定时备份数据。

  6. Apple 的多平台支持

    支持 macOS, iOS, ipadOS。

系统架构

网络部署

其他设计及架构图

功能模块

系统功能

  • 分布系统
    • 据点内数据请求无需请求服务器,降低请求频次,也提高了访问速度。
    • 跨据点数据请求使用 P2P 技术,去中心化以降低延时。
  • 统一的身份验证机制

云端功能

  • 门户网站

    • 公开网站,展示公开信息,例如联系方式、培训计划、介绍 等等。
  • 服务分发

    • 通过多个 网络服务 分布式部署,实现模块化设计。
  • 远程存储与访问控制

    • 支持多设备数据同步。

本地功能

  • 高效数据处理
    • 使用本地据点服务器处理高频、低延迟的请求。
    • 与云端同步和备份数据,保证一致与安全性。
  • 内部服务支持
    • 提供局域网内的快速服务(如 TCP 传输和任务分发)。

部署说明

环境要求

  • 云服务器环境
    • Ubuntu 24.04.1+
    • 4 vCPUs+
    • 8G RAM+
    • root 权限
  • 据点服务器
    • MacOS 或 Linux
    • 2 vCPUs+
    • 4G RAM+
    • root 权限
  • 开发工具
    • API 服务:Node.js 16+
    • 客户端开发:Swift 5+ / Objective-C (不推荐)
    • 数据库:PostgreSQL16+, SQLite 3+
    • 反向代理:Nginx 1.24+
    • 网站开发:Nuxt, Vue, Express, Vapor

使用说明

快速启动

  1. 克隆项目到本地:
    cd <你的项目文件夹>
    git clone https://github.com/SJJC-Team/Whooshing.git
    cd Whoothing

代码提交约定

代码提交约定

许可证

本项目采用 Mozilla Public License Version 2.0 开源。

联系方式