Skip to content
hacksynthPublic

About

Open Software Exam,一个开源的软考软件设计师备考系统。

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Latest commit

 

History

110 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

OSE

   ____   _____ ______
  / __ \ / ___// ____/
 / / / / \__ \/ __/
/ /_/ / ___/ / /___
\____/ /____/_____/
Open Software Exam

Open-source AI-powered exam preparation platform for China's Software Professional Qualification Exam

GitHub Stars License: AGPL-3.0 PRs Welcome CI

中文文档

Screenshots coming soon

What is OSE?

OSE (Open Software Exam) is an open-source exam preparation platform built for China's Software Professional Qualification Exam, starting with the Software Designer track. It combines structured question practice, case analysis, mock exams, learning analytics, and AI assistance into one self-hostable learning workspace.

OSE is designed for candidates who want a repeatable study system, teachers who need transparent question banks, and teams that want a private AI-enabled training platform. The project focuses on practical exam workflows: learn a knowledge point, practice questions, review mistakes, run a mock exam, and adjust the plan based on data.

The core promise is simple: AI-Powered, Open Source, and Self-hostable. You can use Claude, OpenAI, Gemini, or any OpenAI-compatible endpoint, keep your data in your own database, and contribute improvements back to the community.

Features

  • 📚 Built-in question bank: 41 历年真题 (2014–2025) — 1579 questions total: 1483 multiple-choice questions and 96 case-analysis questions, with the case-analysis questions further split into 263 sub-questions; AI-classified into a 56-node knowledge tree, baked into the seed so a fresh db:seed immediately produces a usable study workspace.
  • 🤖 AI assistance: Claude, OpenAI, Gemini, and custom endpoints for explanations, grading, question generation, diagnosis, and study plans.
  • 📊 Learning analytics: mastery heatmaps, weak-area diagnosis, predicted scores, and pass probability evaluation.
  • 📝 Mock exams: realistic exam sessions with countdown timers, answer sheets, and result reports.
  • 🧭 Smart study plans: AI-generated personalized preparation plans based on target date and current progress.
  • 🖥️ Multi-platform: Web app, Tauri desktop installer (Windows/Linux/macOS), and Android-ready PWA.
  • 🔌 Multi-provider AI: Claude, OpenAI, Gemini, and OpenAI-compatible custom APIs.

Tech Stack

Next.js TypeScript Tailwind CSS Prisma SQLite PostgreSQL Tauri shadcn/ui

Quick Start

git clone https://github.com/hacksynth/ose.git
cd ose
cp .env.example .env
npm install
npm run db:migrate
npm run db:seed
npm run dev

Open http://localhost:3000, create an account, and start practicing. The seed step loads 41 历年真题 / 1579 questions total (1483 multiple-choice + 96 case-analysis, further split into 263 sub-questions) from data/51cto-seed.json (built from data/51cto-exams/); see data/51cto-exams/INDEX.md for the source pipeline and licensing notes.

Self-hosting Guide

OSE can run on Docker, a VPS, or Vercel-compatible hosting. OSE currently ships with SQLite as the built-in supported database. PostgreSQL production deployment support is on the roadmap and is not ready yet.

See docs/self-hosting.md for Docker Compose, VPS systemd, HTTPS, and reverse proxy examples.

Screenshots / Demo

Dashboard Practice center
Dashboard Practice
Knowledge tree Mock exam
Knowledge Exam
Study plan Learning analysis
Plan Analysis

Screenshots are captured by scripts/capture-screenshots.mjs against a local dev server. Re-run after UI changes:

npm run dev
node scripts/capture-screenshots.mjs

Roadmap

  • Phase 1: 选择题题库 + 练习 + 错题本
  • Phase 2: 案例分析题 + 模拟考试 + 知识点体系
  • Phase 3: AI 辅助(讲解/批改/出题/诊断/学习计划)
  • Tauri 桌面版(支持 BUNDLE_NODE=1 自包含 Node.js)
  • 更多软考科目支持(信息系统项目管理师等)
  • 历年真题内置(2014–2025,41 套,1579 题:1483 选择题 + 96 案例题 / 263 小问)
  • PostgreSQL 生产部署支持
  • Docker Compose 一键部署
  • 国际化(i18n)
  • 移动端 PWA(Android / 桌面浏览器)
  • 社区讨论/评论功能
  • 题库贡献平台

Contributing

We welcome code, documentation, question bank data, issue triage, translations, and product feedback. Start with CONTRIBUTING.md and the curated ideas in .github/GOOD_FIRST_ISSUES.md.

License

OSE is licensed under the AGPL-3.0. If you modify and provide OSE as a network service, your modified source code must also be made available under the same license.

About

Open Software Exam,一个开源的软考软件设计师备考系统。

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages