{"repo":"caarlos0/starcharts","free":true,"listed":false,"github":"https://github.com/caarlos0/starcharts","clone":"git clone https://github.com/caarlos0/starcharts.git","description":"Plot your repository stars over time.","language":"Go","stars":1422,"topics":["golang","chart","stargazers","stars","github-api"],"license":null,"category":"dev-tools","readme_excerpt":"starcharts Plot your repo stars over time! Features Smart Sampling Mode (Large Repository Optimization) For large repositories with massive amounts of stars, this project uses Smart Sampling Mode to efficiently fetch star history data and render trend charts. How it works: 1. Auto Detection : First requests the first page of GitHub API data and parses the Link Header to get total page count 2. Mode Switching : - When total pages ≤ maxSamplePages (default 15 pages, 1500 stars), fetches all data - When total pages maxSamplePages , automatically switches to sampling mode 3. Uniform Sampling : Evenly selects sample points across all pages to ensure coverage of the complete star growth timeline 4. Data Point Extraction : Extracts the timestamp and corresponding star count from the first Stargazer of each sampled page 5. Trend Completion : Adds current time and total star count as the final data point to ensure the chart extends to the latest state Usage Then browse http://localhost:3000/me/myrepo . Configuration Configure via environment variables: Variable Default Description ---------- --------- ------------- REDIS URL redis://localhost:6379 Redis cache URL GITHUB TOKENS - GitHub API Token (supports multiple, comma-separated) GITHUB PAGE SIZE 100 Number of stars per page GITHUB MAX SAMPLE PAGES 15 Max sample pages (triggers sampling mode when exceeded) GITHUB MAX RATE LIMIT USAGE 80 API Rate Limit usage threshold percentage LISTEN 127.0.0.1:3000 Server listen address Example","default_branch":null,"files":null,"tree":[],"storefront":"/r/caarlos0","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/caarlos0/starcharts/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}