metrics
📊 An infographics generator with 30+ plugins and 300+ options to display stats about your GitHub account and render them as SVG, Markdown, PDF or JSON!
Top Related Projects
:zap: Dynamically generated stats for your github readmes
Wakatime Weekly Metrics on your Profile Readme.
🔥 Stay motivated and show off your contribution streak! 🌟 Display your total contributions, current streak, and longest streak on your GitHub profile README
🏆 Add dynamically generated GitHub Stat Trophies on your readme
It counts how many times your GitHub profile has been viewed. Free cloud micro-service.
Better GitHub statistics images for your profile, with stats from private repos too
Quick Overview
Metrics is a highly customizable GitHub action that generates visualizations of your GitHub statistics and activity. It allows users to create SVG, PNG, or JSON metrics that can be displayed on GitHub profiles, READMEs, or websites. The project offers a wide range of plugins and templates to create unique and informative metrics.
Pros
- Extensive customization options with numerous plugins and templates
- Supports multiple output formats (SVG, PNG, JSON)
- Easy integration with GitHub Actions for automatic updates
- Comprehensive documentation and examples
Cons
- Can be complex to set up for advanced configurations
- Some features may require additional API tokens or permissions
- High number of options might be overwhelming for new users
- Potential for increased API usage, which could impact rate limits
Getting Started
To get started with Metrics, follow these steps:
- Create a new GitHub Actions workflow file in your repository:
name: Metrics
on:
schedule: [{cron: "0 * * * *"}]
workflow_dispatch:
push: {branches: ["master", "main"]}
jobs:
github-metrics:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: lowlighter/metrics@latest
with:
token: ${{ secrets.METRICS_TOKEN }}
-
Create a personal access token with the necessary permissions and add it to your repository secrets as
METRICS_TOKEN
. -
Customize the workflow by adding desired plugins and options:
- uses: lowlighter/metrics@latest
with:
token: ${{ secrets.METRICS_TOKEN }}
user: your-username
template: classic
base: header, activity, community, repositories, metadata
config_timezone: Your/Timezone
plugin_languages: yes
plugin_languages_ignored: html, css
plugin_achievements: yes
plugin_achievements_threshold: C
plugin_isocalendar: yes
plugin_isocalendar_duration: half-year
-
Commit the workflow file and run it manually or wait for the scheduled run.
-
Once generated, you can embed the metrics in your README or profile using:
![Metrics](https://github.com/your-username/your-username/blob/main/github-metrics.svg)
For more advanced configurations and additional plugins, refer to the official documentation.
Competitor Comparisons
:zap: Dynamically generated stats for your github readmes
Pros of github-readme-stats
- Simpler setup and integration, requiring minimal configuration
- Lightweight and focused specifically on GitHub stats
- Faster rendering of stats due to its specialized nature
Cons of github-readme-stats
- Limited customization options compared to metrics
- Fewer types of data and visualizations available
- Less frequent updates and smaller contributor base
Code Comparison
metrics:
- uses: lowlighter/metrics@latest
with:
token: ${{ secrets.METRICS_TOKEN }}
config_timezone: America/New_York
plugin_languages: yes
plugin_languages_ignored: html, css
github-readme-stats:
[![Anurag's GitHub stats](https://github-readme-stats.vercel.app/api?username=anuraghazra&show_icons=true&theme=radical)](https://github.com/anuraghazra/github-readme-stats)
metrics offers more extensive configuration options and plugins, allowing for greater customization of the displayed data. github-readme-stats provides a simpler, more straightforward implementation with fewer options but easier setup.
Both projects serve the purpose of displaying GitHub statistics, but metrics offers a more comprehensive solution with additional features and data types. github-readme-stats is better suited for users looking for a quick and easy way to showcase basic GitHub stats, while metrics is ideal for those seeking more detailed and customizable visualizations.
Wakatime Weekly Metrics on your Profile Readme.
Pros of waka-readme
- Focused specifically on WakaTime integration for coding stats
- Simpler setup and configuration process
- Lightweight and less resource-intensive
Cons of waka-readme
- Limited to WakaTime data only, less versatile
- Fewer customization options and visual elements
- Less frequent updates and smaller community
Code Comparison
waka-readme:
name: Waka Readme
on:
schedule:
- cron: '0 0 * * *'
jobs:
update-readme:
name: Update Readme with Metrics
runs-on: ubuntu-latest
steps:
- uses: athul/waka-readme@master
with:
WAKATIME_API_KEY: ${{ secrets.WAKATIME_API_KEY }}
metrics:
name: Metrics
on:
schedule:
- cron: '0 0 * * *'
jobs:
github-metrics:
runs-on: ubuntu-latest
steps:
- uses: lowlighter/metrics@latest
with:
token: ${{ secrets.METRICS_TOKEN }}
config_timezone: America/New_York
plugin_languages: yes
plugin_habits: yes
plugin_isocalendar: yes
The code comparison shows that metrics offers more plugins and configuration options out of the box, while waka-readme focuses solely on WakaTime integration. metrics provides a wider range of data visualization possibilities, making it more suitable for users who want comprehensive GitHub profile statistics beyond just coding time.
🔥 Stay motivated and show off your contribution streak! 🌟 Display your total contributions, current streak, and longest streak on your GitHub profile README
Pros of github-readme-streak-stats
- Focused specifically on GitHub contribution streaks, providing a clean and dedicated visualization
- Offers extensive customization options for colors, date formats, and layout
- Lightweight and fast-loading, ideal for embedding in GitHub profiles
Cons of github-readme-streak-stats
- Limited to streak statistics only, lacking the comprehensive GitHub metrics offered by metrics
- Requires manual setup and configuration, whereas metrics provides more automated options
- Less frequent updates compared to the actively maintained metrics project
Code Comparison
github-readme-streak-stats:
streak = calculate_streak(username)
svg = generate_svg(streak, theme)
return svg
metrics:
data = fetch_github_data(username)
metrics = calculate_metrics(data)
svg = generate_svg(metrics, layout)
return svg
The code snippets illustrate the simplified workflow of each project. github-readme-streak-stats focuses solely on streak calculation and visualization, while metrics handles a broader range of GitHub data and metrics.
Both projects serve different purposes: github-readme-streak-stats excels at providing a dedicated streak visualization, while metrics offers a more comprehensive GitHub profile analysis. The choice between them depends on whether you need a focused streak display or a wider range of GitHub statistics.
🏆 Add dynamically generated GitHub Stat Trophies on your readme
Pros of github-profile-trophy
- Focused specifically on showcasing GitHub achievements as trophies
- Simple setup with minimal configuration required
- Visually appealing and gamified display of accomplishments
Cons of github-profile-trophy
- Limited customization options compared to metrics
- Fewer data points and metrics available
- Less frequent updates and maintenance
Code Comparison
github-profile-trophy:
[![trophy](https://github-profile-trophy.vercel.app/?username=ryo-ma)](https://github.com/ryo-ma/github-profile-trophy)
metrics:
- uses: lowlighter/metrics@latest
with:
token: ${{ secrets.METRICS_TOKEN }}
config_timezone: America/New_York
template: classic
base: header, activity, community, repositories, metadata
Summary
github-profile-trophy offers a straightforward, visually appealing way to display GitHub achievements as trophies. It's easy to set up and provides a gamified experience for showcasing accomplishments. However, it has limited customization options and fewer data points compared to metrics.
metrics, on the other hand, provides a more comprehensive and customizable solution for displaying GitHub statistics and activities. It offers a wide range of metrics, plugins, and configuration options, allowing users to create highly detailed and personalized GitHub profile readmes. While it requires more setup and configuration, metrics provides a more in-depth analysis of a user's GitHub activity.
It counts how many times your GitHub profile has been viewed. Free cloud micro-service.
Pros of github-profile-views-counter
- Simple and focused: Specifically counts profile views
- Lightweight: Minimal resource usage and easy to implement
- Real-time updates: View count updates quickly
Cons of github-profile-views-counter
- Limited functionality: Only provides view count, no other metrics
- Less customizable: Fewer options for display and data presentation
- No data visualization: Lacks graphs or charts for view trends
Code Comparison
github-profile-views-counter:
![](https://komarev.com/ghpvc/?username=your-github-username)
metrics:
- uses: lowlighter/metrics@latest
with:
username: your-github-username
token: ${{ secrets.METRICS_TOKEN }}
config_timezone: America/New_York
plugin_lines: yes
plugin_isocalendar: yes
Summary
github-profile-views-counter is a straightforward tool for tracking GitHub profile views, offering simplicity and ease of use. However, it lacks the extensive features and customization options provided by metrics. metrics offers a comprehensive suite of GitHub statistics and visualizations, making it more suitable for users seeking detailed insights into their GitHub activity. The choice between the two depends on whether you need a simple view counter or a more robust metrics dashboard for your GitHub profile.
Better GitHub statistics images for your profile, with stats from private repos too
Pros of github-stats
- Simpler setup and configuration process
- Generates static SVG images for easy embedding
- Lightweight and focused on core GitHub statistics
Cons of github-stats
- Limited customization options compared to metrics
- Fewer data visualization types available
- Less frequent updates and smaller community support
Code Comparison
metrics:
- uses: lowlighter/metrics@latest
with:
token: ${{ secrets.METRICS_TOKEN }}
config_timezone: America/New_York
plugin_languages: yes
plugin_languages_ignored: html, css
github-stats:
- uses: jstrieb/github-stats@v1
with:
TOKEN: ${{ secrets.GITHUB_TOKEN }}
INCLUDE_ALL_COMMITS: true
SHOW_LOC_CHART: true
Summary
metrics offers a more comprehensive and customizable solution for GitHub profile statistics, with a wide range of plugins and visualization options. It has a larger community and more frequent updates. However, it may require more setup and configuration.
github-stats provides a simpler, more straightforward approach to displaying GitHub statistics. It generates static SVG images that are easy to embed, but offers fewer customization options and data visualization types compared to metrics.
Both projects serve similar purposes, but cater to different user needs based on the desired level of complexity and customization.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
ð Metrics
Generate metrics that can be embedded everywhere, including your GitHub profile readme! Supports users, organizations, and even repositories!
For user accounts | For organization accounts |
---|---|
𧩠Customizable with 47 plugins and 335 options! |
|
ð Isometric commit calendar | ð·ï¸ Languages activity |
Full year calendarHalf year calendar |
Indepth analysis (clone and analyze repositories)Recently used (analyze recent activity events)Default algorithmDefault algorithm (with details) |
⨠Stargazers | ð¨âð» Lines of code changed |
Classic chartsGraph chartsWorldmap |
Repositories and diff historyCompact display in base plugin |
ð Starred topics | ð Recently starred repositories |
With iconsWith labels |
|
ð Repository licenses | ð¡ Coding habits and activity |
Permissions, limitations and conditionsLicenses overview |
Recent activity chartsMildly interesting facts |
ð Repository contributors | ðï¸ Follow-up of issues and pull requests |
By contribution typesBy number of contributions |
Indepth analysisCreated on a user's repositoriesCreated by a user |
ð Comment reactions | ð§âð¤âð§ People |
Related to a userRelated to a repository |
|
ð GitHub Sponsorships | ð GitHub Sponsors |
GitHub sponsors cardGitHub sponsors full introduction |
|
ð Featured repositories | ð¬ Discussions |
FeaturedPinned |
|
ð« Star lists | ð Commit calendar |
Repositories from star listsLanguages from star lists |
Current yearFull history |
ð Achievements | ð© Notable contributions |
Compact displayDetailed display |
Indepth analysisContributions in organizations only |
ð° Recent activity | 𧮠Repositories traffic |
â Random code snippet | ð« Gists |
ðï¸ GitHub projects | ð Introduction |
For a user or an organizationFor a repository |
|
ð GitHub Skyline | â±ï¸ Google PageSpeed |
GitHub SkylineGitHub City |
PageSpeed scoresPageSpeed scores with detailed reportPageSpeed scores with a website screenshot |
ð¨ï¸ Stack Overflow | ð¸ Anilist watch list and reading list |
For anime watchersFor manga readersFor waifus simp |
|
ð¼ Music activity and suggestions | âï¸ Recent posts |
Random tracks from a playlistRecently listened |
Latest posts width description and cover imageLatest posts |
ð¼ Rss feed | â° WakaTime |
ð³ï¸ Leetcode | ð¹ï¸ Steam |
Recently played gamesProfile and detailed game history |
|
ð² See also community plugins | |
ð§ 16personalities by @lowlighter Render example |
âï¸ Chess by @lowlighter Render example |
ðª Crypto by @dajneem23 Render example |
ð¥ Fortune by @lowlighter Render example |
ð Nightscout by @legoandmars Render example |
ð© PoopMap plugin by @matievisthekat Render example |
ð¸ Website screenshot by @lowlighter Render example |
ð¦ Splatoon by @lowlighter Render example |
ð¹ Stock prices by @lowlighter Render example |
|
ð¼ï¸ And even more with 4+ templates! |
|
ð Classic template | ð Repository template |
ð Terminal template | ð Markdown template |
ð See also community templates | |
ð¦ Try it now! |
|
ð Metrics embed | ⨠Metrics insights |
Embed metrics images on your profile or blog! Use GitHub actions for even more features! |
Share your metrics with friends and on social medias! No configuration needed! |
Test latest features and patches on 𧪠Metrics beta !
|
|
Power user? Fork this repository and edit HTML, CSS, JS and EJS for even more customization! |
ð Documentation
â ï¸ This is the documentation of v3.35-beta (
@master
/@main
branches) which includes unreleased features planned for next release. See documentation for current released version v3.34 (@latest
branch) here.
𦮠Setup
There are several ways to setup metrics, each having its advantages and disadvantages:
- âï¸ Using GitHub Action on a profile repository (~10 min)
- âï¸ All features
- âï¸ High availability (no downtimes)
- â Configuration can be a bit time-consuming
- ð Using the shared instance (~1 min)
- âï¸ Easily configurable and previewable
- â Limited features (compute-intensive features are disabled)
- ðï¸ Deploying a web instance (~20 min)
- âï¸ Create another shared instance
- â Requires some sysadmin knowledge
- ð³ Using command line with docker (~2 min)
- âï¸ Suited for one-time rendering
- ð§ Local setup for development (~20 min)
Additional resources for setup:
- ð¦ Configure metrics for organizations
- ð Run metrics on self-hosted runners
- 𧰠Template/Plugin compatibility matrix
ð¼ï¸ Templates
Templates lets you change general appearance of rendered metrics.
- ð Classic template
classic
- ð Repository template
repository
- ð Terminal template
terminal
- ð Markdown template
markdown
- ð Community templates
community
𧩠Plugins
Plugins provide additional content and lets you customize rendered metrics.
ð¦ Maintained by core team
- Core plugins
- GitHub plugins
- ð Achievements
achievements
- ð° Recent activity
activity
- ð Commit calendar
calendar
- â Random code snippet
code
- ð
Repository contributors
contributors
- ð¬ Discussions
discussions
- ðï¸ Follow-up of issues and pull requests
followup
- ð« Gists
gists
- ð¡ Coding habits and activity
habits
- ð Introduction
introduction
- ð
Isometric commit calendar
isocalendar
- ð·ï¸ Languages activity
languages
- ð Repository licenses
licenses
- ð¨âð» Lines of code changed
lines
- ð© Notable contributions
notable
- ð§âð¤âð§ People
people
- ðï¸ GitHub projects
projects
- ð Comment reactions
reactions
- ð Featured repositories
repositories
- ð GitHub Skyline
skyline
- ð GitHub Sponsors
sponsors
- ð GitHub Sponsorships
sponsorships
- ⨠Stargazers
stargazers
- ð« Star lists
starlists
- ð Recently starred repositories
stars
- ð GitHub Community Support
support
â ï¸ deprecated
- ð Starred topics
topics
- 𧮠Repositories traffic
traffic
- ð Achievements
- Social plugins
- ð¸ Anilist watch list and reading list
anilist
- ð³ï¸ Leetcode
leetcode
- ð¼ Music activity and suggestions
music
- â±ï¸ Google PageSpeed
pagespeed
- âï¸ Recent posts
posts
- ð¼ Rss feed
rss
- ð¨ï¸ Stack Overflow
stackoverflow
- ð¹ï¸ Steam
steam
- ð¤ Latest tweets
tweets
â ï¸ deprecated
- â° WakaTime
wakatime
- ð¸ Anilist watch list and reading list
ð² Maintained by community
- Community plugins
- ð§ 16personalities
16personalities
by @lowlighter - âï¸ Chess
chess
by @lowlighter - ðª Crypto
crypto
by @dajneem23 - ð¥ Fortune
fortune
by @lowlighter - ð Nightscout
nightscout
by @legoandmars - ð© PoopMap plugin
poopmap
by @matievisthekat - ð¸ Website screenshot
screenshot
by @lowlighter - ð¦ Splatoon
splatoon
by @lowlighter - ð¹ Stock prices
stock
by @lowlighter
- ð§ 16personalities
ðª Contributing
If you are interested in contributing, the following resources may interest you:
- ðª Contribution guide
- 𧬠Architecture
- ð License
- :octocat: GitHub resources
Use ð¬ discussions
for feedback, new features suggestions, bugs reports or to request help for installation.
ð License
MIT License
Copyright (c) 2020-present lowlighter
Top Related Projects
:zap: Dynamically generated stats for your github readmes
Wakatime Weekly Metrics on your Profile Readme.
🔥 Stay motivated and show off your contribution streak! 🌟 Display your total contributions, current streak, and longest streak on your GitHub profile README
🏆 Add dynamically generated GitHub Stat Trophies on your readme
It counts how many times your GitHub profile has been viewed. Free cloud micro-service.
Better GitHub statistics images for your profile, with stats from private repos too
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot