Usage & Enterprise Capabilities
Scoold is the open-source solution for building high-performance Q&A communities. Designed to replicate the successful "Stack Overflow" model of knowledge sharing, it provides a feature-rich, community-driven platform where users can ask questions, provide answers, and vote on the most helpful content. Built for both public and private use, Scoold is the perfect tool for organizations looking to capture internal engineering knowledge or build a vibrant support forum.
At its core, Scoold is built on the Para backend, which provides an elastically scalable architecture for data storage and search. This decoupled design ensures that the Scoold frontend remains lightweight and fast while being able to handle massive volumes of data and concurrent users. With native support for reputation systems, badges, and tagging, it encourages active participation and ensures that high-quality information rises to the top.
Self-hosting Scoold provides organizations with a secure, professional-grade knowledge engine that integrates seamlessly with their existing identity providers while ensuring absolute data privacy and ownership.
Key Benefits
Community-Driven Success: Use the proven Q&A model to capture and organize institutional knowledge.
Privacy First: You own every question, answer, and user profile on your own servers.
Developer Efficient: Fast, lightweight, and easy to deploy for any size team.
Scalable by Design: Built on a decoupled backend architecture for infinite growth.
Total Personalization: Easily customize the look, feel, and functionality to match your brand.
Production Architecture Overview
A production Scoold deployment consists of two primary layers:
Scoold Frontend: The Java-based web application (running on Jetty or Tomcat).
Para Backend: The storage and search API that handles data persistence.
Search & Storage: (e.g., Elasticsearch and DynamoDB/PostgreSQL) managed by the Para layer.
Reverse Proxy: NGINX or Caddy to handle SSL/TLS and routing.
Implementation Blueprint
Implementation Blueprint
Prerequisites
sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose -y
sudo systemctl enable docker
sudo systemctl start dockerDocker Compose Production Setup
The easiest way to self-host Scoold is using their official Docker orchestration which includes both the frontend and the Para backend.
version: '3'
services:
scoold:
image: erudika/scoold:latest
ports:
- "8080:8080"
environment:
- PARA_ACCESS_KEY=app:scoold
- PARA_SECRET_KEY=secret
- PARA_ENDPOINT=http://para:8081
depends_on:
- para
restart: always
para:
image: erudika/para:latest
ports:
- "8081:8081"
environment:
- PARA_DB=h2
- PARA_SEARCH=lucene
restart: always
Kubernetes Production Deployment (Recommended)
Scoold can be containerized and deployed on Kubernetes for improved availability and scaling.
# Deploy frontend and backend as separate components
kubectl create deployment scoold-web --image=erudika/scoold:latest
kubectl expose deployment scoold-web --port=8080Benefits:
Distributed Search: Use a central Elasticsearch cluster for the Para backend to handle high-volume search queries across multiple projects.
Elastic Caching: Scale your Para instances to handle high-frequency data access as your community grows.
Secure Persistence: Use Kubernetes PersistentVolumeClaims to manage your data reliably in the search and storage layers.
Scaling Strategy
Elasticsearch Integration: In production, always use Elasticsearch with Para to ensure fast and accurate full-text search results.
Decoupled Backend: Scale your Para backend and Scoold frontend independently based on traffic and data volume bottlenecks.
Stateless Frontend: The Scoold frontend is stateless, allowing you to easily run multiple instances behind a load balancer for high availability.
CDN Strategy: Serve all static assets (images, CSS, JS) through a global CDN to improve performance for users worldwide.
Backup & Safety
Search Index Snapshots: Regularly snapshot your Elasticsearch indices to ensure knowledge base durability.
Backend Data Backups: Automate daily backups for the storage layer used by Para (e.g., PostgreSQL or MongoDB).
HTTPS Everywhere: Always run Scoold and Para behind a secure reverse proxy with SSL/TLS enabled to protect internal discussions.
Identity Management: Use LDAP, OIDC, or SAML for secure single sign-on as your organization scales.