Introduction to Qlarr
Discord 💬 | Demo 🖥️ | Deploy Locally in 30 Sec! 🚀
Welcome to the Qlarr documentation. Qlarr is an open-source framework for creating and deploying offline-first surveys across multiple platforms.
What is Qlarr?
Qlarr enables you to build sophisticated survey applications that work seamlessly offline and across different platforms. The framework uses JSON to define UI-agnostic survey components and JavaScript for complex survey logic.
Key Features
- Survey as Code: Author surveys in JSON + JavaScript — the engine compiles, validates, and builds dependency graphs that run identically on web, Android, and iOS
- Offline-First: Collect data even without internet connectivity
- Rich Question Types: Text, choice, matrix, date/time, media capture, ranking, and more
- Cross-Platform: Deploy surveys on web, Android, and iOS (coming soon)
- Advanced Logic: Conditional branching, skip patterns, and response piping
- Validation: Built-in input validation with custom rules
- Randomization: Support for weighted sampling and question randomization
- Multi-Language: Create surveys in multiple languages
- Flexible Navigation: Choose between all-questions, page-by-page, or question-by-question modes
Architecture Overview
The Qlarr ecosystem consists of several interconnected components:
- Survey Engine (KMP): Core processing layer built with Kotlin Multiplatform
- Survey Engine Script: JavaScript validation and execution library
- Backend: Spring Boot REST API for survey management and data synchronization
- Frontend: React-based WYSIWYG editor and survey renderer
- Android App: Native mobile implementation
Learn more about the architecture and data model.
Getting Started
Choose your path based on your role:
- Survey Creators: Learn how to design and deploy surveys
- Developers: Understand the architecture and explore component docs
License
All Qlarr repositories are licensed under AGPL-3.0.