PHPackages                             radarlog/doop - 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. [DevOps &amp; Deployment](/categories/devops)
4. /
5. radarlog/doop

ActiveProject[DevOps &amp; Deployment](/categories/devops)

radarlog/doop
=============

Simple File Uploader / AWS S3 Uploader

13PHP

Since Jul 21Pushed 1y ago1 watchersCompare

[ Source](https://github.com/radarlog/doop)[ Packagist](https://packagist.org/packages/radarlog/doop)[ RSS](/packages/radarlog-doop/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

Doop
====

[](#doop)

[![Build Status](https://camo.githubusercontent.com/702b83fdb8f5ea0920e3ff799b18312fc14bc47f5e40e500317d65d1269dcee0/68747470733a2f2f7472617669732d63692e6f72672f72616461726c6f672f646f6f702e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/radarlog/doop)[![codecov](https://camo.githubusercontent.com/ad5bf99fead43841b9ef8d57b08785b43ae2dae00ce57db6325e6cb8bb1b060a/68747470733a2f2f636f6465636f762e696f2f67682f72616461726c6f672f646f6f702f6272616e63682f6d61737465722f67726170682f62616467652e7376673f746f6b656e3d54654d4b4f7179446f6c)](https://codecov.io/gh/radarlog/doop)

Doop is a PHP application implementing Hexagonal Architecture for uploading images to an S3-compatible object storage and using PostgreSQL for data deduplication. It strictly follows SOLID principles and is 100% covered by tests. Development environment is fully dockerized and automated with a makefile.

### Requirements

[](#requirements)

- PHP &gt;= 8.3
- PostgreSQL &gt;= 16.3
- S3-compatible storage (AWS, MinIO)
- Node.js &gt;= 22.2
- Yarn &gt;= 1.22
- Typescript &gt;= 5.4

### Directory Structure

[](#directory-structure)

```
bin/                 cli entry point
config/              configuration files
docker/              docker related files
public/              http document root
src/                 source files
  Application/       application layer (use cases)
  Domain/            domain layer (core logic)
  Frontend/          frontend application (css, html, typescript)
  Infrastructure/    infrastructure layer (db, cli, http)
tests/               unit and functional tests
  Application/       use cases unit tests
  Domain/            domain layer unit tests
  Fixtures/          image fixture files
  Infrastructure/    infrastructure functional tests

```

Running locally
---------------

[](#running-locally)

Make sure you have `docker compose` and `make` installed. Clone the latest version and run:

```
$ make run
```

then navigate to `http://localhost/` with your favorite browser.

Testing
-------

[](#testing)

Make sure you have `docker compose` and `make` installed. Perform all the necessary QA-checks like coding styles, static analysis and unit/functional tests:

```
$ make tests
```

License
-------

[](#license)

Doop is licensed under MIT License. Please see [LICENSE](LICENSE) for details.

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information.

###  Health Score

15

—

LowBetter than 3% of packages

Maintenance27

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity18

Early-stage or recently created project

 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/e314c831ff7e7c28bd60ba0b7057d6f8d4d21c949306022ad0a367d97efc1c62?d=identicon)[radarlog](/maintainers/radarlog)

---

Top Contributors

[![radarlog](https://avatars.githubusercontent.com/u/1484339?v=4)](https://github.com/radarlog "radarlog (705 commits)")

---

Tags

aws-s3cqrsddddockerhexagonal-architecturesolidsymfony5

### Embed Badge

![Health badge](/badges/radarlog-doop/health.svg)

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

###  Alternatives

[deployer/deployer

Deployment Tool

11.0k25.4M207](/packages/deployer-deployer)[appwrite/server-ce

End to end backend server for frontend and mobile apps.

55.3k84.2k](/packages/appwrite-server-ce)[pragmarx/health

Laravel Server &amp; App Health Monitor and Notifier

2.0k1.0M2](/packages/pragmarx-health)[felixfbecker/language-server-protocol

PHP classes for the Language Server Protocol

22476.7M6](/packages/felixfbecker-language-server-protocol)[heroku/heroku-buildpack-php

Toolkit for starting a PHP application locally, with or without foreman, using the same config for PHP and Apache2/Nginx as on Heroku

8161.3M10](/packages/heroku-heroku-buildpack-php)[tiamo/phpas2

PHPAS2 is a php-based implementation of the EDIINT AS2 standard

4674.7k](/packages/tiamo-phpas2)

PHPackages © 2026

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