npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ted-editor

v0.3.12

Published

Lightweight ergonomic interactive command line task editor

Downloads

45

Readme

ted

Ted is the standard task editor :P

Lightweight ergonomic interactive command line task list editor

ed for tasks

For the people who appreciate the simplicity of traditional TODO files but who also has a lot of tasks and wish they were easily taggable sortable filterable without requiring a bloated issue tracker.

Read on to see what's different from existing command line task managers.

features & design choices

ted ..

  • is an editor that works on a given directory. It has no implicit project database.

  • supports tag based categorization & filtering and priority based ordering.

  • has no configuration, no command line flags and has only around 10 commands. You can get comfortable with the whole feature set in 15 minutes.

  • stores tasks as regular files in the task directory being edited. The directory and file structures are very simple and VCS-friendly. Diffs will be straightforward if you track your changes.

  • is interactive. Commands are sent from inside the ted shell. You don't have to repeat the ted command every time. There is no non-interactive mode as ted is intended to be used directly by its end power-users all the time and not by scripts.

  • is intentionally stateful. It remembers the filter, order and limit you set so you don't type them again and again.

  • is all about intuitive single letter commands: c(reate), e(dit), ... You need A LOT less keystrokes to accomplish things compared to many other command line task managers.

  • is not tightly coupled to any version control or synchronization system.

  • is similar to the venerable UNIX editor ed (which is THE standard editor) in some ways.

non-features

Things that are intentionally not supported and suggested alternatives:

  • Attribution & synchronization: Use a VCS

  • Assignments: Use tags like @john, @jack

  • Statuses: Use tags like !doing, !rejected, !blocked

  • Attachments: Link to files on the cloud

  • Discussions, mentions, merge requests: Use email lists, email, patches over email. I mean, what was wrong with email?

  • Reporting and fancy charts: Use your UNIX-fu to parse the indexes and pipe them to GGPlot or something. Or maybe switch to Taskwarrior if you really need this.

known issues

  • Written in Javascript. An implementation in a compiled language would probably be better. Any volunteers for porting?

  • Not written with performance in mind, for now. Especially the indexing mechanism is very inefficient. That'll be addressed sooner or later.

usage

npm install -g ted-editor
ted myissues

commands

Display:

<empty>               List tasks that match the current filter
<id>                  Show task #<id>
t                     Show tag list
f                     Show current filter
o                     Show current order
l                     Show current limit

Filter order limit:

f & <t1> [<t2> ..]  Set filter for all matching tags
f | <t1> [<t2> ..]  Set filter for any matching tag
f / <regex>         Set filter for given regex
F                   Reset filter

o <col1> [<col2> ..]  Set column(s) to order the list by. Prefix column names with "-" for descending order
O                     Reset order

l <lim>               Set limit
L                     Reset limit

Manipulate task:

c                     Create new task with system editor
c <title>             Create new task immediately with the given title

e <id>                Edit task with system editor
t <id> <t1> [<t2> ..] Add/remove tags to/from task. Prefix a tag with "-" to remove it.
p <id> <pri>          Set task priority

a <id>                Archive task
A <id>                Unarchive task

d <id>                Delete task completely

Other:

a                     Switch to the archives
A                     Switch back from the archives
h                     Help
q                     Quit
reindex               Update the internal index. Trigger after external updates

task file format

title

priority tag1 tag2 tag3 ...

all lines starting with this one are considered the task
description.
lorem ipsum dolor sit amet consectetuer adipisicing elit

another paragraph w;elkr lk asdfasdkjf asdoiufh asdjf
asdk faspdfi japdsiofh peiurhqewfk adslfhaspdoifh oadsf

- john
- paul
- george
- ringo

index file format

{
"1":{"title":"lorem ipsum","pri":"5","tags":["test"]},
"2":{"title":"dolor sit amet","pri":"9","tags":[]},
...
}