scoold

ErudikaApache-2.0活跃维护

团队自建问答社区,仿 Stack Overflow 的提问、回答与投票机制,可私有化部署或托管,用来沉淀内部技术知识。

The Stack Overflow clone for your team (self-hosted or hosted)

1.70.2发布于 2026-09-21 12:43 UTC922star +2 / 7 天228fork同步于 2026-11-10 17:54 UTC

怎么上手

由 README 提炼,执行前请确认
git clone https://github.com/erudika/scoold.git && cd scoold
mvn install
mvn -Dconfig.file=./scoold-application.conf spring-boot:run
硬件要求按 README 说明

README 未说明硬件要求;Scoold 是 Spring Boot 单 JAR 应用,需 JDK 8+ 和 Maven 构建,并需可访问的 Para 后端服务。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

自托管的团队问答知识分享平台,Stack Overflow 的轻量克隆

团队自建问答社区,仿 Stack Overflow 的提问、回答与投票机制,可私有化部署或托管,用来沉淀内部技术知识。

核心能力

  • 提供完整问答平台,含投票、声望与徽章系统
  • 用 Spaces 隔离不同团队的问题与用户
  • 支持全文搜索和基于位置的近我筛选
  • 后端交给 Para 服务,可接多种数据库
  • 支持 LDAP、社交登录与 mTLS 认证

容易踩的坑

Scoold 只是客户端,必须另行部署并配置可访问的 Para 后端才能运行;构建需 JDK 8+ 与 Maven,生成 native 镜像还需额外安装 GraalVM;Slack、Teams、SAML、文件上传等属 Scoold Pro 付费功能,开源版不含。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本1.70.2
  1. 1.70.2最新正式版2026-09-21 · 2026-09-21 12:43 UTC

    8e0cd992 Release v1.70.2. 9cd06a28 fixed duplicate IDs error on batch updating unapproved answers 102d10e8 updated Para client 8988b47e updated dependencies 7ac289fb fixed thread blocking when Scoold is trying to connect to Para, for single-threaded environmets like Lambda c6ac03c5 fixed UI bug when personal API key is revoked and the validity dropdown remains hidden d73edae2 added new option scoold.voting_on_homepage_enabled to enable/disable the vote buttons on questions shown on the homepage

  2. 1.70.12026-08-27 · 2026-08-27 17:08 UTC
    查看更新说明

    16bf7880 Release v1.70.1. 4d4a7978 updated dependencies 33213faa fixed minor issue in SettingsController with fav tags not being trimmed properly on save c8dd13e7 fixed regular users able to approve and delete any report if ID is known 288c82b9 fixed regular users able to read any comment if ID is known via /questions/{id}?commentid= query parameter 63490cc5 fixed users with personal tokens able to delete any webhook if ID is known, via API 59f7919d fixed users with personal tokens able to view comments for unapproved posts via API 7fcb3f26 fixed any user able to view unapproved posts' body and title from the revisions page, incl. via API 9863cd29 fixed users with personal tokens able to view all spaces an admin/mod is member of, via API 6033299c fixed users with personal tokens able to create webhooks freely via API 08aff3e5 fixed users with personal tokens able read similar posts via API, without proper space filtering fd3e55b3 fixed users with personal tokens able read all posts from other people's profiles via API, without proper space filtering 112d6e89 fixed users with personal tokens able to add themselves to any space via API 560bbd89 fixed space visibility for users with personal tokens via API 1e0e4a6c fixed personal token validity not displayed correctly cfc9589e fixed user data exposure when API is called personal access tokens 09af3991 fixed feedback posts cannot be deleted bug, closes #480 404618ed fixed ScooldConfig objects storing not calling the overriding method .store() bf95e317 fixed color contrast in CSS for admin dashboard when using dark mode

  3. 1.70.02026-08-13 · 2026-08-13 13:25 UTC
    查看更新说明

    New feature: Admin dashboard! :tada:

    92186e33 Release v1.70.0. a3da79e0 added security events for almost all actions in Scoold and tied them into the new audit log feature 1f57a622 fixed issues with top contributors leaderboard bab1ea61 refactored and added traffic tracking methods in DashboardService class e12c6130 updated lang_en.properties and fix minor issue with onboarding check 1d28a748 added 3rd-party license notices in /admin/environment 84249470 added new feature - admin dashboard, closes #273, closes Erudika/scoold-pro#22 38c64fac added helper method in HttpUtils 93bd9120 fixed profile link macro for anon users 68b59e78 fixed invalid query bug in SearchUtils when visiting the people page, fixed NPE in ScooldUtils c1d694b4 updated dependencies 138aef06 added theme preview screenshots cbc2055b refactoring and UI improvements on the Admin page 2c628276 updated reachability-metadata.json 40960fa8 refactored search query helper methods and moved them to SearchUtils 5ee7b8db refactored search queries to return better results, changed default sorting to score-based instead of timestamp-based e0679e50 fixed license header 0a043def fixed API returning inconsistent results due to missing space ID, when calling GET /api/tags/{tag}/questions endpont, fixes #475 9bde474e added checkbox to enable temporary anonymous posting of content, closes #478 98d00794 fixed NPE in Profile class when posting anonymously 8a2b296a fixed bug in search query with spaces throwing invalid URL exception for canonical URLs

  4. 1.69.32026-07-09 · 2026-07-09 09:45 UTC
    查看更新说明

    beb35cad Release v1.69.3. d4e4e66b added personal token validity period selection box on settings page 4374d41c minor fix in config docs 18b8f711 fixed bug in personal token validity period having the wrong time unit 2b2d4c6f fixed API endpoints for getComment() and getReport() missing additional permissions checks 86e97a44 fixed sensitive info filter for config values in MCP responses 9f356fbf added admin checks in config-related MCP tools 41e0386f fixed bug with incorrect values in config editor on Admin page 21ac3bbc fixed incorrect data type in ScooldConfig doc annotation

  5. 1.69.22026-06-30 · 2026-06-30 07:08 UTC
    查看更新说明

    fbbc5330 Release v1.69.2. 0e0ded0d fixed NPE in ScooldUtils breaking API auth 25f5de45 Merge pull request #476 from vasiliy-mikhailov/tests/avatar-classes 5d5e8b3f Add tests for avatar repository and generator classes

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Scoold is a Q&A and a knowledge sharing platform for teams, inspired by Stack Overflow. Scoold is enterprise-ready, super customizable and lightweight.

    Scoold Pro, the premium version of Scoold, is the perfect knowledge sharing platform for your company or team. The pricing is flat, without limits, the license - perpetual. Are you still paying per seat in 2026? Scoold Pro is the knowledge sharing platform to migrate to!

    Docker pulls Docker pulls Join the chat at https://gitter.im/Erudika/scoold License

    Scoold - open-source knowledge sharing platform

    Scoold is a Q&A and a knowledge sharing platform for teams. The project was created back in 2008, released in 2012 as social network for schools inspired by Stack Overflow. In 2017 it was refactored, repackaged and open-sourced.

    Scoold can be deployed anywhere - Heroku, DigitalOcean, AWS, Azure or any VPS hosting provider. It's lightweight, the backend is handled by a separate service called Para. All the heavy lifting is delegated to Para which can also be configured to store the data in any of the popular databases. This makes the Scoold code base easy to read and can be learned quickly, even by junior developers.

    Scoold Pro, the paid version of Scoold, has premium features which make it the perfect knowledge sharing platform for your company or team.

    This project is fully funded and supported by Erudika - an independent, bootstrapped company.

    Features

    • Full featured Q&A platform
    • Database-agnostic, optimized for cloud deployment
    • Full-text search
    • Distributed object cache
    • Location-based search and "near me" filtering of posts
    • I18n with RTL language support
    • Reputation and voting system with badges
    • Custom badges - add your own text, icon and color
    • Spaces (Teams) - groups of isolated questions and users
    • Webhooks with signature signing
    • Zapier integration
    • Minimal frontend JS code based on jQuery
    • Modern, responsive layout powered by Materialize CSS
    • Suggestions for similar questions and hints for duplicate posts
    • Email notifications for post replies and comments
    • Backup and Restore
    • RESTful API defined with OpenAPI 3.0
    • Spring Boot project (single JAR)
    • Mutual authentication support (mTLS)
    • LDAP authentication support
    • Social login (Facebook, Google, GitHub, LinkedIn, Microsoft, Slack, Amazon, Twitter) with Gravatar support
    • Syntax highlighting for code in posts, GFM markdown support with tables, task lists and strikethrough
    • Import data from Stack Overflow for Teams
    • Emojis! - using this cheat sheet or inline Unicode
    • Support for uploading custom avatars (to Imgur, Cloudinary)
    • SEO friendly
    • Cookie consent (for GDPR, CCPA, etc.)

    Buy Scoold Pro and also get these premium features:

    • Slack integration
    • Mattermost integration
    • Microsoft Teams integration
    • SAML authentication support
    • Custom authentication support
    • SCIM 2.0 for automatic user provisioning
    • Mentions with notifications
    • File uploads (local, AWS S3, Azure Blob)
    • Account suspensions (permabans)
    • Anonymous posts
    • Unlimited spaces
    • Multiple admins
    • Multiple identity domains
    • Sticky / Favorite posts
    • Advanced syntax highlighting
    • Email digest of recent questions
    • Security notifications
    • Wiki-style answers

    ...and more!

    Live DEMO

    For admin access, go to the demo login page and click "Continue with Demo Login".

    Documentation

    The full documentation for Scoold is at scoold.com/documentation

    Scoold architecture intro (or 'what the heck is Para?')

    Scoold is a client application of the Para backend server. Almost every request to Scoold produces at least one request to Para as well. When you ask a question on Scoold, a create request is sent to Para to the location POST /v1/questions. Here are a few key points about that architecture:

    • A Para server can be hosted anywhere and store data inside any of the supported databases.
    • Para is a multi-tenant server which stores data in isolated environments called "apps".
    • One or more instance of Scoold (like a cluster) can connect to the same Para app environment and share the data.
    • Multiple separate Scoold websites can be powered by the same Para backend using different Para apps.
    • Each app environment is completely independent from others and has its own database table and search index.
    • Both Scoold and Para can be hosted on the same machine or on multiple machines, on different networks.
    • Scoold talks to Para via HTTP(S) so Para must be directly accessible from Scoold, but can also be hosted on a private network.

    Head over to the documentation for detailed explanation of the Scoold architecture.

    Cloud hosting

    Deploy on Scoold Cloud

    Deploy on Hostinger

    Support

    You can get support here by submitting an issue. Also you can head over to the Gitter chat room for help. Issues related to Scoold Pro must be reported to Erudika/scoold-pro. Paid/priority support is also available.

    Getting help

    Blog

    Read more about Scoold on our blog

    Translating Scoold

    You can translate Scoold to your language by copying the English language file and translating it. When you're done, change the file name from "lang_en.properties" to "lang_xx.properties" where "xx" is the language code for your locale. Finally, open a pull request here.

    See full list of available translations in Scoold

    You can also change the default language of Scoold for all users by setting scoold.default_language_code = "en", where instead of "en" you enter the 2-letter code of the language of your choice.

    Building Scoold

    To compile it you'll need JDK 8+ and Maven. Once you have it, just clone and build:

    git clone https://github.com/erudika/scoold.git && cd scoold
    mvn install
    

    To run a local instance of Scoold for development, use:

    mvn -Dconfig.file=./scoold-application.conf spring-boot:run
    

    To generate a WAR package, run:

    mvn -Pwar package
    

    To generate the native image for your particaluar achitecture, run:

    mvn -Pnative clean package
    

    GraalVM is required to be installed before compiling the native image.

    Contributing

    1. Fork this repository and clone the fork to your machine
    2. Create a branch (git checkout -b my-new-feature)
    3. Implement a new feature or fix a bug and add some tests
    4. Commit your changes (git commit -am 'Added a new feature')
    5. Push the branch to your fork on GitHub (git push origin my-new-feature)
    6. Create new Pull Request from your fork

    Please try to respect the code style of this project. To check your code, run it through the style checker:

    mvn validate
    

    For more information, see CONTRIBUTING.md

    License

    Apache 2.0

    Scoold Q&A

    Stack Overflow in a JAR

    Made in the EU 🇪🇺 by Erudika