PHPackages                             krist4lle/lviv-it-test - 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. krist4lle/lviv-it-test

ActiveLibrary

krist4lle/lviv-it-test
======================

A sample package for Lviv IT.

1.0.0(2y ago)04MITPHPPHP &gt;=8.1

Since Jun 13Pushed 2y ago1 watchersCompare

[ Source](https://github.com/krist4lle/lviv-it-test)[ Packagist](https://packagist.org/packages/krist4lle/lviv-it-test)[ RSS](/packages/krist4lle-lviv-it-test/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (2)Versions (3)Used By (0)

Introduction
------------

[](#introduction)

Test task for Lviv IT! Laravel package. It is Service which can get all records for the specified domain name.

What I've done
--------------

[](#what-ive-done)

I have created a small Laravel package. I have configured composer.json file. I src folder you can find Service Provider, it binds my DNSServiceContract. DNSService can throw the Exception if function fails, if OK it returns array. Each record maps to same structure by Strategy. Each record type has its own Strategy for mapping. I have made few unit tests. I have checked data types and array keys after mapping.

Local use
---------

[](#local-use)

To check it locally you need to have php8.1 or higher, composer.

RUN: composer install

RUN: ./vendor/bin/phpunit tests/DNSServiceTest.php

Installation
------------

[](#installation)

composer require krist4lle/lviv-it-test

Service will be registered in your app. Now you can inject it to any class by dependency injection.

Usage
-----

[](#usage)

```
use Krist4lle\DNSServiceContract;

class YourClass
{

    public function __construct(
        private readonly DNSServiceContract $DNSService
    ) {
    }

    public function useService() {
        $records = $this->DNSService->getDNSRecords('google.com');
    }
}
```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

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 ~0 days

Total

2

Last Release

1064d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6490533397774f0683ad4e4e955edbd874ac9d93a9eff5e2dc1a615fef269b35?d=identicon)[krist4lle](/maintainers/krist4lle)

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/krist4lle-lviv-it-test/health.svg)

```
[![Health](https://phpackages.com/badges/krist4lle-lviv-it-test/health.svg)](https://phpackages.com/packages/krist4lle-lviv-it-test)
```

###  Alternatives

[fumeapp/modeltyper

Generate TypeScript interfaces from Laravel Models

196277.9k](/packages/fumeapp-modeltyper)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

255.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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