HackaCLI

HackaCLI

8 devlogs
15h 8m
Created by Ishaan

hate looking at websites? love the terminal? LIVE in the terminal? well hackacli is for you! With 1:1 parity for every api request, custom date ranges, offline support etc. There's also a live preview incase your too lazy to install it @ http://hackacli.ttf.hackclub.app courtesy of nest!. there's also plenty of themes and support for custom

Timeline

Ship 1

Ishaan

about 4 hours ago

Ishaan Covers 8 devlogs and 15h 8m

this was just readability improvements to make it more maintainable. i removed a bunch of redundant code and redid the style system to be more configurable from the codepoint. take this random picture of the code ig

Update attachment
Earned sticker

uhm yeah i forgot waht i did mb. mostly just bug fixes and general floww improvements. I also got the web version working fully (it's a docker container that refreshes for each user) so you can test without downloading). I did have to remove some functionality from the web version tho (auto detection of key) and offline now uses a sample file

Update attachment
Earned sticker

Added - full asynchronity, time filtering for offline heartbeats, development mode
i fixed and the offline heartbeats feature to no longer disregard begin and end times. i also added a development mode which prints out the URL + headers for future api development. I finally added asynchronous calls, which significantly reduces time for multiple calls (and single calls to surprisingly), by a factor of 10%-50% (depends on speed of hackatime api, but 10% is generally the lowest)

Update attachment

Added - User Overview, offline stuff and website version, some asynchronous stuff
i finished off the user overview, which shows everything about a user (or yourself) if you just want a quick glance. After that i worked for a bit of time on the website version, which runs on nest using docker, and then exposes a terminal online (WIP, so not shown).After that, i worked on the offline feature. This parses the offline heartbeats file to show what activity you've done offline (who would've guessed)
there's other stuff too but i forgot

Update attachment

yeah guys i accidently put the wrong image in the last devlog my bad. I did create a better color scheme tho! (technically gemini did but who cares hahahahahahahahhahahah) (hahahhahahahah)

Update attachment
Earned sticker

Added - Limit Paramater, Range Parameter, Languages Overview + Lots of code cleanup
I started off by fixing a bug where the valid date checker would always parse the default and thus never alert, even for extremely invalid dates. I then got to adding another feature, ranges. using the --begin and --end parameter lets you specify dates for nearly all calls (except --trust-level), which shows applicabled data within this range. I finished the language feature, which shows a nice breakdown of the top x (defined by --limit, normally all) languages sorted by time spent + a bit of extra data! i also began on the overview feature, showing everything about a user

Update attachment
Earned sticker

Added - Theme Switcher, Trust Level, Users
Fixes - Parameter parsing
I fixed a bug with parameter parsing where for certain parameters (say limit), they would only work in a certain order.
A theme switcher was added that lets you switch between ttwo (equally shitty) themes or make you own - all interactive.
I also made a trust level checker, which given a list of users checks their ban status. (if you don't provide any it checks your own)

Update attachment

first devlog go brrrr! in this devlog i completed a basic (interactive!) setup for loading up your API Key. i also completed the first overview, which outputs a table of your projects with a limit feature. Now, since hackatime has a STUPID api, two different ways of g etting the projects return different things with zero overlap??? scary ik. also flag parsing happens in a specific order??

Update attachment