PHPackages                             new-humans/markdown-article-library - 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. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. new-humans/markdown-article-library

ActiveLibrary[Parsing &amp; Serialization](/categories/parsing)

new-humans/markdown-article-library
===================================

Markdown file organizer for PHP7

v1.0.1(8y ago)016COMMYPHPPHP &gt;=7.0.0

Since Dec 19Pushed 8y agoCompare

[ Source](https://github.com/New-Humans/MarkdownArticleLibrary)[ Packagist](https://packagist.org/packages/new-humans/markdown-article-library)[ Docs](https://github.com/New-Humans/MarkdownArticleLibrary)[ RSS](/packages/new-humans-markdown-article-library/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (1)Versions (4)Used By (0)

new-humans/markdown-article-library
===================================

[](#new-humansmarkdown-article-library)

**new-humans/markdown-article-library** is a PHP-based file system wrapper for [**league/commonmark**](https://github.com/thephpleague/commonmark)'s Markdown parser. File system navigation emotionally inspired by [**new-humans/ubfs**](https://github.com/New-Humans/ubfs).

Goals
-----

[](#goals)

- Let a writer interact with a relatively organize-able file system of Markdown files, in PHP.
- Let the writer offer these files as an HTML render for web browsers.
- Let the writer offer these files as downloads.

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

[](#installation)

This project can be installed via [Composer](https://getcomposer.org/):

```
$ composer require new-humans/markdown-article-library
```

Basic Usage
-----------

[](#basic-usage)

The `ArticleLibrary` class provides a simple wrapper for loading a 1-level deep Markdown file system. A library directory is expected to exist in your project in the following format:

```
/library
    - /notes
        - on-the-nature-of-the-universe.md
        - the-purpose-of-the-state.md
    - /ideas
        - persona-purpose-and-human-purpose.md
        - why-we-do-the-things-we-do.md
    - /lists
        - four-steps-for-preventing-career-bureacurism
```

Each subdirectory of `/library` represents a writing subject. Each file in the subdirectory represents a piece of writing within that subject, formatted in Markdown.

**Note:** Any of these names can be replaced - they're all supplied to the object by the developer, based on the actual files in the solution. The example in this repository includes subjects `/notes` and `/whimsy`.

```
use NewHumans\MarkdownArticleLibrary\ArticleLibrary;

// Instantiate the ArticleLibrary
$articleLibrary = new ArticleLibrary(__DIR__.'/articles');

// Instatiate the subject 'notes'
$articleLibrary->newSubject("notes");

// Instantiate the article 'grocery.md' to key 'grocery' within subject 'notes'
$articleLibrary->newArticle("notes", "grocery.md", "grocery");

// Output the article contents to client (HMTL or download)
echo $articleLibrary->readArticle("notes", "grocery");
// or $articleLibrary->downloadArticle("notes", "grocery");
```

Documentation
-------------

[](#documentation)

Best place to look is inside! Just two classes in `/src`.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity60

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

Total

3

Last Release

3063d ago

### Community

Maintainers

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

---

Top Contributors

[![junedeadnameaccount](https://avatars.githubusercontent.com/u/14872608?v=4)](https://github.com/junedeadnameaccount "junedeadnameaccount (10 commits)")

---

Tags

markdownarticles

### Embed Badge

![Health badge](/badges/new-humans-markdown-article-library/health.svg)

```
[![Health](https://phpackages.com/badges/new-humans-markdown-article-library/health.svg)](https://phpackages.com/packages/new-humans-markdown-article-library)
```

###  Alternatives

[daux/daux.io

Documentation generator that uses a simple folder structure and Markdown files to create custom documentation on the fly

825191.0k1](/packages/daux-dauxio)[bookdown/bookdown

Provides DocBook-like rendering of Markdown files.

8257.6k16](/packages/bookdown-bookdown)[torchlight/torchlight-commonmark

A Commonmark extension for Torchlight, the syntax highlighting API.

29256.6k6](/packages/torchlight-torchlight-commonmark)[maglnet/magl-markdown

Provides a ZF2 View Helper to render markdown syntax. It uses third-party libraries for the rendering and you can switch between different renderers.

22178.2k4](/packages/maglnet-magl-markdown)[zoon/commonmark-ext-youtube-iframe

Extension for league/commonmark to replace youtube link with iframe

12275.9k1](/packages/zoon-commonmark-ext-youtube-iframe)[spatie/commonmark-wire-navigate

Add a wire:navigate attribute to links rendered in Markdown

1010.7k](/packages/spatie-commonmark-wire-navigate)

PHPackages © 2026

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