Form Generator
حوّل ملف Markdown بسيطًا إلى نموذج ويب ثنائي اللغة (بالفرنسية والعربية)، مع جمع الإجابات وتصديرها.
لماذا Form Generator؟
- أنشئ النماذج انطلاقًا من ملف Markdown بسيط.
- دعم أصيل للفرنسية والعربية، مع عرض صحيح من اليمين إلى اليسار (RTL).
- الإجابات محفوظة وقابلة للتصدير إلى CSV (UTF-8 متوافق مع Excel، مع عمود اللغة).
- آمن: روابط غير قابلة للتخمين وحماية من الرسائل المزعجة.
- بدون أي اعتماد خارجي — قابل للاستضافة في أي مكان.
كيف تكتب استبيانًا بصيغة Markdown
يُوصَف النموذج في ملف نصي بامتداد .md. الصقه أو ارفعه من لوحة الإدارة.
البيانات الوصفية (front matter)
كتلة اختيارية محصورة بين --- في أعلى الملف، تُعرِّف اللغات ونصوص النموذج:
languages: fr, arلنموذج ثنائي اللغة، أوlanguage: fr/language: arلنموذج بلغة واحدة.title_frوtitle_ar— عنوان النموذج (مطلوب؛ بلاحقة واحدة فقط في وضع اللغة الواحدة).- اختياري:
description_fr/ar،submit_text_fr/ar،success_message_fr/ar.
بنية السؤال
يبدأ كل سؤال بعنوان من المستوى الثالث ### key (المفتاح هو اسم الحقل). تحته، تُحدِّد أسطر key: value خصائصه:
label_fr/label_ar— التسمية الظاهرة (مطلوبة في الوضع الثنائي).type— نوع الحقل (انظر أدناه).required: trueأوfalse.options_fr/options_ar— قائمة نقطية للأنواع radio وcheckbox وselect (نفس العدد والترتيب في اللغتين).- اختياري:
placeholder_fr/ar،help_fr/ar،min/max،maxlength،key.
الأنواع المدعومة
text، textarea، email، number، tel، date، radio، checkbox، select، rating.
مثال كامل (ثنائي اللغة)
يُنشئ هذا الملف نموذجًا يختار فيه المجيب الفرنسية أو العربية:
---
languages: fr, ar
title_fr: Enquête de satisfaction
title_ar: استبيان الرضا
description_fr: Nous aimerions votre avis. Cela prend 2 minutes.
description_ar: نودّ معرفة رأيك. يستغرق الأمر دقيقتين.
submit_text_fr: Envoyer mon avis
submit_text_ar: أرسل ملاحظاتي
success_message_fr: Merci pour votre temps !
success_message_ar: شكرًا لك على وقتك!
---
### full_name
label_fr: Quel est votre nom ?
label_ar: ما اسمك؟
type: text
required: true
placeholder_fr: Jean Dupont
placeholder_ar: محمد أحمد
### email
label_fr: Quelle est votre adresse e-mail ?
label_ar: ما هو بريدك الإلكتروني؟
type: email
required: true
### satisfaction
label_fr: Êtes-vous satisfait globalement ?
label_ar: ما مدى رضاك بشكل عام؟
type: radio
required: true
options_fr:
- Très satisfait
- Satisfait
- Neutre
- Insatisfait
options_ar:
- راضٍ جدًا
- راضٍ
- محايد
- غير راضٍ
### features
label_fr: Quelles fonctionnalités utilisez-vous ? (plusieurs choix)
label_ar: ما الميزات التي تستخدمها؟ (اختيارات متعددة)
type: checkbox
options_fr:
- Rapports
- Notifications
- Intégrations
options_ar:
- التقارير
- الإشعارات
- التكاملات
### recommend
label_fr: Nous recommanderiez-vous ?
label_ar: ما مدى احتمال أن توصي بنا؟
type: rating
min: 1
max: 10
### comments
label_fr: Commentaires additionnels
label_ar: ملاحظات إضافية
type: textarea
required: false
maxlength: 2000
help_fr: Optionnel.
help_ar: اختياري.