PHPackages                             amethyst/core - 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. [Framework](/categories/framework)
4. /
5. amethyst/core

ActiveLibrary[Framework](/categories/framework)

amethyst/core
=============

v0.3.3(1y ago)15.4k12MITPHPPHP &gt;=8.1

Since Sep 27Pushed 1y ago1 watchersCompare

[ Source](https://github.com/amethyst-php/core)[ Packagist](https://packagist.org/packages/amethyst/core)[ RSS](/packages/amethyst-core/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (11)Versions (73)Used By (2)

Config
======

[](#config)

[![Action Status](https://github.com/amethyst-php/core/workflows/Test/badge.svg)](https://github.com/amethyst-php/core/actions)[![Amethyst](https://camo.githubusercontent.com/eb7b372d7bd2cd9b545ecbe3f7377d421eb2893ab261c6120e7a393b9a706bcd/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5061636b6167652d416d6574687973742d376535376332)](https://github.com/amethyst-php/amethyst)

This is the core of all Amethyst packages.

Requirements
============

[](#requirements)

- PHP from 8.1

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

[](#installation)

You can install it via [Composer](https://getcomposer.org/) by typing the following command:

```
composer require amethyst/core
```

The package will automatically register itself.

Mapping the hell out of it
--------------------------

[](#mapping-the-hell-out-of-it)

Amethyst takes a lot of advantages by mapping all models, relations and attributes; it does soo much that it's a requirement for every package:

- Each instance of Model must be converted in a readable string (e.g. classname, or morph name) and viceversa.
- Given an instance of Model it should be possible to retrieve all relations.
- Given an instance of Model it should be possibile to retrieve all attributes.

Note: It's important to notice that we are refering to an instance of Model instead of class of Model.

#### What are the benefits then?

[](#what-are-the-benefits-then)

Because having this kind of information will make a lot of things easy (for e.g. auto joins, creating views)

#### How it's done and how extend it

[](#how-its-done-and-how-extend-it)

All amethyst packages are automatically mapped, that's because the mapping use the configuration under `amethyst` to retrieve all models

This is done by using the package [eloquent-mapper](https://github.com/railken/eloquent-mapper).

How interact with the data
--------------------------

[](#how-interact-with-the-data)

There are two ways to interact with the data: Through code or with http calls

### Code

[](#code)

### Http calls

[](#http-calls)

Each data has the following operation: - 'Create a new record' - 'Retrieve a single record' - 'Update a single ecord' - 'Delete a single record' - 'Show multiple records' - 'Remove multiple records' - 'Update multiple records'

How customize the data
----------------------

[](#how-customize-the-data)

One of the key package used to handle data is [lem](https://github.com/railken/lem). This package provide a way to define a schema, validate, authorize, serialize and handle errors; all of this incapsulated by a class, called the `Manager`.

Testing
-------

[](#testing)

- Clone this repository
- Copy the default `phpunit.xml.dist` to `phpunit.xml`
- Change the environment variables as you see fit
- Launch `./vendor/bin/phpunit`

###  Health Score

39

—

LowBetter than 87% of packages

Maintenance31

Infrequent updates — may be unmaintained

Popularity22

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity75

Established project with proven stability

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

Recently: every ~320 days

Total

72

Last Release

723d ago

PHP version history (3 changes)v0.1.0PHP &gt;=7.1

v0.2.0PHP &gt;=7.2

v0.3.0PHP &gt;=8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/ea4a9e56b247008aea4d20bb8a555a9f0cb69d0ac69aa8417b29fc37efa2eb5c?d=identicon)[railken](/maintainers/railken)

---

Top Contributors

[![railken](https://avatars.githubusercontent.com/u/26530231?v=4)](https://github.com/railken "railken (156 commits)")

---

Tags

amethystamethyst-packagecommonlaravellaravel

###  Code Quality

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/amethyst-core/health.svg)

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

###  Alternatives

[bytefury/crater

Free &amp; Open Source Invoice App for Individuals &amp; Small Businesses. https://craterapp.com

8.3k4.1k](/packages/bytefury-crater)[lms-laravel/lms-laravel

The Laravel Framework.

4901.8k](/packages/lms-laravel-lms-laravel)

PHPackages © 2026

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