QuantStrato量子平流

// ENGINEERING

技术栈与团队宣言

我们相信技术选择会变成产品的性格。这里写的每一条都能在仓库里核对——包括我们刻意不用什么。

TEST_SUITES9 ASSERTIONS18,000+ NPM_DEPS0 SERVERS1

// STACK MATRIX

核心技术栈全景

线上跑着什么,这里就写什么。没有「计划采用」的条目。

RUNTIME // 线上实际版本
前端
原生 HTML / CSS / JavaScript(ES6+),Canvas 绘制 K 线与教学图示。无框架、无构建步骤——改完文件就是上线版本。
样式
CSS 自定义属性(深浅双主题)、CSS Grid 与 Flex 布局;官网与产品各自一套 token,不引 UI 库。
服务端
Node.js 22 LTS 原生 http 模块。静态资源白名单、目录穿越防护、请求体上限、统一错误文案。
数据
JSON 文件存储 + 内存索引(用户 / 会话 / 邀请码),原子写(临时文件 + rename),数据目录不进仓库。
账号安全
scrypt(N=16384)加盐哈希、HttpOnly 会话、图形验证码、按 IP 限流、写接口 Origin 同源校验。
客户端
Android 原生 Kotlin(4 个界面),课程内容由 /api/course(带 ETag)下发并本地缓存;GitHub Actions 构建。
部署
单台 Linux + systemd 守护 + 宝塔 Nginx 反代;官网与产品按域名分流,后台入口带 IP 白名单。
测试
9 套 Node 测试、18,000+ 断言:课程结构、用户旅程(jsdom)、接口、渗透、配色对比度、客户端结构。

// TRADE-OFFS

为什么这样选

每一个「不用」都是一个决定,代价我们清楚。

01 / NO_FRAMEWORK

不用前端框架

页面是课程与题目驱动的,交互复杂度不高。省掉构建链后,改一个知识点只需改数据文件,不用等打包,也不会因为依赖升级而整站重写。

02 / NO_DEPS

服务端零依赖

没有 npm 依赖就没有供应链风险,也没有「三年后装不上」的问题。代价是限流、验证码、PNG 编码这些要自己写——写了,也测了。

03 / SELF_HOSTED

数据自己托管

账号与进度放在自己的服务器上,不接第三方 BaaS。备份、迁移、合规都由自己负责;换来的是数据边界清楚、成本可预测。

// CREED

四条不妥协的做法

01 / CONTENT

内容经得起追问

每节课人工编写、校对,题目配解析。课程数据有 18,000+ 项自动化断言守着——改坏一个知识点,测试就红。

02 / CRAFT

体验是细节堆出来的

深浅主题的对比度、动画性能、答案分布都有回归测试。这些看不见的地方,决定了产品摸起来的手感。

03 / OWNERSHIP

数据自己做主

账号、学习进度、邀请码跑在自己的服务器上:Node 原生服务、systemd 守护、宝塔 Nginx 反代,不依赖第三方云。

04 / HONESTY

不编造数字

这个页面上每个数字都能在代码仓库里找到出处。用户数、融资、排名——等真正发生了再写。

// OPEN SOURCE

代码是公开的

课程数据、服务端、测试、Android 客户端在同一个仓库里。欢迎读、欢迎提 Issue——我们不刷 star,也不写下载量。

github.com/kitten-UX/invest-quest

9 套测试的源码、课程数据结构、部署脚本都在这里。

打开仓库 ↗

// CONTACT

想聊技术,或者发现了一个 Bug?

产品反馈、Bug 报告、技术讨论都走 GitHub Issues——这是我们保证会看的渠道。

CHANNEL STATUS
ISSUES
github.com/kitten-UX/invest-quest
RESPONSE
通常 1–3 天内
STATUS
接受反馈与建议