PHPackages                             aklump/visual-sitemap - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. aklump/visual-sitemap

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

aklump/visual-sitemap
=====================

Using a very simple JSON file schema to define the structure of your website, this project uses that structure to generate a beautiful, visual HTML sitemap. The final document has all icons and CSS embedded in it and can be shared with other teammembers easily.

1.1.1(4y ago)7443BSD-3-ClausePHPPHP &gt;=7.3

Since Aug 9Pushed 4y ago2 watchersCompare

[ Source](https://github.com/aklump/visual_sitemap)[ Packagist](https://packagist.org/packages/aklump/visual-sitemap)[ Docs](https://github.com/aklump/visual_sitemap)[ RSS](/packages/aklump-visual-sitemap/feed)WikiDiscussions master Synced yesterday

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

Visual Sitemap
==============

[](#visual-sitemap)

[![Example Sitemap](images/screenshot.png)](images/screenshot.png)

Summary
-------

[](#summary)

Using a very simple JSON file schema to define the structure of your website, this project uses that structure to generate a beautiful, visual HTML sitemap. The final document has all icons and CSS embedded in it and can be shared with other team members easily. The primary fonts use Google Fonts and require internet access, however the fallback fonts work just fine offline.

Take a look at *example.json* to see what a definition file looks like.

Open *example.html* in a browser to see the example visual sitemap.

**Visit [https://aklump.github.io/visual\_sitemap](https://aklump.github.io/visual_sitemap) for full documentation.**

Quick Start
-----------

[](#quick-start)

- Once you've installed *vismap*, create a new data file thus `vismap {FILENAME}.json -c`
- Replace the contents of that file with real content.
- In Terminal type `vismap {FILENAME}.json` to compile the sitemap.
- Open *{FILENAME}.html* in a browser.

Requirements
------------

[](#requirements)

1. You will need [Composer](https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx) for installing.
2. You will need a text editor to edit JSON files.
3. You will need a command line terminal to generate the map.

Contributing
------------

[](#contributing)

If you find this project useful... please consider [making a donation](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=4E5KZHDQCEUV8&item_name=Gratitude%20for%20aklump%2Fvisual_sitemap).

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

[](#installation)

### Install Globally Using Composer

[](#install-globally-using-composer)

To be able to use the commands from any directory in your CLI you may want to install this globally.

```
composer global require aklump/visual-sitemap

```

Make sure you have the composer bin dir in your `PATH`. The default value is *~/.composer/vendor/bin*, but you can check the value that you need to use by running `composer global config bin-dir --absolute`.

To check this you must open *~/.bash\_profile* (or *~/.bashrc*); you're looking for a line that looks like the following, if you can't find, you'll need to add it.

```
export PATH=~/.composer/vendor/bin:$PATH

```

### Install Per Project Using Composer

[](#install-per-project-using-composer)

```
cd /your/project/folder
composer require aklump/visual-sitemap

```

### Testing installation

[](#testing-installation)

1. Test your installation by typing `vismap` in your terminal, you should see:

    ```
     Argument 1 must point to a configuration json file.

    ```

Usage
-----

[](#usage)

1. Create the configuration JSON file following the schema. Use *example.json* and *quick\_start.json* as guides. If you wish to use the CLI to create the file (which copies and renames *quick\_start.json*) do the following:

    ```
     cd /the/dir/to/contain/the/config
     vismap FILENAME.json -c

    ```
2. You can also refer to *schema.json*, which uses [JSON Schema](https://spacetelescope.github.io/understanding-json-schema/index.html) to define the format of the configuration file.
3. Generate an HTML version once by running the following command: `vismap sitemap.json`. *sitemap.html* will be created. If *sitemap.html* already exists, you will need to use the `-f` flag to overwrite it, e.g. `vismap sitemap.json -f`.
4. A file watch command is availabe. As you make changes to the JSON file, the sitemap will automatically be re-generated. Use `vismapwatch sitemap.json` for this. Again, use the `-f` flag if the HTML file already exists.
5. Use the `--out={filepath}` to control the output location **relative to the source file**. You may also use an absolute path beginning with a `/`.

### As JSON

[](#as-json)

You can export your sitemap as JSON using `--format=json`. Note: the extension used will be `.compiled.json`

```
vismap example.json -f --format=json

```

### As Text List

[](#as-text-list)

You can export a list of sections and titles using `--format=list`

### Best Practices

[](#best-practices)

1. Do not change the order of items in the JSON file, unless you intend to change the section numbers associated with the items. That is to say, always append new items to the end of a section array. Failure to follow this point will result in your section numbers being reassigned to different sections.

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity65

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

Recently: every ~267 days

Total

15

Last Release

1652d ago

PHP version history (2 changes)1.0PHP &gt;=5.6

1.1.0PHP &gt;=7.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/79476f3b82f9c766433c7eb401cbcfc636cd5d5ccf2b2e6b50ea81d1de6c2730?d=identicon)[aklump](/maintainers/aklump)

---

Top Contributors

[![aklump](https://avatars.githubusercontent.com/u/425737?v=4)](https://github.com/aklump "aklump (114 commits)")

---

Tags

websitedeveloperSitemapvisual sitemap

### Embed Badge

![Health badge](/badges/aklump-visual-sitemap/health.svg)

```
[![Health](https://phpackages.com/badges/aklump-visual-sitemap/health.svg)](https://phpackages.com/packages/aklump-visual-sitemap)
```

###  Alternatives

[paycore/openfintech-data

Openfintech data

22010.0k](/packages/paycore-openfintech-data)

PHPackages © 2026

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