PHPackages                             amireshoon/luna - 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. amireshoon/luna

ActiveLibrary

amireshoon/luna
===============

Luna is a simple very light class to render HTML pages or views or any file in PHP

v1.1(4y ago)29MITPHPPHP &gt;=5.3.0

Since Jul 21Pushed 4y ago1 watchersCompare

[ Source](https://github.com/amireshoon/Luna)[ Packagist](https://packagist.org/packages/amireshoon/luna)[ Docs](https://github.com/amireshoon/Luna)[ RSS](/packages/amireshoon-luna/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (2)DependenciesVersions (2)Used By (0)

Luna
====

[](#luna)

Luna is a simple very light class to render HTML pages or views in PHP

Instalation
===========

[](#instalation)

You can install via composer or direclty copy the class or clone repo.

```
composer require amireshoon/luna
```

Content format
--------------

[](#content-format)

You can render HTML pages or view or any context of any kind of file. You just have to include your keyword like this:

```
This is my {message} for you dear {name}.

```

or in html format your content should be like this:

```
>

    {title}

    This is my {message} for you dear {name}

```

Usage
-----

[](#usage)

It's simple just give luna the file and variables, That's it.

You can get rendered output by two methods, You can directly print on-screen, or luna will be return rendered content to you.

`render()` function takes one argument that is output type. By setting it true you will get renderer out put and you can use it however you want to, And if you set that false rendered content will be direclty print on screen. Anyways it's optional default is true.

```
$luna->page( __DIR__ . '/mypage.html')
     ->with([
        'title'   => 'My very first page',
        'message' => 'Hello world',
        'name'    => 'Gophy',
     ])
     ->render(false);
```

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

1761d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/144224622?v=4)[amirhwsin](/maintainers/amirhwsin)[@amirhwsin](https://github.com/amirhwsin)

---

Top Contributors

[![amireshoon](https://avatars.githubusercontent.com/u/36164960?v=4)](https://github.com/amireshoon "amireshoon (16 commits)")

---

Tags

html-rendererphpLunahtml render

### Embed Badge

![Health badge](/badges/amireshoon-luna/health.svg)

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

PHPackages © 2026

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