Skip to content
View Quelora's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report Quelora

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
quelora/README.md

Quelora

Open-source, self-hosted comments and community engagement. A privacy-first alternative to Disqus — with AI moderation, real-time chat, gamification, offline-first resilience, and a WordPress plugin.

License: AGPL-3.0 Status: first public release

Website · Live demo · Docs · Discussions



The widget, live. (If your viewer doesn't play it inline, see the live demo.)


What Quelora is

Quelora is not "yet another Disqus alternative". It is a full engagement layer you drop on any website or web app — comments, profiles, follows, real-time chat, push notifications, AI-moderated discussions, gamification, surveys, P2P resilience.

Embed it with a single <script> tag. Self-host it on a small VPS. Own the data. No tracker, no ads, no third party.

Highlights

  • 💬 Discussions — threads, replies, reactions, mentions, GIFs, audio.
  • 👤 Community layer — user profiles, follows, blocks, reputation / trust scores.
  • 🤖 AI moderation — automatic toxicity scoring (Perspective · Detoxify) and LLM moderation (OpenAI · Gemini · Grok · DeepSeek).
  • Real-time — live comment streams, chat, live-mode broadcast threads.
  • 🎮 Gamification & surveys — points, badges, levels, polls.
  • 🌐 Offline-first — IndexedDB cache, optional P2P resilience via WebTorrent / Nostr.
  • 🔌 WordPress plugin — drop-in, no code.
  • 🌍 12 languages — automatic detection (en, es, fr, de, it, pt, ru, zh, ja, ar, hi, he).
  • 🔐 Privacy-first — per-tenant configuration encrypted at rest (AES-256-CBC), JWT auth, optional 2FA.

Try it in 5 minutes

git clone https://github.com/Quelora/quelora-dx-env
cd quelora-dx-env
make setup     # ~5 min: clones every component, SSL via mkcert, DNS, deps, DB seed
make up

# Then open:
#   https://dashboard.quelora.dev   →   admin SPA (default: quelora / Quelora26*/ — change it)
#   https://demo.quelora.dev        →   the widget live

Deploy to production

The repo ships a production-grade docker-compose.yml that pulls the official images, plus a sample nginx config and a comprehensive .env.example.

git clone https://github.com/Quelora/quelora
cd quelora
cp .env.example .env             # ★ fill in domain + secrets
cp examples/nginx.conf config/nginx.conf  # ★ replace YOUR_DOMAIN
# Drop your TLS certs in ./data/certs/  (certbot, your own provisioning, …)
mkdir -p data/{mongo,assets,geoip,certs,webroot}
docker compose up -d

For the full architecture and per-service details see docs/architecture.md.

Embed the widget on any site

<script>
  window.QUELORA_CONFIG = {
    cid: 'QU-XXXXXXXX-XXXXX',
    apiUrl: 'https://api.your-domain.tld'
  };
</script>
<script type="module" src="https://cdn.jsdelivr.net/gh/Quelora/quelora-widget-community@v1.0.0/dist/quelora.js"></script>

Create a client in the dashboard, copy the cid, paste this snippet — done.

📦 Served via jsDelivr from the v1.0.0 release of quelora-widget-community. Pin the version (@v1.0.0) so future releases don't change your site without warning. A branded cdn.quelora.org is on the post-launch roadmap; jsDelivr is the canonical URL today.

Components

Quelora ships as ~14 independent repositories under github.com/Quelora:

Core platform

Repo Role
quelora-widget-community The embeddable widget — ES6, Web Worker, Service Worker, WASM.
quelora-public-api Community-facing REST API (port 3000).
quelora-dashboard-api Multi-tenant admin API + Sentinel debug broker (port 3010).
quelora-dashboard Admin SPA — React 18 + MUI v7.
quelora-worker BullMQ worker — emails, notifications, activity.
quelora-jobs Scheduled BullMQ jobs — reputation, gravity decay, suggestions.
quelora-common Shared library — models, services, providers.

Optional modules

Repo Role
quelora-enterprise Backend modules — gamification, surveys, ads, SSE, chat, P2P, live mode.
quelora-widget-enterprise Client modules paired with the above.
quelora-wasm Rust → WASM (image processor + Markdown parser) used inside the widget worker.
quelora-detoxify Self-hosted FastAPI wrapper around the Detoxify multilingual toxicity model.

Some modules (P2P resilience, live mode) are marked experimental — they work but have seen less production exposure. Help especially welcome there.

Integrations & operations

Repo Role
quelora-wp-plugin WordPress plugin — embed the widget + sync posts and users.
quelora-demo-api The live demo at demo.quelora.org.
quelora-dx-env Orchestration — docker-compose, Makefile, setup scripts.

License

Released under AGPL-3.0. Modify, run, self-host, fork freely. If you offer Quelora as a hosted service to third parties, you must publish your modifications under the same license. No "open core" — every package is AGPL, including the optional modules.

Status — honest

This is the first public release of a project that has been running in production for about a year as a single-developer effort. The codebase is solid because it has been dogfooded daily — not because it has formal test coverage (it doesn't have any yet; that's good-first-issue territory).

The maintainer (Germán Zelaya) is openly looking for co-maintainers — see MAINTAINERS.md. If any subsystem here interests you and you want to own it, open a discussion.

Quelora is being released now, intentionally, because the alternative is the project dying on a disk drive. The goal of the launch is to find people who care enough to keep it alive. If that's you, welcome.

Behind the scenes: the final push to release — repo cleanup, documentation, the website, the launch plan — was done in collaboration with Claude (Anthropic). The architecture and code are human; the homestretch had an AI co-pilot. Mentioned here for transparency, not as marketing.

Contributing

PRs welcome. See CONTRIBUTING.md. The on-ramp is the good first issue label across all repos.

For security disclosures: SECURITY.md. By contributing you agree to the Code of Conduct.

Popular repositories Loading

  1. quelora-dashboard quelora-dashboard Public

    Quelora admin SPA — content, moderation, analytics, ads, gamification, jobs. React 18 + MUI v7.

    JavaScript 1

  2. quelora-common quelora-common Public

    Shared library for Quelora — Mongoose models, services, middlewares, encryption, providers. Consumed by every backend service.

    JavaScript 1

  3. quelora-public-api quelora-public-api Public

    Public REST API for Quelora — community-facing endpoints (auth, posts, comments, profiles, notifications).

    JavaScript 1

  4. quelora-dashboard-api quelora-dashboard-api Public

    Multi-tenant admin API for Quelora + Sentinel debug broker. Powers the dashboard SPA and the WordPress sync.

    JavaScript 1

  5. quelora-enterprise quelora-enterprise Public

    Optional Quelora modules — gamification, surveys, advertising, real-time chat, SSE, P2P resilience, live mode.

    JavaScript 1

  6. quelora-jobs quelora-jobs Public

    Scheduled BullMQ jobs for Quelora — reputation, suggestions, gravity decay, gamification.

    JavaScript 1