PHPackages                             jflepp/picomailformsplugin - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Mail &amp; Notifications](/categories/mail)
4. /
5. jflepp/picomailformsplugin

ActivePico-plugin[Mail &amp; Notifications](/categories/mail)

jflepp/picomailformsplugin
==========================

A mail plugin with forms for pico

0.0.18(7y ago)41391unlicensePHP

Since Nov 19Pushed 7y ago2 watchersCompare

[ Source](https://github.com/jflepp/PicoMailForms)[ Packagist](https://packagist.org/packages/jflepp/picomailformsplugin)[ RSS](/packages/jflepp-picomailformsplugin/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependencies (3)Versions (18)Used By (0)

PicoMailFormsPlugin
===================

[](#picomailformsplugin)

PicoMailForms is a plugin for [Pico](http://picocms.org/) which allows you to define a form and send a mails to a configured smtp server on submitting.

Forms can be written entirely in Markdown using custom markdown extensions. The mail is then being sent using [PHPMailer](https://github.com/PHPMailer/PHPMailer).

PicoMailForms has been developed keeping CleanCode in mind. Unfortunately I'm not very familiar with PHP and the UnitTest coverage is therefore low. The IntegrationTest coverage reaches 98%.
Pull requests are welcome!

### Use cases

[](#use-cases)

- Registration forms
- Contact forms
- and more...

### Features

[](#features)

- Markdown extension for forms
- Mail success / error page after form submit
- Operator mail
- Custom success / error message
- Bootstrap forms
- Error Mail to administrator
- 98% test coverage

### Installation

[](#installation)

Install the plugin using composer: `composer require jflepp/picomailformsplugin`.

### Small Example

[](#small-example)

*Configuration*

```
Mail:
    SenderName: test.ch
    Host: server.test.ch
    UserName: test@test.ch
    Password: test
    Port: 587
    OperatorMail: testuser@test.ch
```

*Form*

```
[form]
  [text mail]E-Mail[/text]
  [text]some other information[/text]
[/form]

```

*Operator Mail*

A user has successfully filled your form: test

 mailexample@customer.com first\_nameHans last\_nameZimmer some\_other\_informationThis is me### Full configuration

[](#full-configuration)

Configuring PicoMailFormsPlugin is straight forward.

```
Mail:
    SenderName: MyWebsite
    Host: smpt.myprovider.com
    UserName: web@myprovider.com
    Password: apassword
    Port: 587
    OperatorMail: iamtheoperator@myprovider.com

Forms:
    UseBootstrap: true
```

### Full form

[](#full-form)

```
[form]
    [subject]Registration for event XY[/subject]
    [success]You successfully registered for the event XY! You're going to receive more information asap[/success]
    [failed]Registration failed. The site administrator has already been informed.[/failed]
    [text mail required]Mail[/text]
    [text firstname]First name[/text]
    [text lastname]Last name[/text]
    [text]Address[/text]
    [text]Other informations[/text]
    [textarea required]Message[/textarea]
[/form]

```

- `[form]` The beginning / end of a form. All data inbetween will be either interpreted or lost
- `[success]` Defines the success message shown on the webpage and in the mail
- `[failed]` The fail message shown on the page when a mail failed
- `[text]` Will be transformed to a text input, the text inbetween will be used as label
- `[text required]` Adds required to the input
- `[text mail]` A usual text input which signalizes PicoMailForms that this is where the user mail is being specified. You can use any label you want. This is the only field required in a form.
- `[text firstname][text lastname]` The first name and last name of the user. It will be set as receivername of the usermail.
- `[textarea]` Defines textareas

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

17

Last Release

2772d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/231846518?v=4)[jflepp](/maintainers/jflepp)[@jflepp](https://github.com/jflepp)

---

Top Contributors

[![fl3pp](https://avatars.githubusercontent.com/u/20628550?v=4)](https://github.com/fl3pp "fl3pp (53 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/jflepp-picomailformsplugin/health.svg)

```
[![Health](https://phpackages.com/badges/jflepp-picomailformsplugin/health.svg)](https://phpackages.com/packages/jflepp-picomailformsplugin)
```

###  Alternatives

[simplesamlphp/simplesamlphp

A PHP implementation of a SAML 2.0 service provider and identity provider.

1.1k13.0M214](/packages/simplesamlphp-simplesamlphp)[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.6k38.2k](/packages/matomo-matomo)[getkirby/cms

The Kirby core

1.5k567.4k441](/packages/getkirby-cms)[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

103519.9k45](/packages/friendsoftypo3-content-blocks)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1175.2k](/packages/rcsofttech-audit-trail-bundle)[chameleon-system/chameleon-base

The Chameleon System core.

1027.9k4](/packages/chameleon-system-chameleon-base)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
