MCPSERV.CLUB
LimeSurvey

LimeSurvey

Self-Hosted

Open‑source survey platform for global, GDPR‑compliant data collection

Active(100)
3.4kstars
0views
Updated 11 hours ago
LimeSurvey screenshot 1
1 / 5

Overview

Discover what makes LimeSurvey powerful

LimeSurvey is a mature, open‑source survey engine that delivers end‑to‑end data collection, analysis, and reporting. From a technical standpoint it exposes a rich REST/JSON‑RPC API and a legacy XML‑RPC interface, enabling developers to programmatically create surveys, push responses, or harvest statistics. The platform is built on a classic LAMP/LEMP stack with PHP 7.4+ as the application layer, and supports several relational databases (MySQL ≥ 8.0, PostgreSQL ≥ 12, MariaDB ≥ 10.3, or MSSQL ≥ 2016). Its modular architecture allows for granular permission control, multi‑tenant survey hosting, and extensive customization through themes and JavaScript hooks.

Core Framework

Database Layer

Web Server

Caching

Overview

LimeSurvey is a mature, open‑source survey engine that delivers end‑to‑end data collection, analysis, and reporting. From a technical standpoint it exposes a rich REST/JSON‑RPC API and a legacy XML‑RPC interface, enabling developers to programmatically create surveys, push responses, or harvest statistics. The platform is built on a classic LAMP/LEMP stack with PHP 7.4+ as the application layer, and supports several relational databases (MySQL ≥ 8.0, PostgreSQL ≥ 12, MariaDB ≥ 10.3, or MSSQL ≥ 2016). Its modular architecture allows for granular permission control, multi‑tenant survey hosting, and extensive customization through themes and JavaScript hooks.

Architecture

  • Core Framework: PHP 7.4+ with Composer‑managed dependencies, following MVC conventions. The codebase is split into core, plugins, and themes directories, each with its own autoloading rules.
  • Database Layer: Doctrine‑style PDO abstraction; schema migrations are managed by a custom migration tool that can be run via CLI or the web UI.
  • Web Server: Apache 2.4+ or Nginx 1.x with PHP‑FPM; URL rewriting is required for clean routes (/admin, /survey, etc.).
  • Caching: Opcache and optional Redis/Memcached for session and query caching.
  • Front‑End: Vanilla JS with optional jQuery for legacy plugins; CSS is output via SCSS, allowing theme overrides.

Core Capabilities

  • Survey Design API: Create/modify surveys, question groups, and questions through REST endpoints (/api/v1/surveys). Supports conditional logic, validation rules, and quota management.
  • Response API: Submit responses programmatically (/api/v1/responses) or retrieve them for downstream analytics.
  • Export Engines: Built‑in CSV, XLSX, STATA XML, and JSON exporters; developers can hook into the export pipeline to add custom formats.
  • Authentication & Authorization: Pluggable auth backends (LDAP, CAS, SAML, OAuth2) and fine‑grained ACLs for survey owners vs. respondents.
  • Webhooks: Trigger HTTP callbacks on events like survey_created, response_submitted. Useful for CI/CD pipelines or data pipelines.
  • Audit Log: Plugin that records all admin actions, exportable via API for compliance.

Deployment & Infrastructure

LimeSurvey is fully self‑hosted and can run on any LAMP/LEMP stack. For production, the recommended setup includes:

  • Containerization: Official Docker images are available on Docker Hub (limesurvey/limesurvey). Compose files expose volumes for data, plugins, and themes.
  • Scaling: Horizontal scaling is achieved by sharing the same database instance; session data can be persisted in Redis to keep state across pods.
  • Backup: Database dumps plus public directory snapshots; the API offers /admin/backup endpoints.
  • High Availability: Use a load balancer in front of multiple web nodes; ensure that the database is configured for read‑replicas to handle heavy analytics queries.

Integration & Extensibility

  • Plugin System: Developers can write PHP plugins that hook into lifecycle events (onSurveyCreate, onResponseSubmit). The plugin API is documented in the manual and includes event names, payloads, and return expectations.
  • REST API: Fully documented with OpenAPI spec; supports OAuth2 for secure access. Rate limits can be configured in config.php.
  • Webhooks & Callbacks: Custom URLs can receive JSON payloads; this is ideal for synchronizing LimeSurvey data with external CRMs or BI tools.
  • Theme & Question Types: Themes can override CSS/JS and template files; new question types are added via plugins that implement the Question interface.
  • Third‑Party Integrations: Built‑in connectors for Google Analytics, SAML, LDAP, and SURFconext; developers can extend these via the plugin API.

Developer Experience

  • Documentation: The official manual provides a comprehensive developer guide, API reference, and plugin development tutorials. Inline code comments are plentiful.
  • Community: Active forums, a Discord channel, and an issue tracker on the bug‑reporting site foster rapid support. The community contributes plugins that cover most niche use cases.
  • Testing: PHPUnit tests are included; CI pipelines run on GitHub Actions. Developers can fork the repo and run composer install to get a testable environment.
  • Configuration: All runtime settings live in config.php, which can be templated for environment variables. This makes it straightforward to deploy across dev, staging, and prod.

Use Cases

  1. Enterprise Feedback Loops: Companies can host internal surveys for employee satisfaction, automatically ingest responses into their HR analytics stack via webhooks.
  2. Academic Research: Universities can deploy multilingual, quota‑controlled surveys and export data directly to SPSS or Stata for statistical analysis.
  3. Event Management: Event organizers can generate post‑event feedback surveys, embed them on event pages, and use the REST API to pull results into dashboards.
  4. Compliance Audits: Governments or NGOs can host GDPR‑compliant surveys, leveraging the audit log and data anonymization features to satisfy regulatory audits.

Advantages

  • **Open

Open SourceReady to get started?

Join the community and start self-hosting LimeSurvey today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
other
License
NOASSERTION
Stars
3.4k
Technical Specs
Pricing
Open Source
Database
Multiple
Supported OS
LinuxWindows
Author
LimeSurvey
LimeSurvey
Last Updated
11 hours ago