Skip to content

jeremie5/dataphyre

Dataphyre Logo

Dataphyre

Dataphyre is the runtime engine behind Shopiro.ca.

It is a collection of modules created to make a very large PHP application observable, testable, diagnosable, and safe to evolve.

Dataphyre is not an MVC framework. It does not try to abstract PHP. It provides tools to understand and control what an application is doing at runtime.

License: MIT

PHP Version GitHub License Documentation GitHub issues Contributors GitHub stars


Why Dataphyre Exists

While building Shopiro, several problems appeared that traditional frameworks did not solve well:

  • Knowing exactly what happened during a request
  • Refactoring safely in a multi-million line codebase
  • Managing localization across hundreds of pages and languages
  • Making routing expressive without becoming fragile
  • Handling SQL, caching, and diagnostics in a predictable way

Dataphyre is the result of solving those problems directly.


Repository Structure

Dataphyre is designed to support shared runtime and app-specific overrides.

common_dataphyre/   → shared runtime modules
dataphyre/          → app-specific config and overrides

Modules are independent and optional. Documentation for each module lives inside its folder.


What Dataphyre Provides

Rather than a framework, Dataphyre provides runtime systems for:

  • Request tracing and diagnostics
  • Dynamic unit test generation
  • Localization learning and syncing
  • Parameter-driven routing
  • SQL abstraction with caching and failover support
  • Modular security components
  • Async task scheduling

Getting Started

Prerequisites

  • PHP ≥ 8.1
  • Composer

Installation

git clone https://github.com/jeremie5/dataphyre.git
cd dataphyre

Modules

Core & Execution

  • Core — foundational runtime hooks
  • Routing — parameter-aware routing system
  • Templating — layout inheritance, scoped styles, async rendering
  • Supercookie — JSON session and state handling

Performance & Async

  • Async — background tasks and scheduling
  • Cache — Memcached interface
  • Scheduling — dependency-aware cron
  • Perfstats — runtime performance tracking

Security

  • CASPOW — anti-spam proof-of-work
  • Firewall — rate limiting and flood protection
  • Sanitation — input filtering
  • Access — auth and permissions
  • Googleauthenticator — TOTP 2FA

Data & Search

  • SQL — DB abstraction with queueing and caching
  • Fulltext Engine — multi-backend search engine
  • Currency — currency handling and formatting

Developer Tools

  • Tracelog — full request execution tracing
  • Dpanel — dynamic unit testing and diagnostics

Contributing

Contributions are welcome. See the issues tab or open a new one.


Third-Party Libraries

Dataphyre includes Adminer (Apache 2.0) in the adminer directory.


License

Dataphyre is MIT-licensed. The Dataphyre trademark may not be used to endorse derived products.

Which is exactly the perception you need before they open any module file.

Sponsor this project

Contributors

Languages