---
title: SurveyJS
created: 2026-06-08
updated: 2026-06-08
type: app
tags: [catalogue, surveys-and-forms, app-marathon-batch-b]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Surveys+and+Forms&app=surveyjs, https://surveyjs.io/]
---

# 📋 SurveyJS

> **Suite de composants JavaScript** pour intégrer des sondages et formulaires professionnels dans vos apps web (form builder drag & drop + runtime).

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | [surveyjs.io](https://surveyjs.io/) |
| **GitHub** | [surveyjs/survey-library](https://github.com/surveyjs/survey-library) |
| **License** | MIT (lib) / Commercial (no-logo) |
| **Langage** | TypeScript |
| **Étoiles GitHub** | 4.1k ⭐ |
| **Catégorie** | [[cat-surveys-and-forms|Surveys and Forms]] |

## 📝 Description

**SurveyJS** est une **librairie modulaire** composée de plusieurs paquets (Survey Creator, Survey Library, Form Renderer, PDF Export) qui s'intègrent en front-end ou back-end (Node.js, .NET, PHP). Le builder drag & drop permet aux utilisateurs finaux de concevoir leurs formulaires via une UI visuelle.

Différence vs Formbricks : SurveyJS n'est pas un SaaS clé-en-main mais une **lib technique** que vous intégrez dans votre app. Formbricks = produit complet prêt à l'emploi.

Pour qui : développeurs SaaS, équipes produit qui veulent un form builder enterprise sans réinventer la roue.

## 🚀 Installation

### Docker Compose (form service server)

```yaml
version: '3.8'
services:
  surveyjs-server:
    image: surveyjsformservice/server:latest
    container_name: surveyjs-server
    restart: unless-stopped
    environment:
      - SURVEYJS_LICENSE=***    ports:
      - "8080:8080"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.surveyjs.rule=Host(`forms.example.com`)"
      - "traefik.http.routers.surveyjs.entrypoints=websecure"
      - "traefik.http.routers.surveyjs.tls.certresolver=letsencrypt"
```

### Intégration NPM (cas typique)

```bash
npm install survey-core survey-creator-core
```

```typescript
import { Model } from "survey-core";
import "survey-core/survey-core.min.css";
const surveyJson = { /* ... */ };
const survey = new Model(surveyJson);
```

## 🔄 Alternatives

### Open Source
- [[app-formbricks]] — Plateforme complète clé-en-main
- [[app-formio]] — Alternative mature avec back-office intégré
- [[app-surveyjs]] — Voir aussi alternatives JS pures (react-hook-form, jsonforms)

### Propriétaires
- **Typeform** — UX imbattable mais propriétaire
- **Jotform** — Plateforme no-code concurrente
- **Fillout** — Forms modern SaaS

## 🔐 Sécurité
- **License commerciale** requise pour retirer le logo SurveyJS (watermark en version MIT)
- **CSRF/XSS** : sanitizer intégré côté client, configurable en server-side
- **Stockage** : aucune donnée hébergée par SurveyJS par défaut — vous gardez le contrôle
- **Compliance** : auto-hébergeable, compatible RGPD si vous servez depuis l'UE

## 📚 Ressources
- [Documentation officielle](https://surveyjs.io/documentation)
- [GitHub](https://github.com/surveyjs/survey-library)
- [Demos interactifs](https://surveyjs.io/form-library/examples)

## Pages Liées
- [[cat-surveys-and-forms]] — Catégorie Surveys and Forms
- [[app-formbricks]] — Concurrent (full app)
- [[recettes-docker-compose]] — Templates Docker
