voral/joke 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

voral/joke

最新稳定版本:1.3.1

Composer 安装命令:

composer require voral/joke

包简介

A minimal PHP microframework with manual routing and dependency injection container.

README 文档

README

EN

Scrutinizer Code Quality Code Coverage PHP Tests

Joke — это учебный микрофреймворк с ручной маршрутизацией и встроенным DI-контейнером. Он разрабатывается в рамках образовательного челленджа и не претендует на конкуренцию с промышленными решениями, такими как Laravel или Symfony.

Несмотря на скромный функционал, реализуемые компоненты стремятся быть надёжными, тестируемыми и пригодными для использования в реальных проектах — в том числе в обучающих или прототипных задачах.

По условиям челенджа: не использовать существующие решения (кромe composer, PHPUnit, voral/version-increment)

Требования

  • PHP 8.4+
  • Composer

Реализованная функциональность

  • Ручная маршрутизация HTTP-запросов
  • DI-контейнер с поддержкой автовайринга параметров
  • Система middleware (блокирующие и неблокирующие)
  • Управление сессиями (включая поддержку «неблокирующего» режима — данные сессии считываются в начале обработки запроса, после чего сессия немедленно закрывается, позволяя другим запросам от того же пользователя работать параллельно без ожидания завершения текущего.)
  • Обработка ошибок и исключений

Как начать

Самый простой способ начать — использовать официальный скелетон:

composer create-project voral/joke-minimal my-app
cd my-app
composer run dev

Приложение будет доступно по адресу: http://localhost:8000

Документация

Документация по фреймворку размещена здесь

Основные этапы челенджа

  • Создание фреймворка
    • Реализация маршрутизации
    • Реализация сервисный контейнер
    • Консольная система команд
    • Авторизация
    • Валидация данных
    • Обработка ошибок
    • Логирование
    • Создание построителя SQL запросов
    • Миграции
    • Настраиваемое окружение через .env файл
  • Создание шаблонизатора
    • Создание базового шаблонизатора HTML
    • Рендер Markdown файлов для быстрого создания документационных сайтов из .md файлов.
    • Рендер Swagger yaml файлов для автоматического отображения OpenAPI-спецификаций без внешних UI (например, без Swagger UI)
  • Создание приложения форума
  • Создание скелетонов
    • REST API приложения
    • Приложения веб представления Markdown файлов

Joke — A Micro Framework for PHP

Joke is an educational microframework featuring manual routing and a built-in DI container. It is developed as part of a learning challenge and is not intended to compete with production-grade frameworks like Laravel or Symfony.

Despite its limited scope, the implemented components aim to be reliable, testable, and suitable for real-world use—even in educational or prototyping scenarios.

As per the challenge rules, no existing solutions may be used except for Composer, PHPUnit, and voral/version-increment.

Requirements

  • PHP 8.4+
  • Composer

Implemented Features

  • Manual HTTP request routing
  • DI container with automatic parameter wiring
  • Middleware system (blocking and non-blocking)
  • Session management, including non-blocking mode — session data is read at the beginning of request processing and the session is immediately closed, allowing concurrent requests from the same user to proceed without waiting for the current request to finish
  • Error and exception handling

Getting Started

The easiest way to get started is to use the official skeleton:

composer create-project voral/joke-minimal my-app
cd my-app
composer run dev

Your application will be available at: http://localhost:8000

Challenge Roadmap

  • Framework Core

    • Implement routing
    • Implement service container
    • Console command system
    • Authentication
    • Data validation
    • Error handling
    • Logging
    • SQL query builder
    • Database migrations
    • Environment configuration via .env file
  • Template Engine

    • Basic HTML template engine
    • Render Markdown files for quickly generating documentation sites from .md files
    • Render Swagger YAML files to display OpenAPI specifications without external UIs (e.g., without Swagger UI)
  • Build a Forum Application

  • Create Project Skeletons

    • For REST API applications
    • For documentation sites based on Markdown files

统计信息

  • 总下载量: 13
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-20

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固