PHPackages                             iamsabbiralam/ghost-notes - 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. iamsabbiralam/ghost-notes

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

iamsabbiralam/ghost-notes
=========================

A Laravel package to generate a dev-diary from @ghost tags in your code.

v1.0.1(5mo ago)24MITBladePHP ^8.0

Since Dec 16Pushed 5mo agoCompare

[ Source](https://github.com/iamsabbiralam/ghost-notes)[ Packagist](https://packagist.org/packages/iamsabbiralam/ghost-notes)[ RSS](/packages/iamsabbiralam-ghost-notes/feed)WikiDiscussions main Synced 1mo ago

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

👻 GhostNotes - Transform Code Comments into a Dev Diary
=======================================================

[](#-ghostnotes---transform-code-comments-into-a-dev-diary)

[![Latest Version on Packagist](https://camo.githubusercontent.com/f7b387588c4f0faea44c4bda9e4cd7b733748886c95994cf7814caee4b1b04e1/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f69616d736162626972616c616d2f67686f73742d6e6f7465732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/iamsabbiralam/ghost-notes)[![Total Downloads](https://camo.githubusercontent.com/1afd94cd58f9f7f57e14f9c5cdfe61c6e03fdea02d998240ad1e35639cf35c0f/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f69616d736162626972616c616d2f67686f73742d6e6f7465732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/iamsabbiralam/ghost-notes)[![License](https://camo.githubusercontent.com/86a2a9904df2442757c7b61c88d9531c8a2d080d628b264b60584a68faf0b983/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f69616d736162626972616c616d2f67686f73742d6e6f7465732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/iamsabbiralam/ghost-notes)

[![Ghost Notes Preview](src/images/ghost-notes.png)](src/images/ghost-notes.png)

**GhostNotes** is a powerful Laravel utility that scans your codebase for hidden tags like `@ghost`, `@todo`, or `@fixme` and compiles them into a beautiful, organized developer diary, multi-format reports, and a modern Web Dashboard.

[![Dashboard Preview](src/images/dashboard.png)](src/images/dashboard.png)

---

✨ Features
----------

[](#-features)

- 🔍 **Advanced Tag Scanning:** Automatically finds `@ghost`, `@todo`, `@fixme`, and `@note` with optional **Priority Levels** (high|medium|low).
- 🎨 **Modern Dashboard:** A sleek, Tailwind-powered dashboard with **Search**, **Priority Badges**, and **Source Code Snippets**.
- 📊 **Multi-Format Export:** Export your dev-diary into **Markdown**, **JSON**, or **CSV** (Excel compatible).
- 🏆 **Resolved Graveyard:** Track resolved notes in the "Resolved Ghosts" history after clearing them from your code.
- 🚀 **VS Code &amp; GitHub Integration:** Open files directly in VS Code from the dashboard or view them on GitHub with line-specific links.
- 👤 **Git Context:** Automatically identifies the author using `git blame`.
- 🧹 **Code Cleanup:** Use the `--clear` flag to safely remove tags from source code once they are logged.
- 🔒 **Safe for Devs:** Dashboard and routes are automatically disabled in production.

---

🚀 Installation
--------------

[](#-installation)

Install the package via composer:

```
composer require iamsabbiralam/ghost-notes
```

Set up everything with a single command:

```
php artisan ghost:install
```

This command publishes the config file and prepares the internal storage.

---

🛠 Usage
-------

[](#-usage)

1. Adding Tags in Code You can now add priority levels to your tags:

```
// @ghost:high: Fix this critical security vulnerability
// @todo:medium: Implement the user profile update logic
// @fixme:low: Minor alignment issue on the footer
// @note: This is a general architectural note
```

2. Generating the Diary Run the command to scan files and update the dashboard cache:

```
php artisan ghost:write
```

3. Exporting Reports Generate reports in your preferred format:

```
php artisan ghost:write --format=markdown
php artisan ghost:write --format=json
php artisan ghost:write --format=csv
```

4. Clearing and Archiving Log the notes to the Resolved History and remove them from your code:

```
php artisan ghost:write --clear
```

---

🖥 Web Dashboard
---------------

[](#-web-dashboard)

Visit the interactive dashboard at:

In the Dashboard you can:

- 🔍 Search through notes by author, message, or file name.
- 🖱️ One-click Open files directly in VS Code.
- 📦 Download reports as CSV, JSON, or Markdown.
- 🖨️ Print a clean PDF report of your technical debt.
- 📜 View History of all resolved/cleared notes.

---

⚙️ Configuration
----------------

[](#️-configuration)

The configuration file `(config/ghost-notes.php)` allows you to customize:

```
return [
    'tags' => ['@ghost', '@todo', '@fixme', '@note'],
    'filename' => 'GHOST_LOG.md',
    'ignore_folders' => ['vendor', 'node_modules', 'storage', 'tests'],
    'git_context' => true,
    'repo_url' => env('GHOST_NOTES_REPO_URL', ''), // Auto-detected if empty
    'default_branch' => 'main',
];
```

---

🤝 Contributing
--------------

[](#-contributing)

Contributions are welcome! If you have any ideas, feel free to open an issue or submit a pull request.

---

📄 License
---------

[](#-license)

The MIT License (MIT). Please see License File for more information.

Developed by [Sabbir Alam](https://github.com/iamsabbiralam)

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance73

Regular maintenance activity

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity41

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

Every ~2 days

Total

2

Last Release

151d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/547cab839b755d7d1ba942c11b5aa60d8bb042399d981893651ec70d30701802?d=identicon)[iamsabbiralam](/maintainers/iamsabbiralam)

---

Top Contributors

[![iamsabbiralam](https://avatars.githubusercontent.com/u/87582364?v=4)](https://github.com/iamsabbiralam "iamsabbiralam (27 commits)")

---

Tags

code-analysisdev-diarydeveloper-experiencedeveloper-toolsghost-noteslaravellaravel-packagepackagephpproductivity-tooltechnical-debt

### Embed Badge

![Health badge](/badges/iamsabbiralam-ghost-notes/health.svg)

```
[![Health](https://phpackages.com/badges/iamsabbiralam-ghost-notes/health.svg)](https://phpackages.com/packages/iamsabbiralam-ghost-notes)
```

###  Alternatives

[barryvdh/laravel-ide-helper

Laravel IDE Helper, generates correct PHPDocs for all Facade classes, to improve auto-completion.

14.9k123.0M687](/packages/barryvdh-laravel-ide-helper)[orchestra/canvas

Code Generators for Laravel Applications and Packages

21017.2M158](/packages/orchestra-canvas)[illuminate/pipeline

The Illuminate Pipeline package.

9446.6M213](/packages/illuminate-pipeline)[illuminate/pagination

The Illuminate Pagination package.

10532.5M862](/packages/illuminate-pagination)[spatie/laravel-pjax

A pjax middleware for Laravel 5

513371.8k11](/packages/spatie-laravel-pjax)[spatie/laravel-mix-preload

Add preload and prefetch links based your Mix manifest

169176.0k2](/packages/spatie-laravel-mix-preload)

PHPackages © 2026

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