Centralisez tous vos
formulaires au même endroit

Récupérez les soumissions de tous vos formulaires dans une interface unique, avec leurs données et leurs fichiers.

Github
Frame Puna

Comment ça marche

Mise en place en 3 étapes

  1. Créez un site et ses formulaires dans Puna.

    Depuis le panneau d'administration, déclarez vos sites et les formulaires associés. Obtenez instantanément un token d'API et le code unique de votre formulaire.

  2. Envoyez les soumissions vers l'API.

    Dirigez les soumissions de vos formulaires existants vers le endpoint unique de Puna. JSON et Multipart supportés.

  3. Consultez, filtrez, exportez.

    Retrouvez toutes les entrées trié par site et formulaire. Filtrez, visualisez, exportez en CSV ou Excel et télchargez une archive des fichiers

Votre stack, votre choix

Si votre outil peut envoyer une requête HTTP, Puna est compatible.

Fonctionnalités

Tout ce dont vous avez besoin pour centraliser et exploiter vos formulaires

API compatible JSON et Multipart-Form

Un endpoint unique compatible JSON et multipart/form-data, avec gestion native des fichiers joints.

Export de données

Exportez les soumissions de vos formulaires au format CSV ou Excel afin de faciliter l'analyse, le reporting et le partage des données.

RBAC et permissions

Gérez les accès et les actions de chaque utilisateur grâce à un système de rôles et de permissions intégré.

Administration et logs

Visualisez les logs applicatifs et d'audit directement depuis l'interface d'administration afin de faciliter le suivi et le diagnostic.

Optionnel

ClamAV

Renforcez la sécurité de vos formulaires grâce à l'analyse antivirus automatique des fichiers reçus avec ClamAV.

Optionnel

Serveur MCP

Transformez vos soumissions de formulaires en données accessible par vos assistants IA grâce au serveur MCP intégré.

Pièces jointes

Recevez des fichiers dans vos soumissions

Puna supporte le multipart/form-data, ce qui vous permet de recevoir des fichiers directement avec chaque entrée de formulaire.

  • Chaque fichier est automatiquement lié à la soumission qui le contient.
  • Les fichiers sont stockés sur votre propre infrastructure, vous gardez le contrôle.
  • 12 formats pris en charge par défaut.
  • Ajoutez ou limitez les formats de fichiers acceptés selon vos besoins.
.jpg.jpeg.png.webp.pdf.docx.doc.odt.txt.csv.xlsx.xlset plus encore...

Interface

Une vue concrète de Puna, avec quelques captures d'écran

Tableau de bord Puna avec courbe des entrées reçues et top des formulaires
Pilotage01 / 08

Tableau de bord des entrées

Suivez le volume reçu, les formulaires les plus actifs et la répartition par site sur les 7 ou 30 derniers jours.

Démarrage rapide

Opérationnel en quelques commandes

Clonez le dépôt, lancez le setup et vous êtes opérationnel en quelques minutes.

Prérequis

Node.js 24+
MariaDB 11+
bash
#Cloner le dépôt
$git clone https://github.com/FabioDevCode/Puna.git
$cd Puna
#Configurer l'environnement
$npm run setup
$npm install
#Démarrer l'application
$npm run dev
bash
#Télécharger le compose et le script de setup
$curl -fsSLO https://fabiodevcode.github.io/Puna/compose.yml
$curl -fsSLO https://fabiodevcode.github.io/Puna/scripts/setup.sh
#Configurer le fichier .env
$bash setup.sh
#Démarrer l'application Puna
$docker compose up

Docker

Image officielle : fabiodevcode/puna

Installer sans prise de tête

Si vous voulez simplement lancer Puna, utilisez l'image Docker. Le compose récupère les services nécessaires et évite d'installer Node.js ou MariaDB à la main.

Variables .env requises

DB_IP=db
DB_USER=punaou autre mais ne doit pas être root
CLAMAV_ENABLED=true
CLAMAV_HOST=clamav
CLAMAV_PORT=3110

Open source

Puna avance mieux quand la communauté regarde, teste et propose.

Le projet est public, auditable et ouvert aux contributions. Une étoile aide à le faire connaître, une issue aide à prioriser, et une pull request peut améliorer Puna pour tous les projets qui l'auto-hébergent.

License AGPLv3Auto-hébergeableIssues ouvertesPull requests bienvenues

Prêt à simplifier la gestion
de vos formulaires ?

Installez Puna, connectez vos premiers formulaires
et gardez vos soumissions au même endroit.

Voir le dépôt