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

oraclett

v0.4.6

Published

Oracle time tracker

Downloads

25

Readme

oraclett

Oracle time tracker

Licence GPLv3 Npm Downloads

Log working hours on different projects. Keep notes of what you did. Generate a report at the end of the week to transfer it into your company's Oracle system.

Built for Endava, initially as part of my bachelors thesis on improving CLI app usability.

Table of Contents

Install

Npm Version

sudo npm install -g oraclett

Usage

Some notes

On structure

The app is structured in nouns and verbs (e.g. project and add). The first subcommand is always a noun and the secound one a verb (e.g. oraclett project add). The verbs are the same accross all nouns. So list and edit will work for both note and hour.

On interactivity

All commands are offered in an interactive version. Just call them with some or none of the flags and everything necessary that you omitted will be prompted for.

On aliases

All verbs have short, one-letter aliases available:

  • add -> a
  • list -> l
  • edit -> e
  • remove -> r, d (for delete)

ticket

The point of tickets is to expand a short identifier in a note to include a description.

Example:

$ oraclett ticket add -i AAKKK001-1337 -t 'The status icon "New" and the filter behind it should be adjusted.' -p INTPD999DXD
# Successfully added AAKKK001-1337 to INTPD999DXD!
$ oraclett note add -p INTPD999DXD -t02 -n "Finished AAKKK001-1337"
# Matched and expanded ticket AAKKK001-1337!
# INTPD999DXD
#   Finished AAKKK001-1337 (The status icon "New" and the filter behind it should be adjusted.)

This arose out of the need to be required to include the full title each time I was to reference a ticket id. If you don't need to do this, don't bother with it :)

ticket add

Create a ticket to be matched and expanded in note-taking.

Required Flags:

  • -p, --project: Project this ticket belongs to
  • -i, --id: Identifier of the ticket
  • -t, --title: Title of the ticket

Examples:

  $ oraclett ticket add
  $ oraclett ticket add --id AAKKK001-1337
  $ oraclett ticket add -i AAKKK001-1337 -t 'The status icon "New" and the filter behind it should be adjusted.' -p INTPD999DXD

ticket list

List tickets.

Optional Flags:

  • -p, --project: Project to filter the tickets by

Examples:

  $ oraclett ticket list
  $ oraclett ticket list -p INTPD999DXD

ticket edit

Edit the id or title of a ticket.

Required Flags for editing the id:

  • -p, --project: Project this ticket belongs to
  • -i, --id: Identifier of the ticket
  • --new-id: New identifier for the '--id' to be changed to

Required Flags for editing the title:

  • -p, --project: Project this ticket belongs to
  • -i, --id: Identifier of the ticket
  • -t, --title: Title of the ticket

Examples:

  # edit interactively
  $ oraclett ticket edit
  $ oraclett ticket edit --id AAKKK001-1337
  # edit title
  $ oraclett ticket edit -i AAKKK001-1337 -t 'The status icon "New" and the filter behind it should be adjusted.' -p INTPD999DXD
  # edit id
  $ oraclett ticket edit -i AAKKK001-1337 --new-id BBJJJ002-1337 -p INTPD999DXD

ticket remove

Remove a ticket.

Required Flags:

  • -p, --project: Project this ticket belongs to
  • -i, --id: Identifier of the ticket

Examples:

  $ oraclett ticket remove
  $ oraclett ticket remove --id AAKKK001-1337 -p INTPD999DXD

Example aliases

Here are the aliases I use in the day-to-day.

I have everything set-up to add/filter for the main project I'm working on. All oraclett commands have a three letter shorthand. For some common notes of mime I have shortcuts.

local ORACLETT_MAIN_PROJECT=ORFDV001
local ORACLETT_MAIN_TASK_DETAILS=03

alias onl="oraclett note list"
alias ona="oraclett note add -p $ORACLETT_MAIN_PROJECT -t $ORACLETT_MAIN_TASK_DETAILS"
alias one="oraclett note edit"
alias onr="oraclett note remove"

# add common notes
alias onaprs="ona -n 'Review PRs'"
alias onareviewprs="onaprs"
alias onaceremonies="ona -n 'Sprint ceremonies'"

alias ohl="oraclett hour list"
alias oha="oraclett hour add -p $ORACLETT_MAIN_PROJECT -t $ORACLETT_MAIN_TASK_DETAILS"
alias ohe="oraclett hour edit"
alias ohr="oraclett hour remove"
alias oha8="oha -H8"

alias otl="oraclett ticket list -p $ORACLETT_MAIN_PROJECT"
alias ota="oraclett ticket add -p $ORACLETT_MAIN_PROJECT"
alias ote="oraclett ticket edit -p $ORACLETT_MAIN_PROJECT"
alias otr="oraclett ticket remove -p $ORACLETT_MAIN_PROJECT"

alias otc="oraclett timecard --classic"

Because they are aliases you can just add your flags to them like you normally would.

If you don't know where to put aliases: this depends on your shell. You can use echo $0 to find out what you're using. In the case of zsh, the relevant file is ~/.zshrc. And in bashs case ~/.bashrc.