PHPackages                             camelot/smtp-dev-server - 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. [Testing &amp; Quality](/categories/testing)
4. /
5. camelot/smtp-dev-server

ActiveLibrary[Testing &amp; Quality](/categories/testing)

camelot/smtp-dev-server
=======================

Development SMTP fake server

0.0.4(3y ago)39MITPHPPHP &gt;=8.1

Since Sep 11Pushed 3y ago1 watchersCompare

[ Source](https://github.com/CamelotProject/smtp-dev-server)[ Packagist](https://packagist.org/packages/camelot/smtp-dev-server)[ RSS](/packages/camelot-smtp-dev-server/feed)WikiDiscussions master Synced today

READMEChangelog (4)Dependencies (18)Versions (5)Used By (0)

SMTP Development Server
=======================

[](#smtp-development-server)

**FOR USE IN DEVELOPMENT ENVIRONMENTS ONLY**

A simple and very fake SMTP server for development/testing purposes. Because, why not.

**Features**

- SMTP server that can accept &amp; store valid RFC822/RFC2822 email
- HTTP server/site as a client interface to the messages received

**WARNING: Do not expose running server ports to open networks and do not run as `root` or an admin user! There are ZERO security features built into these servers.**

Installation
------------

[](#installation)

Globally:

```
$ composer global require camelot/smtp-dev-server
```

As a development dependency for your project:

```
$ composer require --dev camelot/smtp-dev-server
```

Configuration
-------------

[](#configuration)

Configuration is handled via environment variables.

```
SMTP_LOG_LEVEL=debug
SMTP_LOG_FILE="/path/to/smtp.log"
SMTP_SPOOL_DIR="/path/to/spool"
HTTP_LOG_LEVEL=debug
HTTP_LOG_FILE="/path/to/http.log"
```

See the `.env` file in this directory for an example if you're cloning this repository, you can create a `.env.local` file to override any of the values in the `.env` file.

Use
---

[](#use)

Both servers have two output targets, console and PSR logger.

Console output levels are managed by passing `-v`, `-vv`, or `-vvv` as options on the command line.

Logger output is managed via environment variables that are used internally to configure the loggers.

For example:

```
$ SMTP_LOG_LEVEL=debug vendor/bin/smtp-dev-server -vvv

```

### Server

[](#server)

[![image](https://user-images.githubusercontent.com/1427081/194073098-e655ea46-bda4-4c63-8d7e-c193f4636a82.png)](https://user-images.githubusercontent.com/1427081/194073098-e655ea46-bda4-4c63-8d7e-c193f4636a82.png)

To start the server, simply run:

```
$ vendor/bin/smtp-dev-server
```

This will output internal information to STDOUT. You can specify verbosity with the command options below.

Server can be stopped by sending a signal, e.g. `CTRL+C`.

#### Arguments

[](#arguments)

```
  backing          Storage type (null, memory, mailbox) [default: "mailbox"]

```

#### Options

[](#options)

```
  -i, --ip=IP            TCP/IP address [default: "127.0.0.1"]
  -p, --port=PORT        Port to listen on [default: 2525]
  -r, --retries=RETRIES  Number of times to retry connecting to the server socket address if it is currently in use [default: 10]
  -h, --help             Show help
  -v|vv|vvv, --verbose   Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

```

### Client

[](#client)

[![image](https://user-images.githubusercontent.com/1427081/194073411-604cb0b9-0901-48ee-ae0a-86459394ae3c.png)](https://user-images.githubusercontent.com/1427081/194073411-604cb0b9-0901-48ee-ae0a-86459394ae3c.png)[![image](https://user-images.githubusercontent.com/1427081/194208872-28f7b627-846a-43ce-81d3-52c6c0a3b90d.png)](https://user-images.githubusercontent.com/1427081/194208872-28f7b627-846a-43ce-81d3-52c6c0a3b90d.png)

To start the server, simply run:

```
$ vendor/bin/smtp-dev-client
```

This will output internal information to STDOUT. You can specify verbosity with the command options below.

Server can be stopped by sending a signal, e.g. `CTRL+C`.

#### Arguments

[](#arguments-1)

```
  backing          Storage type (null, memory) [default: "null"]

```

#### Options

[](#options-1)

```
  -i, --ip=IP            TCP/IP address [default: "127.0.0.1"]
  -p, --port=PORT        Port to listen on [default: 2580]
  -r, --retries=RETRIES  Number of times to retry connecting to the server socket address if it is currently in use [default: 10]
  -h, --help             Show help
  -v|vv|vvv, --verbose   Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

```

Open (default) `http://127.0.0.1:2580` to view &amp; manage messages received by the SMTP server component.

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 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 ~4 days

Total

4

Last Release

1379d ago

### Community

Maintainers

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

---

Top Contributors

[![GwendolenLynch](https://avatars.githubusercontent.com/u/1427081?v=4)](https://github.com/GwendolenLynch "GwendolenLynch (16 commits)")

---

Tags

developer-toolsmimerfc2822rfc822smtp-servertestingtestingmimeserversmtpRFC822RFC2822mild-insanity

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/camelot-smtp-dev-server/health.svg)

```
[![Health](https://phpackages.com/badges/camelot-smtp-dev-server/health.svg)](https://phpackages.com/packages/camelot-smtp-dev-server)
```

###  Alternatives

[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M574](/packages/shopware-core)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[oro/platform

Business Application Platform (BAP)

645143.5k115](/packages/oro-platform)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9421.6k61](/packages/open-dxp-opendxp)[drupal/core

Drupal is an open source content management platform powering millions of websites and applications.

21866.0M1.7k](/packages/drupal-core)[flow-php/flow

PHP ETL - Extract Transform Load - Data processing framework

85036.3k](/packages/flow-php-flow)

PHPackages © 2026

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