WP Manifestindependent plugin directory
manifest / forms / simplewp-forms

SimpleWP Forms

A WordPress form builder plugin with drag-and-drop Vue 3 UI, file uploads, payment gateways, template marketplace, and Gutenberg block.

by SimpleWP · github.com/fushiontest/simplewp-forms · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/fushiontest/simplewp-forms/archive/refs/heads/main.zip

A powerful drag-and-drop form builder for WordPress with a modern Vue 3 admin interface, REST API, file uploads, payment gateways, and template marketplace.

Features

  • Drag & Drop Form Builder — Vue 3 SPA with 20+ field types, live preview, and layout containers (rows, fieldsets, tabs)
  • File & Image Upload — Drag-and-drop with client-side Cropper.js integration and server-side storage
  • Form Templates — Save, load, duplicate, and manage reusable form templates
  • Template Marketplace — Browse and install pre-built templates; supports remote marketplace server
  • Submissions Management — View, filter, and export submissions as CSV or XLSX
  • Statistics Dashboard — Charts, top forms, activity logs, and time-based analytics
  • Shortcode & Block[simplewp_form id="1"] shortcode and Gutenberg simplewp/forms block with live preview
  • Multi-language — i18n ready with Chinese (zh_CN) translation included
  • 3 Form Themes — Default, Dark, and Simple themes out of the box

Pro Features (optional)

  • Email Notifications — SMTP support, per-form recipients, customizable templates with token placeholders
  • Payment Gateways — Stripe, PayPal, and Alipay integration with webhook handling
  • Payment Records — Track transactions, status, and revenue

Screenshots

  1. Form list dashboard with quick actions Form List

  2. Drag-and-drop form builder with live preview Form Builder

  3. Template marketplace with free and premium templates Template Marketplace

  4. Submissions viewer with filtering and export Submissions

  5. Statistics dashboard with charts and analytics Statistics

  6. Frontend form with the Default theme Default Theme

  7. Frontend form with the Dark theme Dark Theme

  8. Frontend form with the Simple theme Simple Theme

Requirements

Dependency Version
WordPress >= 5.8
PHP >= 7.4
ZipArchive (PHP ext) Required for XLSX export

No WooCommerce or other plugins required.

Installation

From ZIP

  1. Download or build the plugin ZIP
  2. Go to WordPress Admin → Plugins → Add New → Upload Plugin
  3. Upload the ZIP and activate

From Source

cd wp-content/plugins/
git clone https://github.com/your-org/simplewp-forms.git

# Build the Vue admin (optional — pre-built dist is included)
cd simplewp-forms/vue-builder
npm install
npm run build

Usage

Shortcode

[simplewp_form id="1"]

Gutenberg Block

Add the SimpleWP Forms block in the editor and select a form from the dropdown.

Admin Menu

Navigate to SimpleWP Forms in the WordPress admin sidebar:

Page Description
Forms Dashboard — list all forms with quick actions
New Form Open the drag-and-drop form builder
Templates Manage saved form templates
Marketplace Browse and install pre-built templates
Submissions View and filter all form submissions
Statistics Dashboard with charts and analytics
Settings Configure notifications, SMTP, payment gateways, reCAPTCHA

REST API

Namespace: simplewp-forms/v1

Forms

Method Endpoint Description
GET /forms List all forms
POST /forms Create a form
GET /forms/{id} Get a form
PUT /forms/{id} Update a form
DELETE /forms/{id} Delete a form
POST /forms/{id}/duplicate Duplicate a form

Submissions

Method Endpoint Description
POST /submit Submit form data (public)
GET /forms/{id}/submissions List submissions for a form
GET /submissions List all submissions
GET /submissions/{id} Get submission detail
DELETE /submissions/{id} Delete a submission

Templates & Marketplace

Method Endpoint Description
GET /templates List templates
POST /templates Save a template
GET /marketplace/templates Browse marketplace catalog
POST /marketplace/templates Install a marketplace template

Statistics

Method Endpoint Description
GET /stats/overview Full dashboard data
GET /stats/by-date Submissions by date
GET /stats/top-forms Top forms by submissions

Settings

Method Endpoint Description
GET /settings Get settings
PUT /settings Save settings

Payments (Pro)

Method Endpoint Description
POST /payments/checkout Create checkout session (public)
GET /payments List payments
POST /webhooks/stripe Stripe webhook
POST /webhooks/paypal PayPal webhook
POST /webhooks/alipay Alipay notify

Render (Public)

Method Endpoint Description
GET /render/{id} Render form HTML

All admin endpoints require manage_options capability.

Hooks

Actions

Hook Arguments Description
simplewp_form_submitted $form_id, $submission_id, $form_data After a form is submitted
simplewp_payment_completed $payment_id, $payment_arr After payment completes

Filters

Hook Arguments Description
simplewp_forms_is_pro $pro Enable/disable Pro features
simplewp_marketplace_url $url Override marketplace server URL

Database

The plugin creates 5 custom tables on activation:

Table Purpose
{prefix}simplewp_forms Form definitions and config
{prefix}simplewp_submissions Form submission data
{prefix}simplewp_form_templates Saved form templates
{prefix}simplewp_activity_log Activity events
{prefix}simplewp_payments Payment records (Pro)

Tables are automatically created on plugin activation and cleaned up on uninstall.

Project Structure

simplewp-forms/
├── simplewp-forms.php          # Plugin bootstrap
├── uninstall.php               # Cleanup on uninstall
├── includes/
│   ├── class-admin.php         # Admin pages, Vue SPA, export
│   ├── class-database.php      # DB schema, CRUD, settings
│   ├── class-email.php         # SMTP, notifications, encryption
│   ├── class-gutenberg.php     # Gutenberg block registration
│   ├── class-marketplace.php   # Template marketplace
│   ├── class-payment.php       # Payment gateways (Pro)
│   ├── class-rest-api.php      # REST API routes
│   ├── class-shortcode.php     # Shortcode + HTML rendering
│   └── class-submission.php    # Form submission + file upload
├── assets/
│   ├── block.js                # Gutenberg block script
│   ├── frontend.js             # Frontend form handling
│   ├── frontend.css            # Frontend form styles
│   ├── cropper.min.js          # Cropper.js v1.6.2
│   └── cropper.min.css         # Cropper.js styles
├── languages/
│   ├── simplewp-forms.pot      # Translation template
│   └── simplewp-forms-zh_CN.*  # Chinese translation
└── vue-builder/dist/           # Pre-built Vue 3 SPA admin

Pro Mode

Enable Pro features during development by adding to wp-config.php:

define('SWPF_PRO', true);

Or via the Settings page toggle (stored in swpf_pro_mode option).

Marketplace

The template marketplace supports two modes:

  1. Built-in (default) — 4 bundled templates (Contact, Feedback, Booking, Newsletter)
  2. Remote server — Set SWPF_MARKETPLACE_URL constant or use the simplewp_marketplace_url filter:
define('SWPF_MARKETPLACE_URL', 'https://your-marketplace.com/api/');

Security

  • All admin AJAX/REST requests verify manage_options capability
  • Public endpoints use nonce verification where applicable
  • SMTP passwords and payment credentials are encrypted at rest using wp_sodium_encrypt_symmetric()
  • File uploads validate MIME types and are stored outside the web root when possible

License

GPL-2.0-or-later — See LICENSE for details.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

For bug reports and feature requests, please use the issue tracker.