Temma
Temma Temma Temma

The simple and efficient PHP framework. Easier than the big frameworks. More useful than the micro-frameworks

Temma is a simple and efficient PHP framework designed to provide the functionality of a modern framework while remaining easier to learn than "big" frameworks and more useful than micro-frameworks. It is built on the MVC (Model-View-Controller) pattern and is compatible with PHP 8.1+.

Here is a summary of its principal functionalities:

Unified Data and Database Management

  • Diverse Data Sources: Temma provides unified access to various data sources, including SQL databases, NoSQL (Redis, Memcache), files, and cloud services like S3, SQS, and Beanstalkd,.

  • DAO Pattern: Access to databases is handled using the Data Access Object (DAO) pattern, which can be used with or without caching for better performance.

  • API Integration: It offers unified management for external APIs, with specific tutorials for integrating services like OpenWeather and DeepL,.

Flexible Architecture and Execution

  • Dependency Injection: This component serves as the "backbone" of application development, ensuring a modular and testable structure.

  • Plugin System: Developers can modify the application's behavior using pre- or post-controller plugins to manage the execution flow.

  • PHP Attributes: It utilizes modern PHP attributes to protect or modify access to specific controllers and actions.

  • Simplified Routing: The framework features an intentionally simple routing system that remains extensible for complex needs.

Views and Export Capabilities

  • Smarty Templating: By default, Temma uses Smarty templates to generate pages,.

  • Multi-Format Exports: Beyond standard HTML, it supports seamless exports to JSON, CSV, RSS, iCal, and INI formats,.

  • Real-Time Communication: It includes native support for Server-Sent Events (SSE) to push real-time updates from the server to the client.

Developer Productivity Tools

  • Command-Line Interface (CLI): Users can easily run command-line scripts initialized by the framework, such as sending SMS or Slack notifications,.

  • Logging and Debugging: It features an expressive logging system designed to simplify the debugging process.

  • Automated Testing: The framework provides tools to write and run automated test scripts.

  • Session Management: It includes built-in components to manage user sessions and stateful operations.