PHPackages                             tokimikichika/find - 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. tokimikichika/find

ActiveLibrary

tokimikichika/find
==================

Text analysis library for counting words, characters, sentences and paragraph

v0.7.7(6mo ago)04MITPHPPHP &gt;=8.0CI passing

Since Sep 24Pushed 6mo agoCompare

[ Source](https://github.com/Tokimikichika/textquant)[ Packagist](https://packagist.org/packages/tokimikichika/find)[ RSS](/packages/tokimikichika-find/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (5)Versions (15)Used By (0)

Tokimikichika/find — текстовый анализатор (PHP + Slim, Vue, Docker)

Мини‑библиотека и сервис для анализа текста: считает слова, символы, предложения и параграфы, средние длины и топ слов. Бэкенд на PHP (Slim 4, PHP‑FPM), фронтенд на Vue (Vite), контейнеризация через Docker Compose.

Структура

```
backend/            # PHP (Slim) приложение и библиотека
  public/index.php  # Входная точка Slim (PSR-7)
  src/              # Классы анализа текста и контроллеры
  composer.json     # Зависимости PHP
frontend/           # Vue (Vite) фронтенд
  src/              # Компоненты
  vite.config.js    # Прокси /api в dev-режиме
docker/
  nginx.conf        # Конфиг Nginx для prod
docker-compose.yml  #

```

Быстрый старт (Docker)

1. Собрать и запустить:

```
docker compose up -d --build
```

2. Открыть фронтенд: `http://localhost:6123`

Фронт раздаётся Nginx, запросы `/api` проксируются в PHP‑FPM на `backend/public/index.php`.

Локальная разработка (без Docker)

- Backend

    - Установка зависимостей: ```
        cd backend
        composer install
        ```
    - Запуск Slim через встроенный сервер PHP (документ‑руут `public`): ```
        php -S localhost:8080 -t public
        ```
    - Проверка API: ```
        curl -s -X POST http://localhost:8080/api/v1/analyze/text \
          -H "Content-Type: application/json" \
          -d '{"text":"Привет мир! Hello world."}'
        ```
- Frontend

    - Dev‑сервер Vite (прокси на `/api` → `http://localhost:8080`): ```
        cd frontend
        npm ci
        npm run dev
        ```
    - Открыть URL Vite (`http://localhost:6173`).

Тестирование (PHPUnit)

```
cd backend
composer test-unit
# отчёт покрытия
composer test-coverage
```

API

- POST `/api/v1/analyze/text`
    - Тело: `{ "text": "строка" }`
    - Успех (пример): ```
        {
          "source": "text",
          "words": 6,
          "characters": 28,
          "sentences": 2,
          "paragraphs": 1,
          "avg_word_length": 4.2,
          "avg_sentence_length": 3.0,
          "top_words": [{ "word": "hello", "count": 1 }]
        }
        ```
    - Ошибка 400: `{ "error": "Text is required" }`

Продакшен‑сборка фронтенда

Сборка выполняется в Dockerfile фронта (`npm run build` → `dist/`), далее Nginx раздаёт статику и проксирует `/api` в php‑fpm.

Лицензия: MIT

###  Health Score

30

—

LowBetter than 65% of packages

Maintenance66

Regular maintenance activity

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity38

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.

###  Release Activity

Cadence

Every ~1 days

Total

14

Last Release

203d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2a0b7a5da73e317b8da21cecb49a7b140ae334b5ebd94fda0e5bf054ccf5c098?d=identicon)[Tokimikichika](/maintainers/Tokimikichika)

---

Top Contributors

[![Tokimikichika](https://avatars.githubusercontent.com/u/86572389?v=4)](https://github.com/Tokimikichika "Tokimikichika (153 commits)")

---

Tags

wordstextanalysisnlpstatistics

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/tokimikichika-find/health.svg)

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

###  Alternatives

[phlak/directory-lister

PHP directory lister

2.5k1.4k](/packages/phlak-directory-lister)[vanderlee/syllable

Text syllable splitting and hyphenation using Frank M. Liang's TeX algorithm.

124432.6k8](/packages/vanderlee-syllable)[aspose-cloud/aspose-words-cloud

Open, generate, edit, split, merge, compare and convert Word documents. Integrate Cloud API into your solutions to manipulate documents. Convert PDF to Word (DOC, DOCX, ODT, RTF and HTML) and in the opposite direction.

32157.4k](/packages/aspose-cloud-aspose-words-cloud)[docler-labs/codeception-slim-module

Codeception Module for Slim framework.

13178.0k1](/packages/docler-labs-codeception-slim-module)[vesp/core

Vesp core library to make backend simple

243.8k5](/packages/vesp-core)[magirc/magirc

MagIRC - Let the magirc begin!

381.1k](/packages/magirc-magirc)

PHPackages © 2026

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