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 🙏

© 2024 – Pkg Stats / Ryan Hefner

test-nest-commander-0

v0.0.2

Published

Downloads

1

Readme

NOTE: The solution seems to fine. A user doesn't need to do anything when starting / pausing (even if a ) a timer. It's restricted to only writing code, but it should be enough for MVP.

MOTIVATION

I hate spending time on managing tasks and timers, but I desperately need to track how much time is spent on a particular task from different entities (projects (Exbot & Gologin) -> repos (back, front, bot, extractor, etc.) -> features/fixes/hotfixes). What if, I do all the stuff I usually do with git but the timers managing is done for me without my involvement?

PROBLEM

Let's say I want to see how much time I've spent on a feature called 'table-pagination'. It's a feature that dwells in two repos of the 'Exbot' project - 'backend' and 'frontend' as a branch named 'feature/table-pagination'.

I need to see how much time is spent on:

  • on the feature in total
  • on the back-end and front-end parts of it separately
  • on its commits

The first solution coming to the mind of mine is simply to track:

  • the feature/table-pagination branches' creation timestamps -> START (x2 for back and front in this particular case)
  • the commits' timestamps -> commits' durations

The big BUTs
There needs to be a smooth way to pause and stop the timer. Any git pause or git stop do not solbe the underlying problem of a seemless UI - without tedious interactions.

Some background pauses (there's actually no need to stop any timer) can be triggered by

  • commits -> for commits' durations
  • git switch [current-branch] || git checkout -b [new-branch] -> feature's pausings

BUT WHAT ABOUT THOSE BREAKS IN BETWEEN?

  • [SOMEWHAT_OK] do a cron job for every pomodoro period of time (e.g. 25 mins) asking a user "Still working on feature/table-pagination?", which can be answered with (y) yes / (n) no;
  • [NOT_REALLY_OK] users DOES run a git pomogito p (pause) [feature]
  • [KINDA_OK] fswatch.sh - this CLI is only for macOS and for sole tracking activity of writing code (BUT no other-than-IDE activities are tracked, which seems to be fine for now)

INSTALLATION

Somehow make a user:

  1. fetch a repo or package with the code
  2. "install" it
  3. run config --global alias.pomogito '!pomogito' (check how it's done for simillar apps)

USAGE

  • git pomogito s / start [name] --> by default starts a timer with the current branch's name otherwise with the specified [name]
  • git pomogito p / pomodoro --> starts a pomodoro-pattern timer (25 min work, 5 min break)
  • git pomogito l / keep --> keep a pomodoro timer (skip a break)
  • git pomogito

APP FLOW

TimerSchema = {
  name: 'feature/table-pagination',
  repos: [{
    name: 'backend',
    createdAt: 167000000,
    ref: '687sd6ff76fs7d6fsdf7', // to access commits or make an its own field of `commits: object[]`
    timings: [[167000000, 167000000], [167000000, 167000000], [167000000, 167000000]],
  }, {
    name: 'frontend',
    createdAt: 167000500,
    ref: '687fh89h9gjgh9jg8hjf',
    timings: [[167000000, 167000000], [167000000, 167000000], [167000000, 167000000]],
  }],
}

ROADMAP

  1. Build pomogito CLI without git integration (low lvl)
  2. Intergarate to git (hight to low lvl)