PHPackages                             alister/todotxt-parser - 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. alister/todotxt-parser

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

alister/todotxt-parser
======================

parser for the TodoTxt format

2.0.0(3w ago)2141MITPHPPHP ^8.4

Since Dec 14Pushed 4mo ago1 watchersCompare

[ Source](https://github.com/alister/todotxt-parser)[ Packagist](https://packagist.org/packages/alister/todotxt-parser)[ RSS](/packages/alister-todotxt-parser/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (7)Dependencies (36)Versions (10)Used By (0)

alister/todotxt-parser
======================

[](#alistertodotxt-parser)

[![Latest Version](https://camo.githubusercontent.com/2bcaf8de11e4cf5fdc936700a1210a1514a9eafd2e071f22268060347ec8c8f0/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f616c69737465722f746f646f7478742d7061727365722e7376673f7374796c653d666c61742d737175617265266c6162656c3d72656c65617365)](https://packagist.org/packages/alister/todotxt-parser)[![Software License](https://camo.githubusercontent.com/342e8847cff750548229c2fc7e5bff3bf0240220e5d21aaf79467415b0d54f0d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f616c69737465722f746f646f7478742d7061727365722e7376673f7374796c653d666c61742d737175617265)](https://github.com/alister/todotxt-parser/blob/master/LICENSE)[![PHP Version](https://camo.githubusercontent.com/9b734da224873cd1b2cb2c36607e2e90fc0b849f788c10f76790ec279a63f2cf/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f616c69737465722f746f646f7478742d7061727365722e7376673f7374796c653d666c61742d737175617265)](https://php.net)[![Build Status](https://github.com/alister/todotxt-parser/workflows/Unit%20Tests/badge.svg)](https://travis-ci.org/alister/todotxt-parser)

parser for the TodoTxt format

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

[](#installation)

Install this package as a dependency using [Composer](https://getcomposer.org).

```
composer require alister/todotxt-parser
```

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

[](#contributing)

Contributions are welcome! Before contributing to this project, familiarize yourself with [CONTRIBUTING.md](CONTRIBUTING.md).

To develop this project, you will need [PHP](https://www.php.net) 7.4 or greater, [Composer](https://getcomposer.org), [Node.js](https://nodejs.org/), and [Yarn](https://yarnpkg.com).

After cloning this repository locally, execute the following commands:

```
cd /path/to/repository
composer install
yarn install
```

Now, you are ready to develop!

### Tooling

[](#tooling)

This project uses [Husky](https://github.com/typicode/husky) and [lint-staged](https://github.com/okonet/lint-staged) to validate all staged changes prior to commit.

#### Composer Commands

[](#composer-commands)

To see all the commands available in the project `td` namespace for Composer, type:

```
composer list td
```

##### Composer Command Autocompletion

[](#composer-command-autocompletion)

If you'd like to have Composer command auto-completion, you may use [bamarni/symfony-console-autocomplete](https://github.com/bamarni/symfony-console-autocomplete). Install it globally with Composer:

```
composer global require bamarni/symfony-console-autocomplete
```

Then, in your shell configuration file — usually `~/.bash_profile` or `~/.zshrc`, but it could be different depending on your settings — ensure that your global Composer `bin` directory is in your `PATH`, and evaluate the `symfony-autocomplete` command. This will look like this:

```
export PATH="$(composer config home)/vendor/bin:$PATH"
eval "$(symfony-autocomplete)"
```

Now, you can use the `tab` key to auto-complete Composer commands:

```
composer td:[TAB][TAB]
```

#### Coding Standards

[](#coding-standards)

This project follows a superset of [PSR-12](https://www.php-fig.org/psr/psr-12/)coding standards, enforced by [PHP\_CodeSniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer). The project PHP\_CodeSniffer configuration may be found in `phpcs.xml.dist`.

lint-staged will run PHP\_CodeSniffer before committing. It will attempt to fix any errors it can, and it will reject the commit if there are any un-fixable issues. Many issues can be fixed automatically and will be done so pre-commit.

You may lint the entire codebase using PHP\_CodeSniffer with the following commands:

```
# Lint
composer td:lint

# Lint and autofix
composer td:lint:fix
```

#### Static Analysis

[](#static-analysis)

This project uses a combination of [PHPStan](https://github.com/phpstan/phpstan)and [Psalm](https://github.com/vimeo/psalm) to provide static analysis of PHP code. Configurations for these are in `phpstan.neon.dist` and `psalm.xml`, respectively.

lint-staged will run PHPStan and Psalm before committing. The pre-commit hook does not attempt to fix any static analysis errors. Instead, the commit will fail, and you must fix the errors manually.

You may run static analysis manually across the whole codebase with the following command:

```
# Static analysis
composer td:analyze
```

### Project Structure

[](#project-structure)

This project uses [pds/skeleton](https://github.com/php-pds/skeleton) as its base folder structure and layout.

NameDescription**bin/**Commands and scripts for this project**build/**Cache, logs, reports, etc. for project builds**docs/**Project-specific documentation**resources/**Additional resources for this project**src/**Project library and application source code**tests/**Tests for this projectCopyright and License
---------------------

[](#copyright-and-license)

The alister/todotxt-parser library is copyright © [Alister Bulman](https://abulman.co.uk/)and licensed for use under the terms of the MIT License (MIT). Please see [LICENSE](LICENSE) for more information.

###  Health Score

49

—

FairBetter than 94% of packages

Maintenance84

Actively maintained with recent releases

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity78

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

Total

8

Last Release

25d ago

Major Versions

1.5.0 → 2.0.02026-07-13

PHP version history (3 changes)v1.0.0PHP ^7.4 || ^8

v1.1.0PHP ^8.1

2.0.0PHP ^8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/6fcd33e037f41d017ef6dbc2c1df7f5110ace7e2ba70a8358aa0611ff87dc6bc?d=identicon)[alister](/maintainers/alister)

---

Top Contributors

[![alister](https://avatars.githubusercontent.com/u/173165?v=4)](https://github.com/alister "alister (25 commits)")

---

Tags

todotxtparsertodo.txt

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan, Rector

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/alister-todotxt-parser/health.svg)

```
[![Health](https://phpackages.com/badges/alister-todotxt-parser/health.svg)](https://phpackages.com/packages/alister-todotxt-parser)
```

###  Alternatives

[symfony/console

Eases the creation of beautiful and testable command line interfaces

9.8k1.2B14.8k](/packages/symfony-console)[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k18.3M414](/packages/easycorp-easyadmin-bundle)[api-platform/metadata

API Resource-oriented metadata attributes and factories

275.5M252](/packages/api-platform-metadata)[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6943.5M443](/packages/drupal-core-recommended)[flow-php/flow

PHP ETL - Extract Transform Load - Data processing framework

86337.5k](/packages/flow-php-flow)[flow-php/etl

PHP ETL - Extract Transform Load - Abstraction

378637.6k118](/packages/flow-php-etl)

PHPackages © 2026

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