All Projects β†’ ammsa β†’ Githeat

ammsa / Githeat

Licence: mit
πŸ”₯ Interactive heatmap for your git repos

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Githeat

Landscapeapp
πŸŒ„Upstream landscape generation application
Stars: ✭ 96 (-33.79%)
Mutual labels:  interactive
Sentaku
Utility to make sentaku (selection, 選択(sentaku)) window with shell command.
Stars: ✭ 117 (-19.31%)
Mutual labels:  interactive
Szl
A lightweight, embeddable scripting language
Stars: ✭ 134 (-7.59%)
Mutual labels:  interactive
Flowmarbles
Interactive diagrams of Kotlin Flow https://flowmarbles.com
Stars: ✭ 106 (-26.9%)
Mutual labels:  interactive
Apexcharts.js
πŸ“Š Interactive JavaScript Charts built on SVG
Stars: ✭ 10,991 (+7480%)
Mutual labels:  interactive
Git Cheats
Git Cheats - Interactive Cheatsheet For Git Commands
Stars: ✭ 124 (-14.48%)
Mutual labels:  interactive
Plotly.py
The interactive graphing library for Python (includes Plotly Express) ✨
Stars: ✭ 10,701 (+7280%)
Mutual labels:  interactive
Interactive machine learning
IPython widgets, interactive plots, interactive machine learning
Stars: ✭ 140 (-3.45%)
Mutual labels:  interactive
Lsh
Run interactive shell commands on AWS Lambda
Stars: ✭ 117 (-19.31%)
Mutual labels:  interactive
Tweetscape
A WebVR experience displaying tweets in real-time along a 3D timeline
Stars: ✭ 132 (-8.97%)
Mutual labels:  interactive
Graphviz.it
Graphviz fiddling website
Stars: ✭ 109 (-24.83%)
Mutual labels:  interactive
React Interactive
Better hover, active and focus states than CSS pseudo classes, and a callback when the interactive state changes
Stars: ✭ 115 (-20.69%)
Mutual labels:  interactive
React Native Keyboard Accessory View
Keyboard accessory (sticky) view for your React Native app. Supports interactive dismiss on iOS.
Stars: ✭ 128 (-11.72%)
Mutual labels:  interactive
React Lessons
Tool for creating and taking interactive React tutorials
Stars: ✭ 103 (-28.97%)
Mutual labels:  interactive
Propose
Android Motion Library
Stars: ✭ 134 (-7.59%)
Mutual labels:  interactive
Ansible Interactive Tutorial
Interactive Ansible tutorials with dead simple setup via Docker
Stars: ✭ 1,309 (+802.76%)
Mutual labels:  interactive
Ivid
πŸ”΄ (cyoa) interactive video player πŸ”΅
Stars: ✭ 122 (-15.86%)
Mutual labels:  interactive
Zalo.github.io
A home for knowledge that is hard to find elsewhere
Stars: ✭ 143 (-1.38%)
Mutual labels:  interactive
Webpack Bundle Analyzer
Webpack plugin and CLI utility that represents bundle content as convenient interactive zoomable treemap
Stars: ✭ 11,472 (+7811.72%)
Mutual labels:  interactive
Aicustomviewcontrollertransition
Easy and tidy way for creating custom UIViewController transitions for iOS
Stars: ✭ 130 (-10.34%)
Mutual labels:  interactive

|logo|

GitHeat uses your local machine to parse the git-log of your repo and build an interactive heatmap in your terminal. You can use GitHeat to see what days are most popular, and what months are most active.

To start the interactive heatmap, run:

    $ githeat.interactive

|video|

or skip the interactive part and print the heatmap directly by running:

    $ githeat

|githeat_cli|

Want to merge in the months? run

    $ githeat --month-merge

|githeat_cli_month_merge|

Want to separate each day block? run

    $ githeat --separate

|githeat_cli_separate|

Want to change the width of each block? choose between thin, reg, thick:

    $ githeat --width {thick,reg,thin}

|githeat_cli_width_thin|

Want to change the color of the graph? choose between grass, sky, fire

    $ githeat --color {grass,fire,sky}

|githeat_cli_color_fire|

Want to show who are the top 10 most committers? run and it will parse the days for you:

    $ githeat --stat --stat-number 10

|githeat_cli_stat_stat_number_10|

Want to filter out commits by author? write regex in the author argument:

    $ githeat --author="Will"

Want to filter out commits by keywords in commit? write regex in the grep argument:

    $ githeat --grep="Fix"

Have a specific YAML configuration file you want to use? pass it to the config argument:

    $ githeat --config PATH_TO_CONFIG.yaml

Need help? run:

  .. code-block:: html

    $ githeat -h

    usage: githeat.py [-h] [-c FILE] [--gtype {inline,block}]
                     [--width {thick,reg,thin}] [--days DAYS [DAYS ...]]
                      [--color {grass,fire,sky}] [--stat-number STAT_NUMBER]
                      [--stat] [--separate] [--month-merge] [--author AUTHOR]
                      [--grep GREP] [-v]
                      [--logging {CRITICAL,ERROR,WARNING,INFO,DEBUG,NOTSET}]

    githeat: Terminal Heatmap for your git repos

    optional arguments:
      -h, --help            show this help message and exit
      -c FILE, --config FILE
                            Specify YAML config file
      --gtype {inline,block}
                            Choose how you want the graph to be displayed
      --width {thick,reg,thin}
                            Choose how wide you want the graph blocks to be
      --days DAYS [DAYS ...]
                            Choose what days to show. Please enter list of day
                            abbreviations or full name of week
      --color {grass,fire,sky}
                            Choose type of coloring you want for your graph
      --stat-number STAT_NUMBER
                            Number of top committers to show in stat
      --stat, -s            Show commits stat
      --separate, -b        Separate each day
      --month-merge         Separate each month
      --author AUTHOR, -a AUTHOR
                            Filter heatmap by author. You can also write regex
                            here
      --grep GREP, -g GREP  Filter by keywords in commits
      -v, --version         print version and exit
      --logging {CRITICAL,ERROR,WARNING,INFO,DEBUG,NOTSET}
                            logger level

or for the interactive help

  .. code-block:: html

    $ githeat.interactive -h
     usage: githeat.py [-h] [-c FILE] [--width {thick,reg,thin}]
              [--days DAYS [DAYS ...]] [--color {grass,fire,sky}]
              [--month-merge] [--hide-legend] [--author AUTHOR]
              [--grep GREP] [-v]
              [--logging {CRITICAL,ERROR,WARNING,INFO,DEBUG,NOTSET}]

     githeat: Terminal Heatmap for your git repos

     optional arguments:
       -h, --help            show this help message and exit
       -c FILE, --config FILE
                             Specify YAML config file
       --width {thick,reg,thin}
                             Choose how wide you want the graph blocks to be
       --days DAYS [DAYS ...]
                             Choose what days to show. Please enter list of day
                             abbreviations or full name of week
       --color {grass,fire,sky}
                             Choose type of coloring you want for your graph
       --month-merge         Separate each month
       --hide-legend         Hide legend
       --author AUTHOR, -a AUTHOR
                             Filter heatmap by author. You can also write regex
                             here
       --grep GREP, -g GREP  Filter by keywords in commits
       -v, --version         print version and exit
       --logging {CRITICAL,ERROR,WARNING,INFO,DEBUG,NOTSET}
                             logger level

Minimum Requirements

  • Python 2.7

Optional Requirements

.. _py.test: http://pytest.org .. _Sphinx: http://sphinx-doc.org

  • py.test_ 2.7 (for running the test suite)
  • Sphinx_ 1.3 (for generating documentation)

Basic Setup

Install using pip:

.. code-block::

$ pip install githeat

Or to obtain the latest most-up-to-date version, clone the repo and install it from source:

.. code-block::

$ git clone https://github.com/AmmsA/Githeat
$ cd Githeat && python setup.py install

Install for the current user:

.. code-block::

$ python setup.py install --user

Run the application:

.. code-block::

$ python -m githeat --help

Run the test suite:

.. code-block::

$ py.test test/

Build documentation:

.. code-block::

$ cd doc && make html

Deploy the application in a self-contained Virtualenv_ environment:

.. _Virtualenv: https://virtualenv.readthedocs.org

.. code-block::

$ python deploy.py /path/to/apps
$ cd /path/to/apps/ && githeat/bin/cli --help

.. |logo| image:: https://raw.githubusercontent.com/AmmsA/Githeat/master/website/static/images/logo.png?token=AAtq743NFLfHArCfd_styq-ckCxrpPKeks5XhWFNwA%3D%3D :width: 100px :alt: githeat :target: https://github.com/ammsa/Githeat .. |video| image:: https://asciinema.org/a/812lm3uzd9yk8dbe0aehj5jvj.png :target: https://asciinema.org/a/812lm3uzd9yk8dbe0aehj5jvj .. |githeat_cli| image:: https://raw.githubusercontent.com/AmmsA/Githeat/master/website/static/images/githeat_cli.png?token=AAtq7w4e7O2ttQRmDsdX-7u1zRzv5q3Pks5XhWZIwA%3D%3D .. |githeat_cli_month_merge| image:: https://raw.githubusercontent.com/AmmsA/Githeat/master/website/static/images/githeat_cli_month_merge.png?token=AAtq7wqIcMdV5lIyG2t76lcGPO6g_T60ks5XhWcewA%3D%3D .. |githeat_cli_separate| image:: https://raw.githubusercontent.com/AmmsA/Githeat/master/website/static/images/githeat_cli_separate.png?token=AAtq7xdd7EWEmYnI-9Y5g3kJdj9kb26Qks5XhWjXwA%3D%3D .. |githeat_cli_width_thin| image:: https://raw.githubusercontent.com/AmmsA/Githeat/master/website/static/images/githeat_cli_width_thin.png?token=AAtq7ycoZEZT0g99UJMrWmhyYHUYW4dGks5XhWkRwA%3D%3D .. |githeat_cli_color_fire| image:: https://raw.githubusercontent.com/AmmsA/Githeat/master/website/static/images/githeat_cli_color_fire.png?token=AAtq7xPXiZYtF3U6dQcN4ikFHVIQCfHzks5XhWkcwA%3D%3D .. |githeat_cli_stat_stat_number_10| image:: https://raw.githubusercontent.com/AmmsA/Githeat/master/website/static/images/githeat_cli_stat_stat_number_10.png?token=AAtq72NP0xh5eel4N5WGO3JgdSQgUMX-ks5XhWkkwA%3D%3D

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].