diff --git a/2022/index.html b/2022/index.html index b0d5c46fed7..713236e098f 100644 --- a/2022/index.html +++ b/2022/index.html @@ -21,15 +21,15 @@ - - + +
Skip to main content

Logo
Open Source Highlights

Trends and Insights from GitHub 2022

We analyzed more than 5,000,000,000 rows of GitHub event data and got the results here. In this report, you'll get interesting findings about open source software on GitHub in 2022, including:

Top languages in the open source world over the past four years

This chart ranks programming languages ​​yearly from 2019 to 2022 based on the ratio of new repositories using these languages to all new repositories.

Insightslogo

Python surpassed Java and moved to #3 in 2021.TypeScript rose from #10 to #6, and SCSS rose from #39 to #19. The rise of SCSS shows that open source projects that value front-end expressiveness are gradually gaining popularity.The two languages Ruby and R dropped a lot in ranking over the years.
Additional Notes

Rankings of back-end programming languages

The programming languages used in a pull request reflect which languages developers used. To find out the most popular back-end programming languages, we queried the distribution of programming languages by new pull requests from 2019 to 2022 and took the top 10 for each year.

Insightslogo

Python and Java rank #1 and #2 respectively. In 2021, Go overtook Ruby to rank #3 in 2021.Rust has been trending upward for several years, ranking #9 in 2022.

Geographic distribution of developer behavior

We queried the number of various events that occurred throughout the world from January 1 to September 30, 2022 and identified the top 10 countries by the number of events triggered by developers in these countries. The chart displays the proportion of each event type by country or region.

Insightslogo

The events triggered in the top 10 countries account for about 23.27% of all GitHub events. However, the number of developers from these countries is only 10%.
πŸ‡ΊπŸ‡Έ US developers are most likely to review code, with a PullRequestReviewEvent share of 6.15%.
πŸ‡¨πŸ‡³ Chinese developers like to star repositories, with 17.23% for WatchEvent and 2.7% for ForkEvent.
πŸ‡©πŸ‡ͺ German developers like to open issues and comments, with IssueEvent and CommentEvent accounting for 4.18% and 12.66% respectively.
πŸ‡°πŸ‡· Korean developers prefer pushing directly to repositories (PushEvent).
πŸ‡―πŸ‡΅ Japanese developers are most likely to submit code via pull requests, with a PullRequestEvent share of 10%.

Developer behavior distribution on weekdays and weekends

We queried the distribution of each event type over the seven days of the week.

The distribution of specific events

Insightslogo

Pull Request Event, Pull Request Review Event, and Issues Event all have the highest percentage on Tuesdays, while the lowest percentage is on the weekends.The amount of Push Event, Watch Event, and Fork Event activities are similar on weekdays and weekends, while the Pull Request Review Event is the most different. Watch Event and Fork Event are more personal behaviors, Pull Request Review Events are more work behaviors, and Push Events are used more in personal projects.

The most active repositories over the past four years

Here we looked up the top 20 active repositories per year from 2019 to 2022 and counted the total number of listings per repository. The activity of the repository is ranked according to the number of developers participating in collaborative events.

Who gave the most stars in 2022

We queried the developers who gave the most stars in 2022, took the top 20, and filtered out accounts of suspected bots. If a developer's number of star events divided by the number of starred repositories is equal to or greater than 2, we suspect this user to be a bot.

  • 1
    136 stars
    per day
  • 2
    133 stars
    per day
  • 3
    76 stars
    per day

The most active developers since 2011

We queried the top 20 most active developers per year since 2011. This time we didn't filter out bot events.

95%logo

We found that the percentage of bots is becoming larger and larger. Bots started to overtake humans in 2013 and have reached over 95% in 2022.
Appendix

Term Description

About GitHub events

GitHub events are triggered by user actions, like starring a repository or pushing code.

About time range

In this report, the data collection range of 2022 is from January 1, 2022 to September 30, 2022. When comparing data of 2022 with another year, we use year-on-year analysis.

About bot events

Bot-triggered events account for a growing percentage of GitHub events. However, these events are not the focus of this report. We filtered out most of the bot-initiated events by matching regular expressions.

How we classify technical fields by topics

We do exact matching and fuzzy matching based on the repository topic. Exact matching means that the repository topics have a topic that exactly matches the word, and fuzzy matching means that the repository topics have a topic that contains the word.

TopicExact matchingFuzzy matching
GitHub Actionsactionsgithub-action, gh-action
Low Codelow-code, lowcode, nocode, no-code
Web3web3
Databasedbdatabase, databases nosql, newsql, sql mongodb,neo4j
AIai, aiops, aiotartificial-intelligence, machine-intelligence computer-vision, image-processing, opencv, computervision, imageprocessing voice-recognition, speech-recognition, voicerecognition, speechrecognition, speech-processing machinelearning, machine-learning deeplearning, deep-learning transferlearning, transfer-learning mlops text-to-speech, tts, speech-synthesis, voice-synthesis robot, robotics sentiment-analysis natural-language-processing, nlp language-model, text-classification, question-answering, knowledge-graph, knowledge-base gan, gans, generative-adversarial-network, generative-adversarial-networks neural-network, neuralnetwork, neuralnetworks, neural-network, dnn tensorflow PyTorch huggingface transformers seq2seq, sequence-to-sequence data-analysis, data-science object-detection, objectdetection data-augmentation classification action-recognition
- - + + \ No newline at end of file diff --git a/404.html b/404.html index 9c1b254aa13..d9ccc520d84 100644 --- a/404.html +++ b/404.html @@ -21,13 +21,13 @@ - - + +
Skip to main content

Loading... Β 

- - + + \ No newline at end of file diff --git a/analyze-company/index.html b/analyze-company/index.html index 9d5bd270f13..eec7c612ed7 100644 --- a/analyze-company/index.html +++ b/analyze-company/index.html @@ -21,13 +21,13 @@ - - + +
Skip to main content

πŸ›οΈ Company Analytics [Beta]

Contribution analytics of developers within the same company

​

Hints: Only the statistics of the members who have the data of [company name] was recorded and the result may include all events in both previous/current company. Contributions include pushes, pull requests, pull request reviews, pull request review comments, issues and issue comments.

Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/analyze/:login/index.html b/analyze/:login/index.html index f9da5184c98..92921e44896 100644 --- a/analyze/:login/index.html +++ b/analyze/:login/index.html @@ -21,13 +21,13 @@ - - + +
Skip to main content

Overview

All results are calculated only by developer's public activities showed on GitHub. See details in gharchive!

Starred Repos Star Earned
Contributed to Issues
Pull Requests Code Reviews
PR Code Changes

Behaviour

You can see the total contributions in different repositories since 2011, as well as check the status of different contribution categories type by type.

Contribution time distribution for all (UTC +0)SunMonTueWedThuFriSat01234567891011121314151617181920212223lessmore

Star

The total number of starred repositories since 2011, which ignores developers' unstarring or restarring behavior.

Code

All contributions measured with code related events since 2011. For example, the history of code submits which includes the pushes and commits, the pull request history which includes merged / un-merged pull requests, the size of pull requests and the code line changes in pull requests.

Code Review

The history about the number of code review times and comments in pull requests since 2011.

Issue

The history about the total number of issues and issue comments since 2011.

Contribution Activities

All personal activities happened on all public repositories in GitHub since 2011. You can check each specific activity type by type with a timeline.

Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/analyze/:owner/:repo/index.html b/analyze/:owner/:repo/index.html index ba81dadeb9f..c415376c790 100644 --- a/analyze/:owner/:repo/index.html +++ b/analyze/:owner/:repo/index.html @@ -21,13 +21,13 @@ - - + +
- - + + \ No newline at end of file diff --git a/analyze/facebook/react/index.html b/analyze/facebook/react/index.html index f9bd3f0cd9b..19a382298e6 100644 --- a/analyze/facebook/react/index.html +++ b/analyze/facebook/react/index.html @@ -21,13 +21,13 @@ - - + +
- - + + \ No newline at end of file diff --git a/analyze/pingcap/tidb/index.html b/analyze/pingcap/tidb/index.html index 74fd1578904..05f37c67fb0 100644 --- a/analyze/pingcap/tidb/index.html +++ b/analyze/pingcap/tidb/index.html @@ -21,13 +21,13 @@ - - + +
- - + + \ No newline at end of file diff --git a/analyze/tikv/tikv/index.html b/analyze/tikv/tikv/index.html index 1097a1a8388..b3ab6af8cbf 100644 --- a/analyze/tikv/tikv/index.html +++ b/analyze/tikv/tikv/index.html @@ -21,13 +21,13 @@ - - + +
- - + + \ No newline at end of file diff --git a/assets/js/5c767621.c99ac11b.js b/assets/js/5c767621.b797a880.js similarity index 99% rename from assets/js/5c767621.c99ac11b.js rename to assets/js/5c767621.b797a880.js index 63da7472ac4..2ba3be52bc1 100644 --- a/assets/js/5c767621.c99ac11b.js +++ b/assets/js/5c767621.b797a880.js @@ -1,4 +1,4 @@ -"use strict";(self.webpackChunkweb=self.webpackChunkweb||[]).push([[9204],{11194:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Un});var r={};n.r(r),n.d(r,{avatar:()=>_e,backgroundColor:()=>rt,bio:()=>tt,color:()=>ot,content:()=>$e,label:()=>nt,name:()=>et});var o={};n.r(o),n.d(o,{avatar:()=>at,backgroundColor:()=>dt,bio:()=>ct,color:()=>ut,content:()=>lt,label:()=>Lt,name:()=>st});var i={};n.r(i),n.d(i,{avatar:()=>ht,backgroundColor:()=>gt,bio:()=>kt,color:()=>ft,content:()=>pt,label:()=>Et,name:()=>Ct});var l={};n.r(l),n.d(l,{avatar:()=>yt,backgroundColor:()=>Mt,bio:()=>bt,color:()=>Zt,content:()=>vt,label:()=>Ft,name:()=>xt});var a={};n.r(a),n.d(a,{avatar:()=>Ht,backgroundColor:()=>At,bio:()=>Bt,color:()=>Tt,content:()=>Wt,label:()=>jt,name:()=>Dt});var s={};n.r(s),n.d(s,{avatar:()=>It,backgroundColor:()=>Xt,bio:()=>Nt,color:()=>Ot,content:()=>St,label:()=>zt,name:()=>Rt});var c={};n.r(c),n.d(c,{avatar:()=>Yt,backgroundColor:()=>qt,bio:()=>Ut,color:()=>$t,content:()=>Jt,label:()=>Kt,name:()=>Gt});var L={};n.r(L),n.d(L,{avatar:()=>tn,backgroundColor:()=>ln,bio:()=>rn,color:()=>an,content:()=>en,label:()=>on,name:()=>nn});var d={};n.r(d),n.d(d,{avatar:()=>Ln,backgroundColor:()=>pn,bio:()=>un,color:()=>hn,content:()=>cn,label:()=>mn,name:()=>dn});var u=n(64392),m=n(11057),p=n(5616),h=n(94054),C=n(50480),k=n(40476),E=n(36872),g=n(91050),f=n(88078),w=n(90948),v=n(84191),y=n(87462),x=n(52263),b=n(67294);function F(e){let{children:t,trial:n=!0,mt:r=8,...o}=e;const{siteConfig:{customFields:i}}=(0,x.Z)();return b.createElement(m.Z,(0,y.Z)({sx:{mt:r,px:8,"&:hover":{color:"#1C1E21"}},color:"primary",variant:"outlined"},o,{component:"a",href:`https://${null==i?void 0:i.tidbcloud_host}`+(n?"/free-trial/":"/")+"?utm_source=ossinsight&utm_medium=referral&utm_campaign=plg_OSScontribution_credit_05",target:"_blank"}),t)}var M=n(90031),Z=n(47135),V=n(1969),W=n(68258),H=n(8100);function D(){const[e,t]=(0,b.useState)(!1),{getAccessTokenSilently:n}=(0,M.g)(),{data:r,mutate:o}=(0,H.ZP)("/api/v1/serverless-credits-campaign/credits/check",(async e=>await v.yu.get(e,{withCredentials:!0,headers:{Authorization:`Bearer ${await n({connection:"github"})}`}}).then((e=>((e={...e}).credits=U(e.credits),e))))),{data:i}=(0,H.ZP)("/api/v1/serverless-credits-campaign/tenants",(async e=>await v.yu.get(e,{withCredentials:!0,headers:{Authorization:`Bearer ${await n({connection:"github"})}`}})),{revalidateOnFocus:!1}),l=async e=>{await v.yu.post("/api/v1/serverless-credits-campaign/credits/claim",{selectedTenantId:e},{headers:{Authorization:`Bearer ${await n({connection:"github"})}`}}).then((()=>{t(!0)})).finally((()=>{o()}))};let a;return a=r&&i?r.isClaimed?e?b.createElement(j,{check:r}):b.createElement(A,null):r.isEligible?0===i.length?b.createElement(S,{check:r}):b.createElement(I,{check:r,onClaim:l,tenants:i}):0===i.length?b.createElement(P,null):b.createElement(T,{tenants:i}):b.createElement(B,null),b.createElement(N,null,a)}function B(){return b.createElement(b.Fragment,null,b.createElement(f.Z,{variant:"circular",width:117,height:117}),b.createElement(p.Z,{mt:4,maxWidth:"400px",width:"100%",display:"flex",flexDirection:"column",gap:2,alignItems:"center"},b.createElement(f.Z,{sx:{display:"block"},variant:"rounded",width:"50%"}),b.createElement(f.Z,{sx:{display:"block"},variant:"rounded",width:"70%"}),b.createElement(f.Z,{sx:{display:"block"},variant:"rounded",width:"60%"})))}function j(e){let{check:t}=e;const{user:n}=(0,M.g)();return b.createElement(b.Fragment,null,Y,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==n?void 0:n.nickname)??(null==n?void 0:n.name)),b.createElement("br",null),"Successfully claimed ",b.createElement("strong",null,t.credits," in TiDB Serverless")," credits, you can go to",b.createElement("br",null),"TiDB Cloud to check it out and use it."),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{variant:"contained",mt:0},"Start Building with TiDB Cloud!"),b.createElement(R,null)))}function A(){const{user:e}=(0,M.g)();return b.createElement(b.Fragment,null,Y,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==e?void 0:e.nickname)??(null==e?void 0:e.name)),b.createElement("br",null),"You've already participated in this campaign.",b.createElement("br",null),"Thanks for being an open-source hero.",b.createElement("br",null),"Ready to build something amazing?"),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{variant:"contained",mt:0},"Start Building with TiDB Cloud!"),b.createElement(R,null)))}function T(e){let{tenants:t}=e;const{user:n}=(0,M.g)();return b.createElement(b.Fragment,null,J,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==n?void 0:n.nickname)??(null==n?void 0:n.name)),b.createElement("br",null),b.createElement("b",null,"Thank you for your contributions to the open-source community."),b.createElement("br",null),"As a token of our appreciation, you have ",b.createElement("b",null,"25GB of free storage and 250 million reads")," available on TiDB Serverless.",b.createElement("br",null),b.createElement("b",null,"Start building your next project today.")),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{mt:0,variant:"contained"},"Login to TiDB Cloud"),b.createElement(R,null)))}function P(){const{user:e}=(0,M.g)();return b.createElement(b.Fragment,null,J,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==e?void 0:e.nickname)??(null==e?void 0:e.name)),b.createElement("br",null),"Want to try TiDB Serverless for free?",b.createElement("br",null),"Create a new TiDB Cloud account and enjoy 25GB of free storage to start building your applications."),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{mt:0,variant:"contained"},"Create TiDB Cloud Account"),b.createElement(R,null)))}function S(e){let{check:t}=e;const{user:n}=(0,M.g)();return b.createElement(b.Fragment,null,Q,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==n?void 0:n.nickname)??(null==n?void 0:n.name)),b.createElement("br",null),"Awesome! You're eligible for ",b.createElement("strong",null,t.credits," in TiDB Serverless")," credits for your contributions to the open-source community.",b.createElement("br",null),"Create a new TiDB Cloud account and your credits will be waiting for you."),b.createElement(F,{variant:"contained",sx:{background:"white",mt:8,"&:hover":{background:"rgba(255,255,255,0.8)",color:"black"}}},"Sign up to TiDB Cloud"),b.createElement(m.Z,{sx:{mt:4,px:8},color:"primary",variant:"contained",disabled:!0},"Claim Credits"))}function I(e){let{tenants:t,check:n,onClaim:r}=e;const{user:o}=(0,M.g)(),[i,l]=(0,b.useState)(""),[a,s]=(0,b.useState)(!1),[,c]=(0,b.useState)();(0,b.useEffect)((()=>{t.length>0?l(t[0].id):l("")}),[t]);return b.createElement(b.Fragment,null,Q,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==o?void 0:o.nickname)??(null==o?void 0:o.name)),b.createElement("br",null),"Congratulations! You're eligible for ",b.createElement("strong",null,n.credits," in TiDB Serverless")," credits for your contributions to the open-source community.",b.createElement("br",null),"Please select your existing TiDB Cloud account to apply these credits."),b.createElement(h.Z,{sx:{mt:8},disabled:a},b.createElement(k.Z,{sx:{fontSize:18}},"Select your TiDB Cloud account to claim the credits"),b.createElement(g.Z,{sx:{mt:4},value:i,onChange:(e,t)=>l(t)},t.map((e=>b.createElement(C.Z,{key:e.id,sx:{"&:not(:first-of-type)":{mt:2},marginLeft:"unset",marginRight:"unset",background:"white",borderRadius:1,color:"black",py:1},value:e.id,label:b.createElement(b.Fragment,null,b.createElement(X,null,e.name),b.createElement(O,null,e.email)),control:b.createElement(E.Z,{sx:{color:"black","&.Mui-checked":{color:"black"}}})}))))),b.createElement(m.Z,{sx:{mt:8,px:8},color:"primary",variant:"contained",disabled:a||!i,onClick:()=>{i&&(s(!0),r(i).catch((e=>{alert((0,Z.e$)(e)),c(e)})).finally((()=>{s(!1)})))}},"Claim Credits"))}function R(){return b.createElement(m.Z,{component:"a",sx:{position:[void 0,void 0,"absolute"],left:[void 0,void 0,"100%"],whiteSpace:"nowrap",color:"white !important"},target:"_blank",href:(0,V.PE)(location.href,{title:"Open Source Heroes, we \u2764\ufe0f you! To show our appreciation, claim up to $1000 in FREE TiDB Serverless Credits to fuel your next big idea. Build with a powerful, scalable serverless database. \nStart today!",hashtags:["opensource","database","cloud","developer","tidbserverless"]})},"Share via ",b.createElement(W.b0,{round:!0,size:24,bgStyle:{fill:"transparent"},iconFillColor:"white"}))}const N=(0,w.ZP)("div")` +"use strict";(self.webpackChunkweb=self.webpackChunkweb||[]).push([[9204],{11194:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Un});var r={};n.r(r),n.d(r,{avatar:()=>_e,backgroundColor:()=>rt,bio:()=>tt,color:()=>ot,content:()=>$e,label:()=>nt,name:()=>et});var o={};n.r(o),n.d(o,{avatar:()=>at,backgroundColor:()=>dt,bio:()=>ct,color:()=>ut,content:()=>lt,label:()=>Lt,name:()=>st});var i={};n.r(i),n.d(i,{avatar:()=>ht,backgroundColor:()=>gt,bio:()=>kt,color:()=>ft,content:()=>pt,label:()=>Et,name:()=>Ct});var l={};n.r(l),n.d(l,{avatar:()=>yt,backgroundColor:()=>Mt,bio:()=>bt,color:()=>Zt,content:()=>vt,label:()=>Ft,name:()=>xt});var a={};n.r(a),n.d(a,{avatar:()=>Ht,backgroundColor:()=>At,bio:()=>Bt,color:()=>Tt,content:()=>Wt,label:()=>jt,name:()=>Dt});var s={};n.r(s),n.d(s,{avatar:()=>It,backgroundColor:()=>Xt,bio:()=>Nt,color:()=>Ot,content:()=>St,label:()=>zt,name:()=>Rt});var c={};n.r(c),n.d(c,{avatar:()=>Yt,backgroundColor:()=>qt,bio:()=>Ut,color:()=>$t,content:()=>Jt,label:()=>Kt,name:()=>Gt});var L={};n.r(L),n.d(L,{avatar:()=>tn,backgroundColor:()=>ln,bio:()=>rn,color:()=>an,content:()=>en,label:()=>on,name:()=>nn});var d={};n.r(d),n.d(d,{avatar:()=>Ln,backgroundColor:()=>pn,bio:()=>un,color:()=>hn,content:()=>cn,label:()=>mn,name:()=>dn});var u=n(64392),m=n(11057),p=n(5616),h=n(94054),C=n(50480),k=n(40476),E=n(36872),g=n(91050),f=n(88078),w=n(90948),v=n(84191),y=n(87462),x=n(52263),b=n(67294);function F(e){let{children:t,trial:n=!0,mt:r=8,...o}=e;const{siteConfig:{customFields:i}}=(0,x.Z)();return b.createElement(m.Z,(0,y.Z)({sx:{mt:r,px:8,"&:hover":{color:"#1C1E21"}},color:"primary",variant:"outlined"},o,{component:"a",href:`https://${null==i?void 0:i.tidbcloud_host}`+(n?"/free-trial/":"/")+"?utm_source=ossinsight&utm_medium=referral&utm_campaign=plg_OSScontribution_credit_05",target:"_blank"}),t)}var M=n(90031),Z=n(47135),V=n(1969),W=n(68258),H=n(8100);function D(){const[e,t]=(0,b.useState)(!1),{getAccessTokenSilently:n}=(0,M.g)(),{data:r,mutate:o}=(0,H.ZP)("/api/v1/serverless-credits-campaign/credits/check",(async e=>await v.yu.get(e,{withCredentials:!0,headers:{Authorization:`Bearer ${await n({connection:"github"})}`}}).then((e=>((e={...e}).credits=U(e.credits),e))))),{data:i}=(0,H.ZP)("/api/v1/serverless-credits-campaign/tenants",(async e=>await v.yu.get(e,{withCredentials:!0,headers:{Authorization:`Bearer ${await n({connection:"github"})}`}})),{revalidateOnFocus:!1}),l=async e=>{await v.yu.post("/api/v1/serverless-credits-campaign/credits/claim",{selectedTenantId:e},{headers:{Authorization:`Bearer ${await n({connection:"github"})}`}}).then((()=>{t(!0)})).finally((()=>{o()}))};let a;return a=r&&i?r.isClaimed?e?b.createElement(j,{check:r}):b.createElement(A,null):r.isEligible?0===i.length?b.createElement(S,{check:r}):b.createElement(I,{check:r,onClaim:l,tenants:i}):0===i.length?b.createElement(P,null):b.createElement(T,{tenants:i}):b.createElement(B,null),b.createElement(N,null,a)}function B(){return b.createElement(b.Fragment,null,b.createElement(f.Z,{variant:"circular",width:117,height:117}),b.createElement(p.Z,{mt:4,maxWidth:"400px",width:"100%",display:"flex",flexDirection:"column",gap:2,alignItems:"center"},b.createElement(f.Z,{sx:{display:"block"},variant:"rounded",width:"50%"}),b.createElement(f.Z,{sx:{display:"block"},variant:"rounded",width:"70%"}),b.createElement(f.Z,{sx:{display:"block"},variant:"rounded",width:"60%"})))}function j(e){let{check:t}=e;const{user:n}=(0,M.g)();return b.createElement(b.Fragment,null,Y,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==n?void 0:n.nickname)??(null==n?void 0:n.name)),b.createElement("br",null),"Successfully claimed ",b.createElement("strong",null,t.credits," in TiDB Serverless")," credits, you can go to",b.createElement("br",null),"TiDB Cloud to check it out and use it."),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{variant:"contained",mt:0},"Start Building with TiDB Cloud!"),b.createElement(R,null)))}function A(){const{user:e}=(0,M.g)();return b.createElement(b.Fragment,null,Y,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==e?void 0:e.nickname)??(null==e?void 0:e.name)),b.createElement("br",null),"You've already participated in this campaign.",b.createElement("br",null),"Thanks for being an open-source hero.",b.createElement("br",null),"Ready to build something amazing?"),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{variant:"contained",mt:0},"Start Building with TiDB Cloud!"),b.createElement(R,null)))}function T(e){let{tenants:t}=e;const{user:n}=(0,M.g)();return b.createElement(b.Fragment,null,J,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==n?void 0:n.nickname)??(null==n?void 0:n.name)),b.createElement("br",null),b.createElement("b",null,"Thank you for your contributions to the open-source community."),b.createElement("br",null),"As a token of our appreciation, you have ",b.createElement("b",null,"25GB of free storage and 250 million reads")," available on TiDB Serverless.",b.createElement("br",null),b.createElement("b",null,"Start building your next project today.")),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{mt:0,variant:"contained"},"Login to TiDB Cloud"),b.createElement(R,null)))}function P(){const{user:e}=(0,M.g)();return b.createElement(b.Fragment,null,J,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==e?void 0:e.nickname)??(null==e?void 0:e.name)),b.createElement("br",null),"Want to try TiDB Serverless for free?",b.createElement("br",null),"Create a new TiDB Cloud account and enjoy 25GB of free storage to start building your applications."),b.createElement(p.Z,{sx:{position:"relative",width:"max-content",maxWidth:"100%",mt:8,display:"flex",gap:2,px:2,alignItems:"center",flexWrap:"wrap"}},b.createElement(F,{mt:0,variant:"contained"},"Create TiDB Cloud Account"),b.createElement(R,null)))}function S(e){let{check:t}=e;const{user:n}=(0,M.g)();return b.createElement(b.Fragment,null,Q,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==n?void 0:n.nickname)??(null==n?void 0:n.name)),b.createElement("br",null),"Awesome! You're eligible for ",b.createElement("strong",null,t.credits," in TiDB Serverless")," credits for your contributions to the open-source community.",b.createElement("br",null),"Create a new TiDB Cloud account and your credits will be waiting for you."),b.createElement(F,{variant:"contained",sx:{background:"white",mt:8,"&:hover":{background:"rgba(255,255,255,0.8)",color:"black"}}},"Sign up to TiDB Cloud"),b.createElement(m.Z,{sx:{mt:4,px:8},color:"primary",variant:"contained",disabled:!0},"Claim Credits"))}function I(e){let{tenants:t,check:n,onClaim:r}=e;const{user:o}=(0,M.g)(),[i,l]=(0,b.useState)(""),[a,s]=(0,b.useState)(!1),[,c]=(0,b.useState)();(0,b.useEffect)((()=>{t.length>0?l(t[0].id):l("")}),[t]);return b.createElement(b.Fragment,null,Q,b.createElement(z,null,"Hi ",b.createElement("em",null,(null==o?void 0:o.nickname)??(null==o?void 0:o.name)),b.createElement("br",null),"Congratulations! You're eligible for ",b.createElement("strong",null,n.credits," in TiDB Serverless")," credits for your contributions to the open-source community.",b.createElement("br",null),"Please select your existing TiDB Cloud account to apply these credits."),b.createElement(h.Z,{sx:{mt:8},disabled:a},b.createElement(k.Z,{sx:{fontSize:18}},"Select your TiDB Cloud account to claim the credits"),b.createElement(g.Z,{sx:{mt:4},value:i,onChange:(e,t)=>l(t)},t.map((e=>b.createElement(C.Z,{key:e.id,sx:{"&:not(:first-of-type)":{mt:2},marginLeft:"unset",marginRight:"unset",background:"white",borderRadius:1,color:"black",py:1},value:e.id,label:b.createElement(b.Fragment,null,b.createElement(X,null,e.name),b.createElement(O,null,e.email)),control:b.createElement(E.Z,{sx:{color:"black","&.Mui-checked":{color:"black"}}})}))))),b.createElement(m.Z,{sx:{mt:8,px:8},color:"primary",variant:"contained",disabled:a||!i,onClick:()=>{i&&(s(!0),r(i).catch((e=>{alert((0,Z.e$)(e)),c(e)})).finally((()=>{s(!1)})))}},"Claim Credits"))}function R(){return b.createElement(m.Z,{component:"a",sx:{position:[void 0,void 0,"absolute"],left:[void 0,void 0,"100%"],whiteSpace:"nowrap",color:"white !important"},target:"_blank",href:(0,V.PE)(location.href,{title:"Open Source Heroes, we \u2764\ufe0f you! To show our appreciation, claim up to $2000 in FREE TiDB Serverless Credits to fuel your next big idea. Build with a powerful, scalable serverless database. \nStart today!",hashtags:["opensource","database","cloud","developer","tidbserverless"]})},"Share via ",b.createElement(W.b0,{round:!0,size:24,bgStyle:{fill:"transparent"},iconFillColor:"white"}))}const N=(0,w.ZP)("div")` background: #212122; min-height: calc(100vh - 60px); display: flex; @@ -136,7 +136,7 @@ font-weight: 400; color: #FFFFFF; } -`;function ce(){const{user:e,isLoading:t,login:n}=(0,M.g)(),[r,o]=(0,b.useState)(!1);return r?b.createElement(D,null):b.createElement(Le,{loading:t,onClickAction:()=>{!function(e){if(!e)return!1;return e.startsWith("github|")}(null==e?void 0:e.sub)?n({connection:"github"}).then((()=>{o(!0)})):o(!0)}})}function Le(e){let{loading:t,onClickAction:r}=e;return b.createElement($,null,b.createElement(_,{container:!0,columnSpacing:8,rowSpacing:0},b.createElement(ee,{xs:12,md:7},b.createElement("div",null,b.createElement(re,null,b.createElement(ne,null,"Fuel Your Next Big Idea:"),b.createElement("br",null),"TiDB Serverless Credits for Open Source Heroes"),b.createElement(oe,null,"TiDB loves open-source. We contribute code, sponsor projects and deeply appreciate developers who actively contribute to the community.",b.createElement("br",null),"As a token of our appreciation, we're offering up to $1000 in free TiDB Serverless credits to fuel open-source hero's next big idea."))),b.createElement(te,{xs:12,md:5},b.createElement(le,null,"Simply log in with your GitHub account to calculate and claim your credits."),b.createElement(ae,null),b.createElement(ie,null,b.createElement("img",{alt:"OSSInsight Logo",src:n(4302).Z,height:56}),b.createElement("img",{alt:"TiDB Logo",src:n(86033).Z,height:68})),b.createElement(m.Z,{id:"start-claim-trigger",sx:{width:["100%","100%","max-content"]},disabled:t,color:"primary",variant:"contained",onClick:()=>{r()}},"Claim Your Credits Now",b.createElement(u.Z,{sx:{ml:.5}})))),b.createElement(se,null,b.createElement("h1",null,b.createElement("span",null,"Free Database Credits")," for Open Source Heroes"),b.createElement("p",null,"TiDB loves open-source. We contribute code, sponsor projects, and appreciate developers who do so.",b.createElement("br",null),"As a token of our appreciation, we're offering up to $1000 free TiDB Serverless credits to fuel open-source hero's next big idea."),b.createElement("p",{className:"action-prompt"},"Log in with GitHub account to claim your credits."),b.createElement(m.Z,{id:"start-claim-trigger-mobile",disabled:t,color:"primary",variant:"contained",onClick:()=>{r()}},"Claim Now",b.createElement(u.Z,{sx:{ml:.5}}))))}const de=(0,w.ZP)("section")` +`;function ce(){const{user:e,isLoading:t,login:n}=(0,M.g)(),[r,o]=(0,b.useState)(!1);return r?b.createElement(D,null):b.createElement(Le,{loading:t,onClickAction:()=>{!function(e){if(!e)return!1;return e.startsWith("github|")}(null==e?void 0:e.sub)?n({connection:"github"}).then((()=>{o(!0)})):o(!0)}})}function Le(e){let{loading:t,onClickAction:r}=e;return b.createElement($,null,b.createElement(_,{container:!0,columnSpacing:8,rowSpacing:0},b.createElement(ee,{xs:12,md:7},b.createElement("div",null,b.createElement(re,null,b.createElement(ne,null,"Fuel Your Next Big Idea:"),b.createElement("br",null),"TiDB Serverless Credits for Open Source Heroes"),b.createElement(oe,null,"TiDB loves open-source. We contribute code, sponsor projects and deeply appreciate developers who actively contribute to the community.",b.createElement("br",null),"As a token of our appreciation, we're offering up to $2000 in free TiDB Serverless credits to fuel open-source hero's next big idea."))),b.createElement(te,{xs:12,md:5},b.createElement(le,null,"Simply log in with your GitHub account to calculate and claim your credits."),b.createElement(ae,null),b.createElement(ie,null,b.createElement("img",{alt:"OSSInsight Logo",src:n(4302).Z,height:56}),b.createElement("img",{alt:"TiDB Logo",src:n(86033).Z,height:68})),b.createElement(m.Z,{id:"start-claim-trigger",sx:{width:["100%","100%","max-content"]},disabled:t,color:"primary",variant:"contained",onClick:()=>{r()}},"Claim Your Credits Now",b.createElement(u.Z,{sx:{ml:.5}})))),b.createElement(se,null,b.createElement("h1",null,b.createElement("span",null,"Free Database Credits")," for Open Source Heroes"),b.createElement("p",null,"TiDB loves open-source. We contribute code, sponsor projects, and appreciate developers who do so.",b.createElement("br",null),"As a token of our appreciation, we're offering up to $2000 free TiDB Serverless credits to fuel open-source hero's next big idea."),b.createElement("p",{className:"action-prompt"},"Log in with GitHub account to claim your credits."),b.createElement(m.Z,{id:"start-claim-trigger-mobile",disabled:t,color:"primary",variant:"contained",onClick:()=>{r()}},"Claim Now",b.createElement(u.Z,{sx:{ml:.5}}))))}const de=(0,w.ZP)("section")` background-color: ${e=>{let{dark:t}=e;return t?"#141414":"#212122"}}; padding: 120px 12px; `,ue=(0,w.ZP)("div")` @@ -227,7 +227,7 @@ flex-wrap: wrap; padding: 0 24px; gap: 32px; -`;function He(e){let{value:t,children:n}=e;const{current:r,setCurrent:o}=(0,b.useContext)(Ze);return b.createElement(Fe.E.li,{style:{flex:1,position:"relative",whiteSpace:"nowrap",padding:"0",borderBottom:"2px solid #53524F"},initial:{color:"#53524F"},animate:t===r?{color:"#FFE895"}:{color:"#53524F"}},t===r&&b.createElement(Fe.E.div,{layout:!0,layoutId:"active",style:{zIndex:0,pointerEvents:"none",position:"absolute",left:0,bottom:-2,width:"100%",height:"2px",background:"#FFE895"}}),b.createElement("button",{style:{width:"100%",textAlign:"left",cursor:"pointer",fontSize:"25px",lineHeight:"31px",fontWeight:500,position:"relative",color:"currentcolor",background:"none",appearance:"none",border:"none"},type:"button",onClick:()=>o(t)},n))}var De=n(3905);const Be={toc:[]};function je(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Be,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Personal Website Hosting"),": Create websites or blogs using WordPress or Joomla."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"RAG Agent Prototyping"),": Develop RAG agents with your own knowledge base."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Minecraft Server"),": Run a personal Minecraft server, where you can play on with your friends all day.")))}je.isMDXComponent=!0;const Ae={toc:[]};function Te(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Ae,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("p",null,"TiDB Serverless is a highly scalable, vector search built-in, and cost-effective serverless database, which is dedicated to powering modern applications with simple solutions. ",(0,De.kt)("a",{href:"https://www.pingcap.com/tidb-serverless/?utm_source=ossinsight&utm_medium=referral&utm_campaign=plg_OSScontribution_credit_05",target:"_blank",rel:"noopener"},"Read more"),"."),(0,De.kt)("p",null,"With it, you can:"),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},"Build highly scalable applications with ease"),(0,De.kt)("li",{parentName:"ul"},"Leverage advanced features like vector search"),(0,De.kt)("li",{parentName:"ul"},"Enjoy seamless integration with what you use"),(0,De.kt)("li",{parentName:"ul"},"Pay only for what you use, and only beyond free credits")))}Te.isMDXComponent=!0;const Pe={toc:[]};function Se(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Pe,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Start small businesses"),": Power online stores, community forums, or customer feedback systems."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Data API Backends"),": Host small databases for managing small-scale workloads like API backend")))}Se.isMDXComponent=!0;const Ie={toc:[]};function Re(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Ie,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Scale startups"),": Deploy SaaS applications, analytics dashboards, or e-commerce platforms with of thousands users and continuous read/write operations.")))}Re.isMDXComponent=!0;const Ne={toc:[]};function ze(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Ne,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Data-heavy applications"),": Scale applications with distributed databases, handle enterprise-level systems, or power data-heavy industries like fintech or healthcare.")))}ze.isMDXComponent=!0;const Xe={toc:[]};function Oe(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Xe,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Power large-scale enterprises"),": Handle millions of users with high performance and reliability requirements."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Run mission-critical systems"),": Support complex applications like fintech, gaming, or healthcare solutions.")))}function Qe(){return b.createElement(de,{dark:!0},b.createElement(ue,null,b.createElement(me,null,"With TiDB Serverless\u26a1\ufe0f, you can:"),b.createElement(Ye,{invert:!0},Ge,b.createElement("article",null,b.createElement(Te,null),b.createElement(F,{mt:0,variant:"contained"},"Try Free"))),b.createElement(me,{sx:{mt:[20,20,40]}},"With TiDB Serverless credits \ud83d\udcb0 , you can:"),b.createElement(Ve,{defaultValue:"free"},b.createElement(We,null,b.createElement(be.S,null,Je.map((e=>b.createElement(He,{key:e.value,value:e.value},e.title))))),b.createElement(Ye,null,Ue,b.createElement(Fe.E.article,{layout:!0,style:{display:"flex",alignSelf:"stretch",flexDirection:"column",justifyContent:"space-between"}},b.createElement(Ze.Consumer,null,(e=>{let{init:t,current:n}=e;return b.createElement(Me.M,{presenceAffectsLayout:!0},Je.map((e=>(!t||n===e.value)&&b.createElement(Fe.E.div,{key:e.value,initial:{opacity:0,position:"absolute"},animate:{opacity:1,position:"relative"},exit:{opacity:0,position:"absolute"}},e.content))))})),b.createElement(m.Z,{variant:"contained",onClick:()=>{var e;window.scrollTo({top:0,behavior:"smooth"}),null==(e=document.getElementById("start-claim-trigger"))||e.click()}},"Claim your credits now"))))))}Oe.isMDXComponent=!0;const Je=[{value:"free",title:"Free",content:b.createElement(je,null)},{value:"$5",title:"$5-10",content:b.createElement(Se,null)},{value:"$10",title:"$10-100",content:b.createElement(Re,null)},{value:"$100",title:"$100-300",content:b.createElement(ze,null)},{value:"$300",title:"$300-1000",content:b.createElement(Oe,null)}],Ye=(0,w.ZP)("div")` +`;function He(e){let{value:t,children:n}=e;const{current:r,setCurrent:o}=(0,b.useContext)(Ze);return b.createElement(Fe.E.li,{style:{flex:1,position:"relative",whiteSpace:"nowrap",padding:"0",borderBottom:"2px solid #53524F"},initial:{color:"#53524F"},animate:t===r?{color:"#FFE895"}:{color:"#53524F"}},t===r&&b.createElement(Fe.E.div,{layout:!0,layoutId:"active",style:{zIndex:0,pointerEvents:"none",position:"absolute",left:0,bottom:-2,width:"100%",height:"2px",background:"#FFE895"}}),b.createElement("button",{style:{width:"100%",textAlign:"left",cursor:"pointer",fontSize:"25px",lineHeight:"31px",fontWeight:500,position:"relative",color:"currentcolor",background:"none",appearance:"none",border:"none"},type:"button",onClick:()=>o(t)},n))}var De=n(3905);const Be={toc:[]};function je(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Be,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Personal Website Hosting"),": Create websites or blogs using WordPress or Joomla."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"RAG Agent Prototyping"),": Develop RAG agents with your own knowledge base."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Minecraft Server"),": Run a personal Minecraft server, where you can play on with your friends all day.")))}je.isMDXComponent=!0;const Ae={toc:[]};function Te(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Ae,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("p",null,"TiDB Serverless is a highly scalable, vector search built-in, and cost-effective serverless database, which is dedicated to powering modern applications with simple solutions. ",(0,De.kt)("a",{href:"https://www.pingcap.com/tidb-serverless/?utm_source=ossinsight&utm_medium=referral&utm_campaign=plg_OSScontribution_credit_05",target:"_blank",rel:"noopener"},"Read more"),"."),(0,De.kt)("p",null,"With it, you can:"),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},"Build highly scalable applications with ease"),(0,De.kt)("li",{parentName:"ul"},"Leverage advanced features like vector search"),(0,De.kt)("li",{parentName:"ul"},"Enjoy seamless integration with what you use"),(0,De.kt)("li",{parentName:"ul"},"Pay only for what you use, and only beyond free credits")))}Te.isMDXComponent=!0;const Pe={toc:[]};function Se(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Pe,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Start small businesses"),": Power online stores, community forums, or customer feedback systems."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Data API Backends"),": Host small databases for managing small-scale workloads like API backend")))}Se.isMDXComponent=!0;const Ie={toc:[]};function Re(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Ie,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Scale startups"),": Deploy SaaS applications, analytics dashboards, or e-commerce platforms with of thousands users and continuous read/write operations.")))}Re.isMDXComponent=!0;const Ne={toc:[]};function ze(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Ne,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Data-heavy applications"),": Scale applications with distributed databases, handle enterprise-level systems, or power data-heavy industries like fintech or healthcare.")))}ze.isMDXComponent=!0;const Xe={toc:[]};function Oe(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Xe,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("ul",null,(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Power large-scale enterprises"),": Handle millions of users with high performance and reliability requirements."),(0,De.kt)("li",{parentName:"ul"},(0,De.kt)("strong",{parentName:"li"},"Run mission-critical systems"),": Support complex applications like fintech, gaming, or healthcare solutions.")))}function Qe(){return b.createElement(de,{dark:!0},b.createElement(ue,null,b.createElement(me,null,"With TiDB Serverless\u26a1\ufe0f, you can:"),b.createElement(Ye,{invert:!0},Ge,b.createElement("article",null,b.createElement(Te,null),b.createElement(F,{mt:0,variant:"contained"},"Try Free"))),b.createElement(me,{sx:{mt:[20,20,40]}},"With TiDB Serverless credits \ud83d\udcb0 , you can:"),b.createElement(Ve,{defaultValue:"free"},b.createElement(We,null,b.createElement(be.S,null,Je.map((e=>b.createElement(He,{key:e.value,value:e.value},e.title))))),b.createElement(Ye,null,Ue,b.createElement(Fe.E.article,{layout:!0,style:{display:"flex",alignSelf:"stretch",flexDirection:"column",justifyContent:"space-between"}},b.createElement(Ze.Consumer,null,(e=>{let{init:t,current:n}=e;return b.createElement(Me.M,{presenceAffectsLayout:!0},Je.map((e=>(!t||n===e.value)&&b.createElement(Fe.E.div,{key:e.value,initial:{opacity:0,position:"absolute"},animate:{opacity:1,position:"relative"},exit:{opacity:0,position:"absolute"}},e.content))))})),b.createElement(m.Z,{variant:"contained",onClick:()=>{var e;window.scrollTo({top:0,behavior:"smooth"}),null==(e=document.getElementById("start-claim-trigger"))||e.click()}},"Claim your credits now"))))))}Oe.isMDXComponent=!0;const Je=[{value:"free",title:"Free",content:b.createElement(je,null)},{value:"$5",title:"$5-10",content:b.createElement(Se,null)},{value:"$10",title:"$10-100",content:b.createElement(Re,null)},{value:"$100",title:"$100-300",content:b.createElement(ze,null)},{value:"$300",title:"$300-2000",content:b.createElement(Oe,null)}],Ye=(0,w.ZP)("div")` margin-top: 36px; > article { @@ -318,14 +318,13 @@ position: absolute; margin-top: 9px; } -`;var bn=n(93703),Fn=n(6971),Mn=n(61802);function Zn(){const{data:e}=(0,H.ZP)(["pingcap/tidb","gh:repo"],bn.getRepo),t=null==e?void 0:e.id,{data:n}=(0,Fn.WV)("analyze-repo-pr-overview",{repoId:t},!1,(0,Mn.nf)(t)),r=[{count:(null==e?void 0:e.watchers)??"-",description:"\u2728 GitHub Stars",color:"#73D9B4"},{count:(null==n?void 0:n.data[0].pull_requests)??"-",description:"\u270f\ufe0f Pull Requests",color:"#5DC1ED"},{count:873,description:"\ud83d\udc6b Contributors",color:"#5DC1ED"}];return b.createElement(de,null,b.createElement(ue,null,b.createElement(me,null,"TiDB \u2764\ufe0f Open Source"),b.createElement(pe,null,"We take pride in our ",b.createElement("strong",null,b.createElement("a",{href:"https://github.com/pingcap/tidb",target:"_blank",rel:"noreferrer"},"open-source"))," roots.",b.createElement("br",null),"With the developer community, we align our product, to make sure it perfectly fits modern application developer's needs."),b.createElement(Vn,null,An),b.createElement(Wn,null,An,b.createElement(Hn,null,r.map(((e,t)=>b.createElement(Dn,{key:t,style:{"--color1":e.color}},b.createElement(Bn,null,e.count),b.createElement(jn,null,e.description))))))))}const Vn=(0,w.ZP)("div")` +`;var bn=n(93703),Fn=n(6971),Mn=n(61802);function Zn(){const{data:e}=(0,H.ZP)(["pingcap/tidb","gh:repo"],bn.getRepo),t=null==e?void 0:e.id,{data:n}=(0,Fn.WV)("analyze-repo-pr-overview",{repoId:t},!1,(0,Mn.nf)(t)),r=[{count:(null==e?void 0:e.watchers)??"-",description:"\u2728 GitHub Stars",color:"#73D9B4"},{count:(null==n?void 0:n.data[0].pull_requests)??"-",description:"\u270f\ufe0f Pull Requests",color:"#5DC1ED"},{count:873,description:"\ud83d\udc6b Contributors",color:"#5DC1ED"}];return b.createElement(de,null,b.createElement(ue,null,b.createElement(me,null,"TiDB \u2764\ufe0f Open Source"),b.createElement(pe,null,"We take pride in our ",b.createElement("strong",null,"open-source")," roots.",b.createElement("br",null),"With the developer community, we align our product, to make sure it perfectly fits modern application developer's needs."),b.createElement(Vn,null,An),b.createElement(Wn,null,An,b.createElement(Hn,null,r.map(((e,t)=>b.createElement(Dn,{key:t,style:{"--color1":e.color}},b.createElement(Bn,null,e.count),b.createElement(jn,null,e.description)))))),b.createElement(pe,{sx:{mt:4}},b.createElement("a",{href:"https://github.com/pingcap/ossinsight",target:"_blank",rel:"noreferrer"},"Discover TiDB on GitHub ->"))))}const Vn=(0,w.ZP)("div")` display: block; margin-top: 120px; - + ${e=>{let{theme:t}=e;return{[t.breakpoints.up("md")]:K.iv` display: none; `}}} - > svg { display: block; margin: auto; @@ -370,7 +369,7 @@ ${e=>{let{theme:t}=e;return{[t.breakpoints.up("md")]:K.iv` font-size: 36px; line-height: 48px; - `}}} + `}}} `,jn=(0,w.ZP)("div")` color: var(--color1); font-size: 18px; @@ -381,7 +380,7 @@ ${e=>{let{theme:t}=e;return{[t.breakpoints.up("md")]:K.iv` font-size: 24px; line-height: 36px; - `}}} + `}}} `,An=b.createElement("svg",{width:"85.2",height:"84",viewBox:"0 0 142 140",fill:"none",xmlns:"http://www.w3.org/2000/svg"},b.createElement("g",{clipPath:"url(#clip0_4_501)"},b.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M70.7885 0C31.6443 0 0 32.0833 0 71.7748C0 103.502 20.2756 130.359 48.4032 139.864C51.9198 140.579 53.208 138.32 53.208 136.42C53.208 134.756 53.0921 129.052 53.0921 123.11C33.4004 127.388 29.2998 114.554 29.2998 114.554C26.1352 106.235 21.4463 104.097 21.4463 104.097C15.0013 99.7004 21.9158 99.7004 21.9158 99.7004C29.0651 100.176 32.8165 107.068 32.8165 107.068C39.1442 118 49.3407 114.911 53.4427 113.009C54.0281 108.375 55.9045 105.166 57.8969 103.384C42.1914 101.72 25.6672 95.5413 25.6672 67.9715C25.6672 60.1285 28.4782 53.7119 32.9324 48.7215C32.2297 46.9394 29.7678 39.5704 33.6366 29.7077C33.6366 29.7077 39.6137 27.806 53.0906 37.0752C58.8606 35.5041 64.8111 34.7049 70.7885 34.6981C76.7655 34.6981 82.8585 35.5308 88.4848 37.0752C101.963 27.806 107.94 29.7077 107.94 29.7077C111.809 39.5704 109.346 46.9394 108.643 48.7215C113.215 53.7119 115.91 60.1285 115.91 67.9715C115.91 95.5413 99.3855 101.601 83.5627 103.384C86.1418 105.642 88.3675 109.919 88.3675 116.693C88.3675 126.318 88.2515 134.043 88.2515 136.418C88.2515 138.32 89.5411 140.579 93.0564 139.866C121.184 130.357 141.46 103.502 141.46 71.7748C141.575 32.0833 109.815 0 70.7885 0Z",fill:"white"})),b.createElement("defs",null,b.createElement("clipPath",{id:"clip0_4_501"},b.createElement("rect",{width:"142",height:"140",fill:"white"})))),Tn={toc:[{value:"Why would TiDB commit to the open source community?",id:"why-would-tidb-commit-to-the-open-source-community",level:3},{value:"How do I claim my credits?",id:"how-do-i-claim-my-credits",level:3},{value:"How can I contact support if I face issues redeeming my credits?",id:"how-can-i-contact-support-if-i-face-issues-redeeming-my-credits",level:3}]};function Pn(e){let{components:t,...n}=e;return(0,De.kt)("wrapper",(0,y.Z)({},Tn,n,{components:t,mdxType:"MDXLayout"}),(0,De.kt)("h3",{id:"why-would-tidb-commit-to-the-open-source-community"},"Why would TiDB commit to the open source community?"),(0,De.kt)("p",null,"TiDB believes that open source fosters innovation, collaboration, and community-driven development. By actively contributing to and supporting open-source projects, TiDB aims to create a vibrant ecosystem that benefits all participants."),(0,De.kt)("h3",{id:"how-do-i-claim-my-credits"},"How do I claim my credits?"),(0,De.kt)("p",null,"Once you\u2019ve logged in with your GitHub Username and your credits have been calculated, you can redeem them by logging into your OssInsight or TiDB Cloud account. The credits will be automatically applied to your account. Make sure you use the the same Github account for both OSSInsight SSO login and TiDB Cloud SSO login."),(0,De.kt)("h3",{id:"how-can-i-contact-support-if-i-face-issues-redeeming-my-credits"},"How can I contact support if I face issues redeeming my credits?"),(0,De.kt)("p",null,"You can reach out to our support team through ",(0,De.kt)("a",{href:"mailto:ossinsight@pingcap.com"},(0,De.kt)("a",{parentName:"p",href:"mailto:ossinsight@pingcap.com"},"ossinsight@pingcap.com"))))}function Sn(){return b.createElement(de,null,b.createElement(ue,null,b.createElement(me,null,"FAQ"),b.createElement(Pn,null)))}function In(e){let{children:t}=e;const[n,r]=(0,b.useState)(!0);return b.createElement(zn,null,b.createElement(Xn,{initial:n?"collapsed":"flatten",animate:n?"collapsed":"flatten",variants:Rn,transition:{bounce:0}},t,b.createElement(On,{variants:Nn})),b.createElement(m.Z,{sx:{mt:2},onClick:()=>r((e=>!e))},n?"Read more":"Collapse"))}Pn.isMDXComponent=!0;const Rn={collapsed:{height:240},flatten:{height:"auto"}},Nn={collapsed:{boxShadow:"0 0 40px 40px #141414"},flatten:{boxShadow:"none"}},zn=(0,w.ZP)("div")` border: 1px solid #565656; background: #141414; diff --git a/assets/js/main.767960a3.js b/assets/js/main.e8ed193d.js similarity index 99% rename from assets/js/main.767960a3.js rename to assets/js/main.e8ed193d.js index c054bb21df0..2b009f33a82 100644 --- a/assets/js/main.767960a3.js +++ b/assets/js/main.e8ed193d.js @@ -1,4 +1,4 @@ -/*! For license information please see main.767960a3.js.LICENSE.txt */ +/*! For license information please see main.e8ed193d.js.LICENSE.txt */ (self.webpackChunkweb=self.webpackChunkweb||[]).push([[179],{88100:(e,t,n)=>{"use strict";n.d(t,{D3:()=>Js,tw:()=>Ks});var r=n(67294),o=n(25108),i=n(23085).lW,a=function(e,t){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},a(e,t)};var s=function(){return s=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}function y(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o0&&x[0]<4?1:+(x[0]+x[1])),!S&&te&&(!(x=te.match(/Edge\/(\d+)/))||x[1]>=74)&&(x=te.match(/Chrome\/(\d+)/))&&(S=+x[1]);var ae=S,se=!!Object.getOwnPropertySymbols&&!C((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&ae&&ae<41})),ce=se&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,le=Object,ue=ce?function(e){return"symbol"==typeof e}:function(e){var t=Q("Symbol");return X(t)&&ee(t.prototype,le(e))},de=String,pe=function(e){try{return de(e)}catch(e){return"Object"}},fe=TypeError,he=function(e){if(X(e))return e;throw fe(pe(e)+" is not a function")},me=function(e,t){var n=e[t];return null==n?void 0:he(n)},ge=TypeError,be=Object.defineProperty,ye=function(e,t){try{be(k,e,{value:t,configurable:!0,writable:!0})}catch(f){k[e]=t}return t},ve=k["__core-js_shared__"]||ye("__core-js_shared__",{}),_e=w((function(e){(e.exports=function(e,t){return ve[e]||(ve[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.24.0",mode:"global",copyright:"\xa9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.24.0/LICENSE",source:"https://github.com/zloirock/core-js"})})),we=Object,xe=function(e){return we(q(e))},Se=B({}.hasOwnProperty),Ee=Object.hasOwn||function(e,t){return Se(xe(e),t)},ke=0,Ce=Math.random(),Te=B(1..toString),Ae=function(e){return"Symbol("+(void 0===e?"":e)+")_"+Te(++ke+Ce,36)},Re=_e("wks"),Oe=k.Symbol,Pe=Oe&&Oe.for,ze=ce?Oe:Oe&&Oe.withoutSetter||Ae,Ze=function(e){if(!Ee(Re,e)||!se&&"string"!=typeof Re[e]){var t="Symbol."+e;se&&Ee(Oe,e)?Re[e]=Oe[e]:Re[e]=ce&&Pe?Pe(t):ze(t)}return Re[e]},Ie=TypeError,Ne=Ze("toPrimitive"),Le=function(e){var t=function(e,t){if(!K(e)||ue(e))return e;var n,r=me(e,Ne);if(r){if(void 0===t&&(t="default"),n=O(r,e,t),!K(n)||ue(n))return n;throw Ie("Can't convert object to primitive value")}return void 0===t&&(t="number"),function(e,t){var n,r;if("string"===t&&X(n=e.toString)&&!K(r=O(n,e)))return r;if(X(n=e.valueOf)&&!K(r=O(n,e)))return r;if("string"!==t&&X(n=e.toString)&&!K(r=O(n,e)))return r;throw ge("Can't convert object to primitive value")}(e,t)}(e,"string");return ue(t)?t:t+""},je=k.document,De=K(je)&&K(je.createElement),Me=function(e){return De?je.createElement(e):{}},Be=!T&&!C((function(){return 7!=Object.defineProperty(Me("div"),"a",{get:function(){return 7}}).a})),Fe=Object.getOwnPropertyDescriptor,Ue={f:T?Fe:function(e,t){if(e=Y(e),t=Le(t),Be)try{return Fe(e,t)}catch(e){}if(Ee(e,t))return N(!O(I.f,e,t),e[t])}},$e=T&&C((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype})),We=String,Ge=TypeError,He=function(e){if(K(e))return e;throw Ge(We(e)+" is not an object")},Ve=TypeError,qe=Object.defineProperty,Ye=Object.getOwnPropertyDescriptor,Xe={f:T?$e?function(e,t,n){if(He(e),t=Le(t),He(n),"function"==typeof e&&"prototype"===t&&"value"in n&&"writable"in n&&!n.writable){var r=Ye(e,t);r&&r.writable&&(e[t]=n.value,n={configurable:"configurable"in n?n.configurable:r.configurable,enumerable:"enumerable"in n?n.enumerable:r.enumerable,writable:!1})}return qe(e,t,n)}:qe:function(e,t,n){if(He(e),t=Le(t),He(n),Be)try{return qe(e,t,n)}catch(e){}if("get"in n||"set"in n)throw Ve("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},Ke=T?function(e,t,n){return Xe.f(e,t,N(1,n))}:function(e,t,n){return e[t]=n,e},Je=Function.prototype,Qe=T&&Object.getOwnPropertyDescriptor,et=Ee(Je,"name"),tt={EXISTS:et,PROPER:et&&"something"===function(){}.name,CONFIGURABLE:et&&(!T||T&&Qe(Je,"name").configurable)},nt=B(Function.toString);X(ve.inspectSource)||(ve.inspectSource=function(e){return nt(e)});var rt,ot,it,at=ve.inspectSource,st=k.WeakMap,ct=X(st)&&/native code/.test(at(st)),lt=_e("keys"),ut=function(e){return lt[e]||(lt[e]=Ae(e))},dt={},pt=k.TypeError,ft=k.WeakMap;if(ct||ve.state){var ht=ve.state||(ve.state=new ft),mt=B(ht.get),gt=B(ht.has),bt=B(ht.set);rt=function(e,t){if(gt(ht,e))throw new pt("Object already initialized");return t.facade=e,bt(ht,e,t),t},ot=function(e){return mt(ht,e)||{}},it=function(e){return gt(ht,e)}}else{var yt=ut("state");dt[yt]=!0,rt=function(e,t){if(Ee(e,yt))throw new pt("Object already initialized");return t.facade=e,Ke(e,yt,t),t},ot=function(e){return Ee(e,yt)?e[yt]:{}},it=function(e){return Ee(e,yt)}}var vt={set:rt,get:ot,has:it,enforce:function(e){return it(e)?ot(e):rt(e,{})},getterFor:function(e){return function(t){var n;if(!K(t)||(n=ot(t)).type!==e)throw pt("Incompatible receiver, "+e+" required");return n}}},_t=w((function(e){var t=tt.CONFIGURABLE,n=vt.enforce,r=vt.get,o=Object.defineProperty,i=T&&!C((function(){return 8!==o((function(){}),"length",{value:8}).length})),a=String(String).split("String"),s=e.exports=function(e,r,s){"Symbol("===String(r).slice(0,7)&&(r="["+String(r).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),s&&s.getter&&(r="get "+r),s&&s.setter&&(r="set "+r),(!Ee(e,"name")||t&&e.name!==r)&&(T?o(e,"name",{value:r,configurable:!0}):e.name=r),i&&s&&Ee(s,"arity")&&e.length!==s.arity&&o(e,"length",{value:s.arity});try{s&&Ee(s,"constructor")&&s.constructor?T&&o(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}var c=n(e);return Ee(c,"source")||(c.source=a.join("string"==typeof r?r:"")),e};Function.prototype.toString=s((function(){return X(this)&&r(this).source||at(this)}),"toString")})),wt=function(e,t,n,r){r||(r={});var o=r.enumerable,i=void 0!==r.name?r.name:t;if(X(n)&&_t(n,i,r),r.global)o?e[t]=n:ye(t,n);else{try{r.unsafe?e[t]&&(o=!0):delete e[t]}catch(e){}o?e[t]=n:Xe.f(e,t,{value:n,enumerable:!1,configurable:!r.nonConfigurable,writable:!r.nonWritable})}return e},xt=Math.ceil,St=Math.floor,Et=Math.trunc||function(e){var t=+e;return(t>0?St:xt)(t)},kt=function(e){var t=+e;return t!=t||0===t?0:Et(t)},Ct=Math.max,Tt=Math.min,At=function(e,t){var n=kt(e);return n<0?Ct(n+t,0):Tt(n,t)},Rt=Math.min,Ot=function(e){return e>0?Rt(kt(e),9007199254740991):0},Pt=function(e){return Ot(e.length)},zt=function(e){return function(t,n,r){var o,i=Y(t),a=Pt(i),s=At(r,a);if(e&&n!=n){for(;a>s;)if((o=i[s++])!=o)return!0}else for(;a>s;s++)if((e||s in i)&&i[s]===n)return e||s||0;return!e&&-1}},Zt={includes:zt(!0),indexOf:zt(!1)},It=Zt.indexOf,Nt=B([].push),Lt=function(e,t){var n,r=Y(e),o=0,i=[];for(n in r)!Ee(dt,n)&&Ee(r,n)&&Nt(i,n);for(;t.length>o;)Ee(r,n=t[o++])&&(~It(i,n)||Nt(i,n));return i},jt=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Dt=jt.concat("length","prototype"),Mt={f:Object.getOwnPropertyNames||function(e){return Lt(e,Dt)}},Bt={f:Object.getOwnPropertySymbols},Ft=B([].concat),Ut=Q("Reflect","ownKeys")||function(e){var t=Mt.f(He(e)),n=Bt.f;return n?Ft(t,n(e)):t},$t=function(e,t,n){for(var r=Ut(t),o=Xe.f,i=Ue.f,a=0;a1?arguments[1]:void 0,t.length)),r=cn(e);return mn?mn(t,r,n):gn(t,n,n+r.length)===r}});var _n=function(e,t){return B(k[e].prototype[t])};_n("String","startsWith");var wn=Array.isArray||function(e){return"Array"==$(e)},xn=TypeError,Sn=function(e){if(e>9007199254740991)throw xn("Maximum allowed index exceeded");return e},En=function(e,t,n){var r=Le(t);r in e?Xe.f(e,r,N(0,n)):e[r]=n},kn=function(){},Cn=[],Tn=Q("Reflect","construct"),An=/^\s*(?:class|function)\b/,Rn=B(An.exec),On=!An.exec(kn),Pn=function(e){if(!X(e))return!1;try{return Tn(kn,Cn,e),!0}catch(e){return!1}},zn=function(e){if(!X(e))return!1;switch(an(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return On||!!Rn(An,at(e))}catch(e){return!0}};zn.sham=!0;var Zn=!Tn||C((function(){var e;return Pn(Pn.call)||!Pn(Object)||!Pn((function(){e=!0}))||e}))?zn:Pn,In=Ze("species"),Nn=Array,Ln=function(e,t){return new(function(e){var t;return wn(e)&&(t=e.constructor,(Zn(t)&&(t===Nn||wn(t.prototype))||K(t)&&null===(t=t[In]))&&(t=void 0)),void 0===t?Nn:t}(e))(0===t?0:t)},jn=Ze("species"),Dn=Ze("isConcatSpreadable"),Mn=ae>=51||!C((function(){var e=[];return e[Dn]=!1,e.concat()[0]!==e})),Bn=("concat",ae>=51||!C((function(){var e=[];return(e.constructor={})[jn]=function(){return{foo:1}},1!==e.concat(Boolean).foo}))),Fn=function(e){if(!K(e))return!1;var t=e[Dn];return void 0!==t?!!t:wn(e)};Jt({target:"Array",proto:!0,arity:1,forced:!Mn||!Bn},{concat:function(e){var t,n,r,o,i,a=xe(this),s=Ln(a,0),c=0;for(t=-1,r=arguments.length;ta;)Xe.f(e,n=o[a++],r[n]);return e},Hn={f:Gn},Vn=Q("document","documentElement"),qn=ut("IE_PROTO"),Yn=function(){},Xn=function(e){return"
- - + + \ No newline at end of file diff --git a/blog/chat2query-tutorials/index.html b/blog/chat2query-tutorials/index.html index 0a123106f38..5f8b4e6de77 100644 --- a/blog/chat2query-tutorials/index.html +++ b/blog/chat2query-tutorials/index.html @@ -21,13 +21,13 @@ - - + +

Get insight from your own data by asking questions without SQL skills

Β· One min read
PingCAP
ChatGPT

This blog is written with help of ChatGPT.


To get insight of your own dataset without writing sql is easy, follow these steps:

  1. Sign up for a TiDB Cloud account at https://tidbcloud.com/ using your email, Google account, or GitHub account.

  2. Create a free Serverless Tier cluster in the TiDB Cloud web console.

  3. In the TiDB Cloud web console, click the "Import" button and follow the prompts to load a CSV file into your cluster from a local file or from Amazon S3.

    Import Data

  4. Use the web console's SQL editor(Chat2Query) to get insights from your data. But no worry, you don't need to write SQL, you could ask questions about your data in natural language.

    The magic is typing -- your question and press Enter, here is an example:

- - + + \ No newline at end of file diff --git a/blog/deep-insight-into-js-framework-2021/index.html b/blog/deep-insight-into-js-framework-2021/index.html index 976918d1e7c..7103b594bed 100644 --- a/blog/deep-insight-into-js-framework-2021/index.html +++ b/blog/deep-insight-into-js-framework-2021/index.html @@ -21,13 +21,13 @@ - - + +

Deep Insights into JavaScript Frameworks

Β· 3 min read
Jagger

In this chapter, we will share with you some of the top JavaScript Framework repos(JSF repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Note:

  1. You can move your cursor onto any of the repository bars/lines on the chart and get the exact number.
  2. The SQL commands above each chart are what we use on our TiDB Cloud to get the analytical results. Try those SQL commands by yourselves on TiDB Cloud with this 10-minute tutorial.

Star history of top JavaScript Framework repos since 2011​

The number of stars is often thought of as a measure of whether a GitHub repository is popular or not. We sort all JavaScript framework repositories from GitHub by the total number of historical stars since 2011. For visualizing the results more intuitively, we show the top 10 open source databases by using an interactive line chart.

Top 10 most starred JSF repos in 2021​

Top 10 JSF repos with the most PRs in 2021​

Which javascript framework have the widest feedback sources?​

The chart below displays the number of issue creators of leading javascript framework each year and their growth trend during the past ten years.

Top 20 developers contributing the most PRs to JSF repos in 2021​

Top 10 JSF repos with the highest YoY growth rate of stars in 2021​

Top 10 JSF repos with the lowest YoY growth rate of stars in 2021​

Top 10 most used programming languages in JSF repos in 2021​

Top 20 companies contributing the most to JSF repos in 2021​

Top 10 countries/regions contributing the most to JSF repos in 2021​

The Rankings of JSF repos measured by Z-score in 2021​

The analytical results displayed above are generated based on just one single metric of these three: stars, PRs, or contributors. Now, we will use the Z-score method to rank the JSF repos on GitHub.

This is the comprehensive ranking calculated by z-score:

- - + + \ No newline at end of file diff --git a/blog/deep-insight-into-lowcode-development-tools-2021/index.html b/blog/deep-insight-into-lowcode-development-tools-2021/index.html index 562a57ef8b6..e24befb083f 100644 --- a/blog/deep-insight-into-lowcode-development-tools-2021/index.html +++ b/blog/deep-insight-into-lowcode-development-tools-2021/index.html @@ -21,13 +21,13 @@ - - + +

Deep Insights into Low-code Development Tools

Β· 2 min read
Jagger

In this chapter, we will share with you some of the top low-code development tools repos (LCDT repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Note:

  1. You can move your cursor onto any of the repository bars/lines on the chart and get the exact number.
  2. The SQL commands above each chart are what we use on our TiDB Cloud to get the analytical results. Try those SQL commands by yourselves on TiDB Cloud with this 10-minute tutorial.

Star history of top LCDT repos since 2011​

Top 10 most starred LCDT repos in 2021​

Top 10 LCDT repos with the most PRs in 2021​

Top 20 developers contributing the most PRs to LCDT repos in 2021​

Top 10 LCDT repos with the highest YoY growth rate in 2021​

Top 10 LCDT repos with the lowest YoY growth rate in 2021​

Top 7 most used programming languages in LCDT repos in 2021​

Top 20 companies contributing the most to LCDT repos in 2021​

Top 20 countries/regions contributing the most to LCDT repos in 2021​

The rankings of LCDT repos measured by Z-score in 2021​

The analytical results displayed above are generated based on just one single metric of these three: stars, PRs, or contributors. Now, we will use the Z-score method to rank the LCDT repos on GitHub.

This is the comprehensive ranking calculated by z-score:

- - + + \ No newline at end of file diff --git a/blog/deep-insight-into-open-source-databases/index.html b/blog/deep-insight-into-open-source-databases/index.html index 54caefb2bf6..25ecc0c3dcd 100644 --- a/blog/deep-insight-into-open-source-databases/index.html +++ b/blog/deep-insight-into-open-source-databases/index.html @@ -21,13 +21,13 @@ - - + +

Deep Insight Into Open Source Databases

Β· 6 min read
Jagger

On this page, we will share with you many deep insights into open source databases, such as the database popularity, database contributors, coding vitality, community feedback and so on.

We’ll also share the SQL commands that generate all these analytical results above each chart, so you can use them on your own on TiDB Cloud following this 10-minute tutorial.

Database Popularity​

The popularity trend in the past ten years​

The chart below displays the accumulated number of stars open source databases gained respectively each year and their star growth trend during the past ten years.

Which databases experienced a popularity boom in 2021?​

The chart below displays top 10 open source databases with the highest year-over-year growth rate of stars in 2021 alone.

Which databases barely gained influence in 2021?​

The chart below displays top 10 open source databases with the lowest year-over-year growth rate of stars in 2021 alone.

Which databases were the new favorites in 2021?​

The chart below displays the top open source databases that gained the most stars in 2021.

Which countries & regions favor databases the most?​

The map below describes the geographical distribution of database stargazers. The larger and darker the color spots on this map, the more database stargazers are distributed.

Which companies like databases the most?​

The pie chart below describes which company those database stargazers work for and how many stargazers those companies employ.

Database contributors​

Which countries & regions led the database contributions in 2021?​

The map below shows the geographic distribution of developers who pushed commits, resolved issues, or submitted pull requests to open source databases in 2021. The larger and darker the color spots on this map, the more database contributors were distributed.

Which companies led the database contributions in 2021?​

The chart below shows the employment distribution of developers who pushed commits, resolved issues, or submitted pull requests to open source databases in 2021.

Who were the leading individual contributors in 2021?​

The chart below lists 20 most active individual contributors to open source databases in 2021 based on how many pull requests they opened.

When did developers contribute?​

The heat map below describes the number of push events that occur at a particular point of time (UTC). For each day and hour, the colored boxes indicate the number of push events. The lighter the color, the fewer push events; the darker the color, the more push events. You can learn from this heat map what time is the busiest for contributors, and roughly conclude which country or region distributes the most contributors.

Database coding vitality​

Which databases vibrantly maintained and updated itself in 2021?​

The chart below displays top 10 open source databases that received the most pull requests in 2021 alone.

Database user feedback​

Which databases have the widest feedback sources?​

The chart below displays the number of issue creators of leading open source databases each year and their growth trend during the past ten years.

Which databases gave the fastest first response in 2021?​

The bar chart below shows the median time each open source database needs to make its first response to an issue.

Which databases were the most efficient in feedback resolution in 2021?​

The bar chart below shows the median time each open source database needs to close an issue.

Who gave the feedback in 2021?​

The map below shows the geographical distribution of developers who submitted issues to open source databases. The larger and darker the color spots on this map, the more issue openers were distributed.

Community Robustness​

Which databases have the most heavy contributors?​

The chart below displays the number of heavy contributors (who submitted more than 100 pull requests), medium contributors (who submitted more than 10 but less than 100 pull requests), and light contributors (who submitted less than 10 pull requests) of leading open source databases. The chart also ranks these databases based on their number of heavy contributors.

Click here to expand SQL

Which databases are heavily contributed?​

The chart below displays the number of pull requests submitted by heavy contributors, medium contributors, and light contributors. The chart also ranks these databases based on the number of pull requests submitted by heavy contributors.

Click here to expand SQL

How fast did databases approve their code changes?​

The chart below shows the median time each open source database needs from submitting to merging a pull request.

Database programming languages​

Which languages were most favored in 2021?​

The chart below shows the top programming languages used in pull requests submitted to open source databases in 2021.

- - + + \ No newline at end of file diff --git a/blog/deep-insight-into-programming-languages-2021/index.html b/blog/deep-insight-into-programming-languages-2021/index.html index e05fa2297aa..41e1c6f018f 100644 --- a/blog/deep-insight-into-programming-languages-2021/index.html +++ b/blog/deep-insight-into-programming-languages-2021/index.html @@ -21,13 +21,13 @@ - - + +

Deep Insights into Programming Languages

Β· 2 min read
Jagger

In this chapter, we will share with you some of the top programming language repos (PL repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Note:

  1. You can move your cursor onto any of the repository bars/lines on the chart and get the exact number.
  2. The SQL commands above each chart are what we use on TiDB Cloud to get the analytical results. Try those SQL commands by yourselves on TiDB Cloud with this 10-minute tutorial.

Star history of top PL repos since 2011​

Top 10 most starred PL repos in 2021​

Top 10 PL repos with the most PRs in 2021​

Top 20 developers contributed the most PRs to PL repos in 2021​

Top 9 PL repos with the highest YoY growth rate of stars in 2021​

Top 10 PL repos with the lowest YoY growth rate of stars in 2021​

Top 20 companies contributing the most to PL repos in 2021​

Top countries or regions contributing to OSS programming languages​

The rankings of PL repos measured by Z-score in 2021​

The analytical results displayed above are generated based on just one single metric of these three: stars, PRs, or contributors. Now, we will use the Z-score method to rank PL repos on GitHub.

This is the comprehensive ranking calculated by z-score:

- - + + \ No newline at end of file diff --git a/blog/deep-insight-into-web-framework-2021/index.html b/blog/deep-insight-into-web-framework-2021/index.html index 0074f72eebb..369e36e47c1 100644 --- a/blog/deep-insight-into-web-framework-2021/index.html +++ b/blog/deep-insight-into-web-framework-2021/index.html @@ -21,13 +21,13 @@ - - + +

Deep Insights into Web Frameworks

Β· 3 min read
Jagger

In this chapter, we will share with you some of the top Web Framework repos (WF repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Note:

  1. You can move your cursor onto any of the repository bars/lines on the chart and get the exact number.
  2. The SQL commands above each chart are what we use on our TiDB Cloud to get the analytical results. Try those SQL commands by yourselves on TiDB Cloud with this 10-minute tutorial.

Star history of top Web Framework repos since 2011​

The number of stars is often thought of as a measure of whether a GitHub repository is popular or not. We sort all web framework repositories from GitHub by the total number of historical stars since 2011. For visualizing the results more intuitively, we show the top 10 open source databases by using an interactive line chart.

Top 10 most starred Web Framework repos in 2021​

Top 10 Web Framework repos with the most PRs in 2021​

Top 20 developers contributed the most PRs to Web Framework repos in 2021​

Top 20 Web Framework repos with the highest YoY growth rate of stars in 2021​

Top 10 Web Framework repos with the lowest YoY growth rate of stars in 2021​

Top 10 most used programming languages in Web Framework repos in 2021​

Top 20 companies contributing the most to Web Framework repos in 2021​

Top 10 countries/regions contributing the most to Web Framework repos in 2021​

The Rankings of Web Framework repos measured by Z-score in 2021​

The analytical results displayed above are generated based on just one single metric of these three: stars, PRs, or contributors. Now, we will use the Z-score method to rank the WF repos on GitHub.

This is the comprehensive ranking calculated by z-score:

- - + + \ No newline at end of file diff --git a/blog/explore-deep-in-4.6-billion-github-events/index.html b/blog/explore-deep-in-4.6-billion-github-events/index.html index a27df400dc8..dc03de4e91d 100644 --- a/blog/explore-deep-in-4.6-billion-github-events/index.html +++ b/blog/explore-deep-in-4.6-billion-github-events/index.html @@ -21,13 +21,13 @@ - - + +

Explore Deep in 4.6 Billion GitHub Events

Β· 10 min read
Fendy Feng

4.6 billion is literally an astronomical figure. The richest star map of our galaxy, brought by Gaia space observatory, includes just under 2 billion stars. What does a view of 4.6 billion GitHub events really look like? What secrets and values can be discovered in such an enormous amount of data?

Here you go: OSSInsight.io can help you find the answer. It’s a useful insight tool that can give you the most updated open source intelligence, and help you deeply understand any single GitHub project or quickly compare any two projects by digging deep into 4.6 billion GitHub events in real time. Here are some ways you can play with it.

Compare any two GitHub projects​

Do you wonder how different projects have performed and developed over time? Which project is worthy of more attention? OSSInsight.io can answer your questions via the Compare Projects page.

Let’s take the Kubernetes repository (K8s) and Docker’s Moby repository as examples and compare them in terms of popularity and coding vitality.

Popularity​

To compare the popularity of two repositories, we use multiple metrics including the number of stars, the growth trend of stars over time, and stargazers’ geographic and employment distribution.

Number of stars​

The line chart below shows the accumulated number of stars of K8s and Moby each year. According to the chart, Moby was ahead of K8s until late 2019. The star growth of Moby slowed after 2017 while K8s has kept a steady growth pace.

The star history of K8s and Moby

Geographical distribution of stargazers​

The map below shows the stargazers’ geographical distribution of Moby and K8s. As you can see, their stargazers are scattered around the world with the majority coming from the US, Europe, and China.

The geographical distribution of K8s and Moby stargazers

Employment distribution of stargazers​

The chart below shows the stargazers’ employment of K8s (red) and Moby (dark blue). Both of their stargazers work in a wide range of industries, and most come from leading dotcom companies such as Google, Tencent, and Microsoft. The difference is that the top two companies of K8s’ stargazers are Google and Microsoft from the US, while Moby’s top two followers are Tencent and Alibaba from China.

The employment distribution of K8s and Moby stargazers

Coding vitality​

To compare the coding vitality of two GitHub projects, we use many metrics including the growth trend of pull requests (PRs), the monthly number of PRs, commits and pushes, and the heat map of developers’ contribution time.

Number of commits and pushes​

The bar chart below shows the number of commits and pushes submitted to K8s (top) and Moby (bottom) each month after their inception. Generally speaking, K8s has more pushes and commits than Moby, and their number grew stably until 2020 followed by a slowdown afterwards. Moby’s monthly pushes and commits had a minor growth between 2015 and 2017, and then barely increased after 2018.

The monthly pushes and commits of K8s (top) and Moby (bottom)

Number of PRs​

The charts below show the monthly and accumulated number of PRs of the two repositories. As you can see, K8s has received stable and consistent PR contributions ever since its inception and its accumulated number of PRs has also grown steadily. Moby had vibrant PR submissions before late 2017, but started to drop afterwards. Its accumulated number of PRs reached a plateau in 2017, which has remained the case ever since.

The monthly and accumulated PR number of K8s (top) and Moby (bottom)

Developers’ contribution time​

The following heat map shows developers’ contribution time for K8s (left) and Moby (right). Each square represents one hour in a day. The darker the color, the more contributions occur during that time. K8s has many more dark parts than Moby, and K8s’ contributions occur almost 24 hours a day, 7 days a week. K8s definitely has more dynamic coding activities than Moby.

Heat map of developers’ contribution time of K8s (left) and Moby (right)

Taken together, these metrics show that while both K8s and Moby are popular across industries world-wide, K8s has more vibrant coding activities than Moby. K8s is continuously gaining popularity and coding vitality while Moby is falling in both over time.

Popularity and coding vitality are just two dimensions to compare repositories. If you want to discover more insights or compare other projects you are interested in, feel free to visit the Compare page and explore it for yourself.

Of course, you can use this same page to deeply explore any single GitHub project and gain the most up-to-date insights about them. The key metrics and the corresponding changes are presented in a panoramic view. More in-depth analytics such as code changes by PR size groups and PR lines are also available. Explore it for yourself and you’d be surprised. Have fun.

Panoramic view of key GitHub metrics (K8s as an example)

Total PR number each month/PR groups (K8s as an example)

The number of lines of code change each month (K8s as an example)

Key open source insights​

OSSInsight.io does more than explore or compare repositories. It gives you historical, real-time, and custom open source insights. In this section, we’ll share some key insights in open source databases and programming languages. If you want to gain insights in other areas, you can explore the Insights page for yourself.

Note: If you want to get those analytical results by yourself, you can execute the SQL commands above each chart on TiDB Cloud with ease following this 10-minute tutorial.

Rust: the most active programming language​

Rust was first released in 2012 and has been among the leading programming languages for 10 years. It has the most active repository with a total of 103,047 PRs at the time of writing.

Click here to show SQL commands

SELECT
programming_language_repos.name AS repo_name,
COUNT(*) AS num
FROM github_events
JOIN programming_language_repos ON programming_language_repos.id = github_events.repo_id
WHERE type = 'PullRequestEvent'
AND action = 'opened'
GROUP BY 1
ORDER BY 2 DESC
LIMIT 10

PR numbers of the leading programming languages

Go: the new favorite and the fastest growing programming language​

According to OSSInsight.io, 10 programming languages dominate the open source community. Go is the most popular with 108,317 stars, followed by Node and TypeScript. Go is also the fastest growing language in popularity.

Click here to show SQL commands

WITH repo_stars AS (
SELECT
repo_id,
ANY_VALUE(repos.name) AS repo_name,
COUNT(distinct actor_login) AS stars
FROM github_events
JOIN programming_language_repos repos ON repos.id = github_events.repo_id
WHERE type = 'WatchEvent'
GROUP BY 1
), top_10_repos AS (
SELECT
repo_id, repo_name, stars
FROM repo_stars rs
ORDER BY stars DESC
LIMIT 10
), tmp AS (
SELECT
event_year,
tr.repo_name AS repo_name,
COUNT(*) AS year_stars
FROM github_events
JOIN top_10_repos tr ON tr.repo_id = github_events.repo_id
WHERE type = 'WatchEvent' AND event_year <= 2021
GROUP BY 2, 1
ORDER BY 1 ASC, 2
), tmp1 AS (
SELECT
event_year,
repo_name,
SUM(year_stars) OVER(partition by repo_name order by event_year ASC) as stars
FROM tmp
ORDER BY event_year ASC, repo_name
)
SELECT event_year, repo_name, stars FROM tmp1

The star growth trends of leading programming languages

Microsoft and Google: the top two programing languages contributors​

As world-renowned high-tech companies, Microsoft and Google take the lead in open source language contributions with a total of 1,443 and 947 contributors respectively at the time of writing.

Click here to show SQL commands

SELECT
TRIM(LOWER(REPLACE(u.company, '@', ''))) AS company,
COUNT(DISTINCT actor_id) AS num
FROM
github_events github_events
JOIN programming_language_repos db ON db.id = github_events.repo_id
JOIN users u ON u.login = github_events.actor_login
WHERE
github_events.type IN (
'IssuesEvent', 'PullRequestEvent','IssueCommentEvent',
'PullRequestReviewCommentEvent', 'CommitCommentEvent',
'PullRequestReviewEvent'
)
AND u.company IS NOT NULL
AND u.company != ''
AND u.company != 'none'
GROUP BY 1
ORDER BY 2 DESC
LIMIT 20;

Companies who contribute the most to programing languages

Elasticsearch draws the most attention​

Elasticsearch was one of the first open source databases. It is the most liked database with 64,554 stars, followed by Redis and Prometheus. From 2011 to 2016, Elasticseasrch and Redis shared the top spot until Elasticsearch broke away in 2017.

Click here to show SQL commands

WITH repo_stars AS (
SELECT
repo_id,
ANY_VALUE(repos.name) AS repo_name,
COUNT(distinct actor_login) AS stars
FROM github_events
JOIN db_repos repos ON repos.id = github_events.repo_id
WHERE type = 'WatchEvent'
GROUP BY 1
), top_10_repos AS (
SELECT
repo_id, repo_name, stars
FROM repo_stars rs
ORDER BY stars DESC
LIMIT 10
), tmp AS (
SELECT
event_year,
tr.repo_name AS repo_name,
COUNT(*) AS year_stars
FROM github_events
JOIN top_10_repos tr ON tr.repo_id = github_events.repo_id
WHERE type = 'WatchEvent' AND event_year <= 2021
GROUP BY 2, 1
ORDER BY 1 ASC, 2
), tmp1 AS (
SELECT
event_year,
repo_name,
SUM(year_stars) OVER(partition by repo_name order by event_year ASC) as stars
FROM tmp
ORDER BY event_year ASC, repo_name
)
SELECT event_year, repo_name, stars FROM tmp1

The star growth trend of leading databases

China: the number one fan of open source databases​

China has the most open source database followers with 11,171 stargazers of database repositories, followed by the US and Europe.

Click here to show SQL commands

select upper(u.country_code) as country_or_area, count(*) as count, count(*) / max(s.total) as percentage
from github_events
use index(index_github_events_on_repo_id)
left join users u ON github_events.actor_login = u.login
join (
-- Get the number of people has the country code.
select count(*) as total
from github_events
use index(index_github_events_on_repo_id)
left join users u ON github_events.actor_login = u.login
where repo_id in (507775, 60246359, 17165658, 41986369, 16563587, 6838921, 108110, 166515022, 48833910, 156018, 50229487, 20089857, 5349565, 6934395, 6358188, 11008207, 19961085, 206444, 30753733, 105944401, 31006158, 99919302, 50874442, 84240850, 28738447, 44781140, 372536760, 13124802, 146459443, 28449431, 23418517, 206417, 9342529, 19257422, 196353673, 172104891, 402945349, 11225014, 2649214, 41349039, 114187903, 20587599, 19816070, 69400326, 927442, 24494032) and github_events.type = 'WatchEvent' and u.country_code is not null
) s
where repo_id in (507775, 60246359, 17165658, 41986369, 16563587, 6838921, 108110, 166515022, 48833910, 156018, 50229487, 20089857, 5349565, 6934395, 6358188, 11008207, 19961085, 206444, 30753733, 105944401, 31006158, 99919302, 50874442, 84240850, 28738447, 44781140, 372536760, 13124802, 146459443, 28449431, 23418517, 206417, 9342529, 19257422, 196353673, 172104891, 402945349, 11225014, 2649214, 41349039, 114187903, 20587599, 19816070, 69400326, 927442, 24494032) and github_events.type = 'WatchEvent' and u.country_code is not null
group by 1
order by 2 desc;

The geographical distribution of open source database stargazers

OSSInsight.io also allows you to create your own custom insights into any GitHub repository created after 2011. You’re welcome to visit the Insights page to explore more.

Run your own analytics with TiDB Cloud​

All the analytics on OSSInsight.io are powered by TiDB Cloud, a fully-managed database as a service. If you want to run your own analytics and get your own insights, sign up for a TiDB Cloud account and try it for yourself with this 10-minute tutorial.

Contact us​

Do you find OSSInsight.io useful and fun to work with? Do you have any question or feedback to share with us? Feel free to file an issue on GitHub or follow us on Twitter to get the latest information. You’re also welcome to share this insight tool with your friends.

- - + + \ No newline at end of file diff --git a/blog/github-data-is-booming/index.html b/blog/github-data-is-booming/index.html index 8df2ecdd8d2..0a739c82fde 100644 --- a/blog/github-data-is-booming/index.html +++ b/blog/github-data-is-booming/index.html @@ -21,13 +21,13 @@ - - + +

GitHub Events Are Booming! Are Bots the Reason?

Β· 5 min read
Mia Zhou
Wink Yao
Caitin Chen

The OSS Insight website displays the data changes of GitHub events in real time. GitHub events are activities triggered by user actions on GitHub, for example, commenting and forking a repository. In nearly seven weeks, GitHub events increased by about 150 million, from 4.7 billion to 4.85 billion. GitHub events are booming!

This post dives deeply into GitHub event trending, why GitHub events are surging, and whether GitHub's architecture can handle the increasing load.

Historical data analysis​

The OSS Insight database includes all the GitHub events since 2011. When we plot the number of events by year, we can see that since 2018 they have been increasing rapidly.


GitHub event trending

GitHub event trending

The figure below shows how long it takes to grow each billion events in GitHub.


The time to reach a billion GitHub events

The time to reach a billion GitHub events

It's taking less and less for GitHub to generate 1 billion events. It took more than 6 years for the first billion events and only 13 months for the last billion!

The secret behind the exponential growth of GitHub events​

GitHub Actions was released in October 2018. Since August 2019, it has supported continuous integration and continuous delivery (CI/CD), and it has been free for open source projects. Therefore, projects hosted on GitHub can automate their own development workflows, and a large number of automation-related bot applications have appeared on GitHub Marketplace. Could GitHub events' data growth be related to these?

To find the answer, we divided the events into data from humans and data from bots and plotted them with the following histogram. The blue columns represent the human data, and the yellow columns represent the bot data.


Bot events vs. human events

Bot events vs. human events

As you can see, the proportion of GitHub bot events has increased each year. In 2015, they were only 1.23% of all events. In early July of this year, they reached 13.2%. To show the data changes of bot events more clearly, we made the following line chart.


Bot event trending

Bot event trending

This figure shows that since 2019, bot events have been grown faster than before. As Mini256, a TiDB community contributor said in Love, Code, and Robot β€” Explore robots in the world of code:

For now, rough statistics find that there are more than 95,620 bots on GitHub. The number doesn't seem like so much, but wait...

These 95 thousand bot accounts generated 603 million events. These events account for 12.82% of all public events on GitHub, and these GitHub robots have served over 18 million open source repositories.

Bots are playing an increasingly important role on GitHub. Many projects are handing over automated work to bots. We expect that GitHub events will grow faster in the future.

When will GitHub reach 10 billion events?​

How many GitHub events will there be by the end of 2022? We fit predictions to GitHub historical data.


Human event fit (left) vs. bot event fit (right)

Human event fit (left) vs. bot event fit (right)

It's estimated that by the end of 2022, GitHub events will reach 5.36 billion.


github-event-prediction
GitHub event prediction

According to this prediction, GitHub events will exceed 10 billion in February 2025.


gitub-events-exceed-10-billion
GitHub events will exceed 10 billion in 2025

Can MySQL sharding support such a huge amount of data?​

GitHub uses MySQL as the main storage for all non-git warehouse data. The rapid growth of data volume poses a great challenge to GitHub's high availability. In March 2022, GitHub had 3 service disruptions, each lasting 2-5 hours. The official investigation report shows the MySQL database caused the outages. During peak load periods, the GitHub mysql1 database (the main database cluster in GitHub) load increased. Therefore, database access reached the maximum number of connections. This affected the performance of many GitHub services and features.

In fact, over the past few years GitHub has optimized its databases. For example, it added clusters to support platform growth and partitioned the main database. But these improvements did not fundamentally solve the problem. In the near future, GitHub events will exceed 5 billion, or even 10 billion. Can MySQL sharding support such data surge?

Data sources​

All the analysis data in this article comes from OSS Insight, a tool based on TiDB to analyze and gain insights into GitHub events data.

You can use it to easily get insights about developers and repositories based on billions of GitHub events. You can also get the latest and historical rankings and trends in technical fields.


The OSS Insight website

The OSS Insight website

- - + + \ No newline at end of file diff --git a/blog/how-it-works/index.html b/blog/how-it-works/index.html index c67cc4f5bea..dc1ef5bc1a8 100644 --- a/blog/how-it-works/index.html +++ b/blog/how-it-works/index.html @@ -21,13 +21,13 @@ - - + +

Data Preparation for Analytics

Β· 5 min read
hooopo

Data​

All the data we use here on this website sources from GH Archive, a non-profit project that records and archives all GitHub events data since 2011. The total data volume archived by GH Archive can be up to 4 billion rows. We download the json file on GH Archive and convert it into csv format via Script, and finally load it into the TiDB cluster in parallel through TiDB-Lightning.

In this section, we will explain step by step how we conduct this process.

  1. Prepare the data in csv format for TiDB Lighting.
β”œβ”€β”€ gharchive_dev.github_events.000000000000.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000001.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000002.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000003.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000004.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000005.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000006.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000007.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000008.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000009.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000010.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000011.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000012.csv
β”œβ”€β”€ gharchive_dev.github_events.000000000013.csv
  1. Configure the TiDB Lightning as follows.
cat tidb-lightning.toml
[mydumper.csv]
separator = ','
delimiter = '"'
header = true
not-null = false
backslash-escape = true
trim-last-separator = false

[tikv-importer]
backend = "local"
sorted-kv-dir = "/kvdir/"

disk-quota = "1.5TiB"

[mydumper]
data-source-dir = "/csv_dir/"
strict-format = false
no-schema = true

[tidb]
host = "xxx"
port = 3306
user = "github_events"
password = "******"

[lightning]
check-requirements = false
region-concurrency = 32
meta-schema-name = "gharchive_meta"
  1. Load the data into the TiDB cluster.
nohup tidb-lightning -config ./tidb-lightning.toml > nohup.out
  1. Convert the unstructured json file provided by GH Archive into structured data.
gharchive_dev> desc github_events;
+--------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------------+--------------+------+-----+---------+-------+
| id | bigint(20) | YES | MUL | <null> | |
| type | varchar(255) | YES | MUL | <null> | |
| created_at | datetime | YES | MUL | <null> | |
| repo_id | bigint(20) | YES | MUL | <null> | |
| repo_name | varchar(255) | YES | MUL | <null> | |
| actor_id | bigint(20) | YES | MUL | <null> | |
| actor_login | varchar(255) | YES | MUL | <null> | |
| actor_location | varchar(255) | YES | | <null> | |
| language | varchar(255) | YES | MUL | <null> | |
| additions | bigint(20) | YES | MUL | <null> | |
| deletions | bigint(20) | YES | MUL | <null> | |
| action | varchar(255) | YES | MUL | <null> | |
| number | int(11) | YES | | <null> | |
| commit_id | varchar(255) | YES | MUL | <null> | |
| comment_id | bigint(20) | YES | MUL | <null> | |
| org_login | varchar(255) | YES | MUL | <null> | |
| org_id | bigint(20) | YES | MUL | <null> | |
| state | varchar(255) | YES | | <null> | |
| closed_at | datetime | YES | MUL | <null> | |
| comments | int(11) | YES | MUL | <null> | |
| pr_merged_at | datetime | YES | MUL | <null> | |
| pr_merged | tinyint(1) | YES | | <null> | |
| pr_changed_files | int(11) | YES | MUL | <null> | |
| pr_review_comments | int(11) | YES | MUL | <null> | |
| pr_or_issue_id | bigint(20) | YES | MUL | <null> | |
| event_day | date | YES | MUL | <null> | |
| event_month | date | YES | MUL | <null> | |
| author_association | varchar(255) | YES | | <null> | |
| event_year | int(11) | YES | MUL | <null> | |
| push_size | int(11) | YES | | <null> | |
| push_distinct_size | int(11) | YES | | <null> | |
+--------------------+--------------+------+-----+---------+-------+
  1. With structured data at hand, we can start to make further analysis with TiDB Cloud. Execute SQL commands to generate analytical results. For example, you can execute SQL commands below to output the top 10 most starred JavaScript framework repos in 2021.
  SELECT js.name, count(*) as stars 
FROM github_events
JOIN js_framework_repos js ON js.id = github_events.repo_id
WHERE type = 'WatchEvent' and event_year = 2021
GROUP BY 1
ORDER BY 2 DESC
LIMIT 10;
+-------------------+-------+
| name | stars |
+-------------------+-------+
| facebook/react | 22830 |
| sveltejs/svelte | 18573 |
| vuejs/vue | 18015 |
| angular/angular | 11037 |
| alpinejs/alpine | 6993 |
| preactjs/preact | 2965 |
| hotwired/stimulus | 1355 |
| marko-js/marko | 1006 |
| neomjs/neo | 826 |
| tastejs/todomvc | 813 |
+-------------------+-------+

We have analyzed all the GitHub projects regarding databases, JavaScript frameworks, programming languages, web frameworks, and low-code development tools, and provided valuable insights in 2021, in real time, and custom insights. If the repository you care about is not included here, you're welcome to submit your PR here. If you want to gain more insights into other areas, you can try TiDB Cloud by yourselves with this 10-minute tutorial.

Below are the areas of GitHub projects we have analyzed.

gharchive_dev> show tables;
+-----------------------------+
| Tables_in_gharchive_dev |
+-----------------------------+
| cn_repos |
| css_framework_repos |
| db_repos |
| github_events |
| js_framework_repos |
| nocode_repos |
| programming_language_repos |
| static_site_generator_repos |
| web_framework_repos |
+-----------------------------+
info

🌟 Details in how OSS Insight works​

Go to read Use TiDB Cloud to Analyze GitHub Events in 10 Minutes and use the Serverless Tier TiDB Cloud Cluster.

You can find the reason How we implement OSS Insight ? as well!

- - + + \ No newline at end of file diff --git a/blog/how-to-build-oss-comparison-gpt/index.html b/blog/how-to-build-oss-comparison-gpt/index.html index e692eda0f50..b6e00fb97c4 100644 --- a/blog/how-to-build-oss-comparison-gpt/index.html +++ b/blog/how-to-build-oss-comparison-gpt/index.html @@ -21,13 +21,13 @@ - - + +

Configurations for building "Open Source Benchmark" GPTs

Β· 18 min read
sykp241095
ChatGPT

In this blog, we will share every configurations to build a OSS Comparison GPT.

GPTs Configurations​

Name​

Open Source Benchmark

Description​

Compare open-source softwares

Instructions​

You are a data analysis expert. 
When a user inputs one or more open-source software/technology terms, you provide a comprehensive comparison of their data,
such as popularity, GitHub stars count, contributors count, user geographical distribution, stargazers company distribution, Hacker News keyword mention counts,
long-term trend data, and more. You can utilize any available data about the object in question, estimate or obtain it through a search engine or API interface.
Currently, you have the following APIs at your disposal:

1. GitHub API for getting repo basic info
2. OSS Insight API for star history and stargazer's distribution
3. Hackernews mentions per_year API
4. OSS Insight star history chart API (show me with a <img> label)
5. OSS Insight API for stargazers company distribution

Here's a step-by-step process:

Identify which API to use based on the data you need.
- you goal is to think more metrics according exist API.
- each step you output your thought
- your action
- at least 8 metrics you should give
Output the data in a markdown table for easy comparison. add your known metrics for more insight. at least 8 metrics.

| Dimension | A | B |
|----------------|-------------|-------------|
| Dimension 1 | Detail A1 | Detail B1 |
| Dimension 2 | Detail A2 | Detail B2 |
| Dimension 3 | Detail A3 | Detail B3 |
| ... | ... | ... |
| Dimension N | Detail AN | Detail BN |

- For star history data, you should generate a line chart using oss insight star history api, at least one chart.
- For stargazers company data, you use markdown table:
| Company | Stargazers Count |
|-----------------|------------------|
| Company A | 100 |
| Company B | 75 |
| Company C | 50 |
| Company D | 30 |
| Other/Unknown | 45 |

Provide insights and analysis based on the collected data. and trending insight.
Be sure to think big! Always give plan and explain what you do.

Let's begin

Plan:
Tools:
Action:
Output:
Deep Insight:

At the end, you should give use some surprise, you can search stackshare.io for more info, and continue guiding the users to compare more pair of oss tools.

Conversation starters​

PyTorch vs TensorFlow
TiDB vs Vitess
React vs Vue
Golang vs Rust-lang

Capabilities​

tip

Make all these three capabilities checked

  • Web Browsing
  • DALL-E Image Generation
  • Code Interpreter

Actions​

Action 1: Config API of next.ossinsight.io for drawing star historical chart​

Schema​
openapi: 3.0.0
info:
title: OSS Insight star history chart API
version: 1.0.0
description: OSS Insight star history chart API.
servers:
- url: https://next.ossinsight.io
paths:
/widgets/official/analyze-repo-stars-history/manifest.json:
get:
operationId: Star History
summary: Retrieve repository star history analysis
description: Fetches the star history and analysis for specified repositories.
parameters:
- name: repo_id
in: query
required: true
description: The ID of the primary repository.
schema:
type: integer
- name: vs_repo_id
in: query
required: true
description: The ID of the repository to compare with.
schema:
type: integer
responses:
'200':
description: Successful response with star history data.
content:
application/json:
schema:
type: object
properties:
imageUrl:
type: string
format: uri
description: URL of the thumbnail image.
title:
type: string
description: Title of the analysis.
description:
type: string
description: Description of the analysis.
'400':
description: Bad request - parameters missing or invalid.
'404':
description: Resource not found.
'500':
description: Internal server error.
Privacy policy​
https://www.pingcap.com/privacy-policy/

Action 2: Config api.github.com for fetching basic info of a repository​

As GitHub API use Personal Access Token and Bearer type of authentication for authentication, you should create one in: https://github.com/settings/tokens, it will be used later.

Schema:​
openapi: 3.0.0
info:
title: GitHub Repository Info API
description: An API for retrieving information about GitHub repositories.
version: 1.0.0
servers:
- url: https://api.github.com
description: GitHub API Server
paths:
/repos/{owner}/{repo}:
get:
summary: Get Repository Info
description: Retrieve information about a GitHub repository.
operationId: getRepositoryInfo
parameters:
- name: owner
in: path
required: true
schema:
type: string
description: The username or organization name of the repository owner.
- name: repo
in: path
required: true
schema:
type: string
description: The name of the repository.
responses:
'200':
description: Successful response with repository information.
content:
application/json:
schema:
type: object
properties:
id:
type: integer
name:
type: string
full_name:
type: string
owner:
type: object
properties:
login:
type: string
id:
type: integer
avatar_url:
type: string
html_url:
type: string
private:
type: boolean
description:
type: string
fork:
type: boolean
url:
type: string
html_url:
type: string
language:
type: string
forks_count:
type: integer
stargazers_count:
type: integer
watchers_count:
type: integer
size:
type: integer
default_branch:
type: string
open_issues_count:
type: integer
topics:
type: array
items:
type: string
has_issues:
type: boolean
has_projects:
type: boolean
has_wiki:
type: boolean
has_pages:
type: boolean
has_downloads:
type: boolean
has_discussions:
type: boolean
archived:
type: boolean
disabled:
type: boolean
visibility:
type: string
pushed_at:
type: string
format: date-time
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
license:
type: object
properties:
key:
type: string
name:
type: string
spdx_id:
type: string
url:
type: string
Privacy policy​
https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement

Action 3: Stargazer's geo & company distribution provided by TiDB Serverless Data Service​

Schema URL to import​
https://us-west-2.prod.aws.tidbcloud.com/api/v1/dataservices/external/appexport/openapi?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBpZCI6ImRhdGFhcHAtUmZGS2NaRnUiLCJjcmVhdGVyIjoiaHVvaGFvQHBpbmdjYXAuY29tIiwic2VuY2UiOiJvcGVuYXBpIn0.xqu-ZCPHozisIHWTD5XM_5t2JWOGVpAejcQeWiTH_Mw

or you can use the following details schema.

Show detailed API schema

components:
schemas:
getGithubRepoStar_historyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
date:
type: string
stargazers:
type: string
required:
- date
- stargazers
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_companyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
company_name:
type: string
proportion:
type: string
stargazers:
type: string
required:
- company_name
- stargazers
- proportion
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_countryResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
country_code:
type: string
percentage:
type: string
stargazers:
type: string
required:
- country_code
- stargazers
- percentage
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_countResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
required:
- count
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_per_yearResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
date:
type: string
required:
- count
- date
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
securitySchemes:
basicAuth:
description: Enter your public key for the username field and private key for
the password field
scheme: basic
type: http
info:
description: API Interface for GPT PK Action, response GitHub repo metrics and hackernews
mentions count data
title: GPT-PK
version: 1.0.0
openapi: 3.0.3
paths:
/github/repo/star_history:
get:
description: GitHub repo star history
operationId: getGithubRepoStar_history
parameters:
- description: The time interval of the data points
in: query
name: per
schema:
default: month
enum:
- day
- week
- month
example: month
type: string
- description: 'The owner of the repo. For example: `pingcap`'
in: query
name: owner
required: true
schema:
default: ""
example: ""
type: string
- description: 'The name of the repo. For example: `tidb`'
in: query
name: repo
required: true
schema:
default: ""
example: ""
type: string
- description: The start date of the range
in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- description: The end date of the range
in: query
name: to
schema:
default: "2099-12-31"
example: "2099-12-31"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Internal server error
summary: /github/repo/star_history
tags:
- Default
/github/repo/stargazers_company:
get:
operationId: getGithubRepoStargazers_company
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Internal server error
summary: /github/repo/stargazers_company
tags:
- Default
/github/repo/stargazers_country:
get:
description: github repo stargazers country
operationId: getGithubRepoStargazers_country
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
- in: query
name: exclude_unknown
schema:
default: "true"
example: "true"
type: boolean
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Internal server error
summary: /github/repo/stargazers_country
tags:
- Default
/hackernews/mentions_count:
get:
description: Total counts for keyword in hackernews
operationId: getHackernewsMentions_count
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Internal server error
summary: /hackernews/mentions_count
tags:
- Default
/hackernews/mentions_per_year:
get:
description: keyword mentions per year in hackernews
operationId: getHackernewsMentions_per_year
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Internal server error
summary: /hackernews/mentions_per_year
tags:
- Default
security:
- basicAuth: []
servers:
- url: https://us-west-2.data.tidbcloud.com/api/v1beta/app/dataapp-RfFKcZFu/endpoint

API Key​

When config this action, you should input the following encoded api key in Authentication -> API Key -> Auth Type(Basic)

QzBTQ0VRNzA6MmJjNjAwYzUtODA0Mi00Yzg4LTkxNTgtMTNiNzdkMDY0OGM5
Note!
  • Make sure using this key for GPT's learning, thanks~
  • We will revoke this key after a period of time
Privacy policy​
https://www.pingcap.com/privacy-policy/
- - + + \ No newline at end of file diff --git a/blog/how-to-learn-sql-easily-by-visualizing-with-chatgpt/index.html b/blog/how-to-learn-sql-easily-by-visualizing-with-chatgpt/index.html index b3bea3ab0a2..8c29fdf9cec 100644 --- a/blog/how-to-learn-sql-easily-by-visualizing-with-chatgpt/index.html +++ b/blog/how-to-learn-sql-easily-by-visualizing-with-chatgpt/index.html @@ -21,14 +21,14 @@ - - + +

How to Learn SQL Easily by Visualizing with ChatGPT

Β· 2 min read
PingCAP
ChatGPT

SQL is a powerful language for managing and analyzing data, but it can be difficult to learn for beginners. That's where ChatGPT comes in.

ChatGPT is a large language model trained by OpenAI that can help you learn SQL easily by visualizing the key information in a SQL query. In this blog post, we'll show you how to use ChatGPT to visualize SQL queries using pretty ASCII art diagrams. Let's start with an example. Suppose we want to find the top 10 most popular AI projects on GitHub in the last month. Here's the SQL query that does that:

SELECT
repo_name,
COUNT(*) AS stars
FROM
github_events
WHERE
type = 'WatchEvent'
AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
AND repo_name LIKE '%AI%'
GROUP BY
repo_name
ORDER BY
stars DESC
LIMIT
10

Now, let's use ChatGPT to visualize this SQL query using pretty ASCII art diagrams. Here's the diagram:

          +-------------------+            
| What to Retrieve? | top 10
+-------------------+
| SELECT
| repo_name,
| COUNT(*) AS stars
v
+-------------------+
| From Where? | GitHub
+-------------------+
| FROM
| github_events
v
+-------------------+
| Filter By: | last month, AI projects, most popular
+-------------------+
| WHERE
| type = 'WatchEvent'
| AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
| AND repo_name LIKE '%AI%'
v
+-------------------+
| Group By |
+-------------------+
| GROUP BY
| repo_name
v
+-------------------+
| Order By | most popular
+-------------------+
| ORDER BY
| stars DESC
v
+-------------------+
| Limit To 10 | top 10
+-------------------+
| LIMIT
| 10
v

This diagram visually shows the flow of the SQL query, from selecting what to retrieve, to filtering, grouping, ordering, and limiting the results. The arrows make it easy to see the relationship between the key information in the question and the corresponding SQL statements.

By using ChatGPT to visualize SQL queries with pretty ASCII art diagrams, you can learn SQL easily and quickly. The diagrams help you understand the structure of the SQL query, and make it easy to see how the various statements are related. With practice, you'll be able to write your own SQL queries in no time.

In conclusion, if you want to learn SQL easily, try using ChatGPT to visualize SQL queries with pretty ASCII art diagrams. It's a fun and effective way to learn SQL and improve your data management skills.

- - + + \ No newline at end of file diff --git a/blog/index.html b/blog/index.html index 170784dbc94..eead535e8df 100644 --- a/blog/index.html +++ b/blog/index.html @@ -21,15 +21,15 @@ - - + +

Β· 18 min read
sykp241095
ChatGPT

In this blog, we will share every configurations to build a OSS Comparison GPT.

GPTs Configurations​

Name​

Open Source Benchmark

Description​

Compare open-source softwares

Instructions​

You are a data analysis expert. 
When a user inputs one or more open-source software/technology terms, you provide a comprehensive comparison of their data,
such as popularity, GitHub stars count, contributors count, user geographical distribution, stargazers company distribution, Hacker News keyword mention counts,
long-term trend data, and more. You can utilize any available data about the object in question, estimate or obtain it through a search engine or API interface.
Currently, you have the following APIs at your disposal:

1. GitHub API for getting repo basic info
2. OSS Insight API for star history and stargazer's distribution
3. Hackernews mentions per_year API
4. OSS Insight star history chart API (show me with a <img> label)
5. OSS Insight API for stargazers company distribution

Here's a step-by-step process:

Identify which API to use based on the data you need.
- you goal is to think more metrics according exist API.
- each step you output your thought
- your action
- at least 8 metrics you should give
Output the data in a markdown table for easy comparison. add your known metrics for more insight. at least 8 metrics.

| Dimension | A | B |
|----------------|-------------|-------------|
| Dimension 1 | Detail A1 | Detail B1 |
| Dimension 2 | Detail A2 | Detail B2 |
| Dimension 3 | Detail A3 | Detail B3 |
| ... | ... | ... |
| Dimension N | Detail AN | Detail BN |

- For star history data, you should generate a line chart using oss insight star history api, at least one chart.
- For stargazers company data, you use markdown table:
| Company | Stargazers Count |
|-----------------|------------------|
| Company A | 100 |
| Company B | 75 |
| Company C | 50 |
| Company D | 30 |
| Other/Unknown | 45 |

Provide insights and analysis based on the collected data. and trending insight.
Be sure to think big! Always give plan and explain what you do.

Let's begin

Plan:
Tools:
Action:
Output:
Deep Insight:

At the end, you should give use some surprise, you can search stackshare.io for more info, and continue guiding the users to compare more pair of oss tools.

Conversation starters​

PyTorch vs TensorFlow
TiDB vs Vitess
React vs Vue
Golang vs Rust-lang

Capabilities​

tip

Make all these three capabilities checked

  • Web Browsing
  • DALL-E Image Generation
  • Code Interpreter

Actions​

Action 1: Config API of next.ossinsight.io for drawing star historical chart​

Schema​
openapi: 3.0.0
info:
title: OSS Insight star history chart API
version: 1.0.0
description: OSS Insight star history chart API.
servers:
- url: https://next.ossinsight.io
paths:
/widgets/official/analyze-repo-stars-history/manifest.json:
get:
operationId: Star History
summary: Retrieve repository star history analysis
description: Fetches the star history and analysis for specified repositories.
parameters:
- name: repo_id
in: query
required: true
description: The ID of the primary repository.
schema:
type: integer
- name: vs_repo_id
in: query
required: true
description: The ID of the repository to compare with.
schema:
type: integer
responses:
'200':
description: Successful response with star history data.
content:
application/json:
schema:
type: object
properties:
imageUrl:
type: string
format: uri
description: URL of the thumbnail image.
title:
type: string
description: Title of the analysis.
description:
type: string
description: Description of the analysis.
'400':
description: Bad request - parameters missing or invalid.
'404':
description: Resource not found.
'500':
description: Internal server error.
Privacy policy​
https://www.pingcap.com/privacy-policy/

Action 2: Config api.github.com for fetching basic info of a repository​

As GitHub API use Personal Access Token and Bearer type of authentication for authentication, you should create one in: https://github.com/settings/tokens, it will be used later.

Schema:​
openapi: 3.0.0
info:
title: GitHub Repository Info API
description: An API for retrieving information about GitHub repositories.
version: 1.0.0
servers:
- url: https://api.github.com
description: GitHub API Server
paths:
/repos/{owner}/{repo}:
get:
summary: Get Repository Info
description: Retrieve information about a GitHub repository.
operationId: getRepositoryInfo
parameters:
- name: owner
in: path
required: true
schema:
type: string
description: The username or organization name of the repository owner.
- name: repo
in: path
required: true
schema:
type: string
description: The name of the repository.
responses:
'200':
description: Successful response with repository information.
content:
application/json:
schema:
type: object
properties:
id:
type: integer
name:
type: string
full_name:
type: string
owner:
type: object
properties:
login:
type: string
id:
type: integer
avatar_url:
type: string
html_url:
type: string
private:
type: boolean
description:
type: string
fork:
type: boolean
url:
type: string
html_url:
type: string
language:
type: string
forks_count:
type: integer
stargazers_count:
type: integer
watchers_count:
type: integer
size:
type: integer
default_branch:
type: string
open_issues_count:
type: integer
topics:
type: array
items:
type: string
has_issues:
type: boolean
has_projects:
type: boolean
has_wiki:
type: boolean
has_pages:
type: boolean
has_downloads:
type: boolean
has_discussions:
type: boolean
archived:
type: boolean
disabled:
type: boolean
visibility:
type: string
pushed_at:
type: string
format: date-time
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
license:
type: object
properties:
key:
type: string
name:
type: string
spdx_id:
type: string
url:
type: string
Privacy policy​
https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement

Action 3: Stargazer's geo & company distribution provided by TiDB Serverless Data Service​

Schema URL to import​
https://us-west-2.prod.aws.tidbcloud.com/api/v1/dataservices/external/appexport/openapi?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBpZCI6ImRhdGFhcHAtUmZGS2NaRnUiLCJjcmVhdGVyIjoiaHVvaGFvQHBpbmdjYXAuY29tIiwic2VuY2UiOiJvcGVuYXBpIn0.xqu-ZCPHozisIHWTD5XM_5t2JWOGVpAejcQeWiTH_Mw

or you can use the following details schema.

Show detailed API schema

components:
schemas:
getGithubRepoStar_historyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
date:
type: string
stargazers:
type: string
required:
- date
- stargazers
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_companyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
company_name:
type: string
proportion:
type: string
stargazers:
type: string
required:
- company_name
- stargazers
- proportion
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_countryResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
country_code:
type: string
percentage:
type: string
stargazers:
type: string
required:
- country_code
- stargazers
- percentage
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_countResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
required:
- count
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_per_yearResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
date:
type: string
required:
- count
- date
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
securitySchemes:
basicAuth:
description: Enter your public key for the username field and private key for
the password field
scheme: basic
type: http
info:
description: API Interface for GPT PK Action, response GitHub repo metrics and hackernews
mentions count data
title: GPT-PK
version: 1.0.0
openapi: 3.0.3
paths:
/github/repo/star_history:
get:
description: GitHub repo star history
operationId: getGithubRepoStar_history
parameters:
- description: The time interval of the data points
in: query
name: per
schema:
default: month
enum:
- day
- week
- month
example: month
type: string
- description: 'The owner of the repo. For example: `pingcap`'
in: query
name: owner
required: true
schema:
default: ""
example: ""
type: string
- description: 'The name of the repo. For example: `tidb`'
in: query
name: repo
required: true
schema:
default: ""
example: ""
type: string
- description: The start date of the range
in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- description: The end date of the range
in: query
name: to
schema:
default: "2099-12-31"
example: "2099-12-31"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Internal server error
summary: /github/repo/star_history
tags:
- Default
/github/repo/stargazers_company:
get:
operationId: getGithubRepoStargazers_company
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Internal server error
summary: /github/repo/stargazers_company
tags:
- Default
/github/repo/stargazers_country:
get:
description: github repo stargazers country
operationId: getGithubRepoStargazers_country
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
- in: query
name: exclude_unknown
schema:
default: "true"
example: "true"
type: boolean
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Internal server error
summary: /github/repo/stargazers_country
tags:
- Default
/hackernews/mentions_count:
get:
description: Total counts for keyword in hackernews
operationId: getHackernewsMentions_count
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Internal server error
summary: /hackernews/mentions_count
tags:
- Default
/hackernews/mentions_per_year:
get:
description: keyword mentions per year in hackernews
operationId: getHackernewsMentions_per_year
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Internal server error
summary: /hackernews/mentions_per_year
tags:
- Default
security:
- basicAuth: []
servers:
- url: https://us-west-2.data.tidbcloud.com/api/v1beta/app/dataapp-RfFKcZFu/endpoint

API Key​

When config this action, you should input the following encoded api key in Authentication -> API Key -> Auth Type(Basic)

QzBTQ0VRNzA6MmJjNjAwYzUtODA0Mi00Yzg4LTkxNTgtMTNiNzdkMDY0OGM5
Note!
  • Make sure using this key for GPT's learning, thanks~
  • We will revoke this key after a period of time
Privacy policy​
https://www.pingcap.com/privacy-policy/

Β· 2 min read
PingCAP
ChatGPT

SQL is a powerful language for managing and analyzing data, but it can be difficult to learn for beginners. That's where ChatGPT comes in.

ChatGPT is a large language model trained by OpenAI that can help you learn SQL easily by visualizing the key information in a SQL query. In this blog post, we'll show you how to use ChatGPT to visualize SQL queries using pretty ASCII art diagrams. Let's start with an example. Suppose we want to find the top 10 most popular AI projects on GitHub in the last month. Here's the SQL query that does that:

SELECT
repo_name,
COUNT(*) AS stars
FROM
github_events
WHERE
type = 'WatchEvent'
AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
AND repo_name LIKE '%AI%'
GROUP BY
repo_name
ORDER BY
stars DESC
LIMIT
10

Now, let's use ChatGPT to visualize this SQL query using pretty ASCII art diagrams. Here's the diagram:

          +-------------------+            
| What to Retrieve? | top 10
+-------------------+
| SELECT
| repo_name,
| COUNT(*) AS stars
v
+-------------------+
| From Where? | GitHub
+-------------------+
| FROM
| github_events
v
+-------------------+
| Filter By: | last month, AI projects, most popular
+-------------------+
| WHERE
| type = 'WatchEvent'
| AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
| AND repo_name LIKE '%AI%'
v
+-------------------+
| Group By |
+-------------------+
| GROUP BY
| repo_name
v
+-------------------+
| Order By | most popular
+-------------------+
| ORDER BY
| stars DESC
v
+-------------------+
| Limit To 10 | top 10
+-------------------+
| LIMIT
| 10
v

This diagram visually shows the flow of the SQL query, from selecting what to retrieve, to filtering, grouping, ordering, and limiting the results. The arrows make it easy to see the relationship between the key information in the question and the corresponding SQL statements.

By using ChatGPT to visualize SQL queries with pretty ASCII art diagrams, you can learn SQL easily and quickly. The diagrams help you understand the structure of the SQL query, and make it easy to see how the various statements are related. With practice, you'll be able to write your own SQL queries in no time.

In conclusion, if you want to learn SQL easily, try using ChatGPT to visualize SQL queries with pretty ASCII art diagrams. It's a fun and effective way to learn SQL and improve your data management skills.

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

Β· One min read
PingCAP
ChatGPT

This blog is written with help of ChatGPT.


To get insight of your own dataset without writing sql is easy, follow these steps:

  1. Sign up for a TiDB Cloud account at https://tidbcloud.com/ using your email, Google account, or GitHub account.

  2. Create a free Serverless Tier cluster in the TiDB Cloud web console.

  3. In the TiDB Cloud web console, click the "Import" button and follow the prompts to load a CSV file into your cluster from a local file or from Amazon S3.

    Import Data

  4. Use the web console's SQL editor(Chat2Query) to get insights from your data. But no worry, you don't need to write SQL, you could ask questions about your data in natural language.

    The magic is typing -- your question and press Enter, here is an example:

Β· 11 min read
Mini256
Caitin Chen

TL;DR:

This post tells how a website on a distributed database reduced online serving latency from 1.11 s to 417.7 ms, and then to 123.6 ms. We found that some lessons learned on MySQL could be applied throughout the optimization process. But when we optimize a distributed database, we need to consider more.

The OSS Insight website displays the data changes of GitHub events in real time. It's powered by TiDB Cloud, a MySQL-compatible distributed SQL database for elastic scale and real-time analytics.

Recently, to save costs, we tried to use lower-specification machines without affecting query efficiency and user experience. But our website and query response slowed down.


The repository analysis page was loading

The repository analysis page was loading, loading, and loading

How could we solve these problems on a distributed database? Could we use the methodology we learned on MySQL?

Analyzing the SQL execution plan​

To identify slow SQL statements, we used TiDB Cloud's Diagnosis page to sort SQL queries by their average latency.

For example, after the API server received a request, it executed the following SQL statement to obtain the number of issues in the vscode repository:

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

However, if the open source repository is large, this query may take several seconds or more to execute.

Using EXPLAIN ANALYZE to troubleshoot query performance problems​

In MySQL, when we troubleshoot query performance problems, we usually use the EXPLAIN ANALYZE <sql> statement to view the SQL statement's execution plan. We can use the execution plan to locate the problem. The same works for TiDB.

We executed the EXPLAIN statement:

EXPLAIN ANALYZE SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

The result showed that the query took 1.11 seconds to execute.


The query result

The query result

You can see that TiDB's EXPLAIN ANALYZE statement execution result was completely different from MySQL's. TiDB's execution plan gave us a clearer understanding of how this SQL statement was executed.

The execution plan shows:

  • This SQL statement was split into several subtasks. Some were on the root node, and others were on the tikv node.
  • The query fetched data from the partition:issue_event partition table.
  • This query did a range scan through the index index_github_events_on_repo_id(repo_id). This let the query narrow down the data scan quickly. This process only took 59 ms. It was the sum of the execution times of multiple concurrent tasks.
  • Besides IndexRangeScan, the query also used TableRowIDScan. This scan took 4.69 s, the sum of execution times for multiple concurrent subtasks.

From the execution times above, we determined that the query performance bottleneck was in the TableRowIDScan step.

We reran the EXPLAIN ANALYZE statement and found that the query was faster the second time. Why?

Why did TableRowIDScan take so long?​

To find the reason why TableRowIDScan took so long, we need basic knowledge of TiDB's underlying storage.

In TiDB, a table's data entries and indexes are stored on TiKV nodes in key-value pairs.

  • For an index, the key is the combination of the index value and the row_id (for a non-clustered index) or the primary key (for a clustered index). The row_id or primary key indicates where the data is stored.
  • For a data entry, the key is the combination of the table ID and the row_id or primary key. The value part is the combination of this row of data.

This graph shows how IndexLookup is executed in the execution plan:


The logical structure

This is the logical structure, not the physical storage structure.

In the query above, TiDB uses the query condition repo_id=41881900 to filter out all row numbers row_id related to the repository in the secondary index index_github_events_on_repo_id. The query needs the number column data, but the secondary index doesn't provide it. Therefore, TiDB must execute IndexLookup to find the corresponding row in the table based on the obtained row_id (the TableRowIDScan step).

The rows are probably scattered in different data blocks and stored on the hard disk. This causes TiDB to perform a large number of I/O operations to read data from different data blocks or even different machine nodes.

Why was EXPLAIN ANALYZE faster the second time?​

In EXPLAIN ANALYZE's execution result, we saw that the "execution info" column corresponding to the TableRowIDScan step contained this information:

block: {cache_hit_count: 2755559, read_count: 179510, read_byte: 4.07 GB}

We thought this had something to do with TiKV. TiKV read a very large number of data blocks from the disk. Because the data blocks read from the disk were cached in memory in the first execution, 2.75 million data blocks could be read directly from memory instead of being retrieved from the hard disk. This made the TableRowIDScan step much faster, and the query was faster overall.

However, we believed that user queries were random. For example, a user might look up data from a vscode repository and then go to a kubernetes repository. TiKV's memory couldn't cache all the data blocks in all the drives. Therefore, this did not solve our problem, but it reminded us that when we analyze SQL execution efficiency, we need to exclude cache effects.

Using a covering index to avoid executing TableRowIDScan​

Could we avoid executing TableRowIDScan in IndexLookup?

In MySQL, a covering index prevents the database from index lookup after index filtering. We wanted to apply this to OSS Insight. In our TiDB database, we tried to create a composite index to achieve index coverage.

When we created a composite index with multiple columns, we needed to pay attention to the column order. Our goals were to allow a composite index to be used by as many queries as possible, to help these queries narrow the scope of data scans as quickly as possible, and to provide as many fields as possible in the query. When we created a composite index we followed this order:

  1. Columns that had high differentiation and could be used as equivalence conditions for the WHERE statement, like repo_id
  2. Columns that didn't have high differentiation but could be used as equivalence conditions for the WHERE statement, like type and action
  3. Columns that could be used as range query conditions for the WHERE statement, like created_at
  4. Redundant columns that were not used as filter conditions but were used in the query, such as number and push_size

We used the CREATE INDEX statement to create a composite index in the database:

CREATE INDEX index_github_events_on_repo_id_type_number ON github_events(repo_id, type, number);

When we created the index and ran the SQL statement again, the query speed was significantly faster. We viewed the execution plan through EXPLAIN ANALYZE and found that the execution plan became simpler. The IndexLookup and TableRowIDScan steps were gone. The query took only 417.7 ms.


The result of the EXPLAIN query

The result of the EXPLAIN query. This query cost 417.7 ms

So we knew that our query could get all the data it needed by doing an IndexRangeScan on the new index. This composite index included the number field, so TiDB did not need to perform IndexLookup to get data from the table. This reduced a lot of I/O operations.


`IndexRangeScan` in the non-clustered table

IndexRangeScan in the non-clustered table

Pushing down computing to further reduce query latency​

For a query that needed to obtain 270,000 rows of data, 417.7 ms was quite a short execution time. But could we improve the time even more?

We thought this relied on TiDB's architecture that separates computing and storage layers. This is different from MySQL.

In TiDB:

  • The tidb-server node computes data. It corresponds to root in the execution plan.
  • The tikv-server node stores the data. It corresponds to cop[tikv] in the execution plan.

Generally, an SQL statement is split into multiple steps to execute with the cooperation of computing and storage nodes.

When we executed the SQL statement in this article, TiDB obtained the data of the github_events table from tikv-server and performed the aggregate calculation of the COUNT function on tidb-server.

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

The execution plan indicated that when TiDB was performing IndexReader, tidb-server needed to read 270,000 rows of data from tikv-server through the network. This was time-consuming.


`tidb-server` read 270,000 rows of data from `tikv-server`

tidb-server read 270,000 rows of data from tikv-server

How could we avoid such a large network transmission? Although the query needed to obtain a large amount of data, the final calculation result was only a number. Could we complete the COUNT aggregation calculation on tikv-server and return the result only to tidb-server?

TiDB had implemented this idea through the coprocessor on tikv-server. This optimization process is called computing pushdown.

The execution plan indicated that our SQL query did not do this. Why? We checked the TiDB documentation and learned that:

Usually, aggregate functions with the DISTINCT option are executed in the TiDB layer in a single-threaded execution model.

This meant that our SQL statement couldn't use computing pushdown.

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

Therefore, we removed the DISTINCT keyword.

For the github_events table, an issue only generated an event with the IssuesEvent type and opened action. We could get the total number of unique issues by adding the condition of action = 'opened'. This way, we didn't need to use the DISTINCT keyword for deduplication.

SELECT
COUNT(number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent'
AND action = 'opened';

The composite index we created lacked the action column. This caused the query index coverage to fail. So we created a new composite index:

CREATE INDEX index_github_events_on_repo_id_type_action_number ON github_events(repo_id, type, action, number);

After we created the index, we checked the execution plan of the modified SQL statement through the EXPLAIN ANALYZE statement. We found that:

  • Because we added a new filter action='opened', the number of rows to scan had decreased from 270,000 to 140,000.
  • tikv-server executed the StreamAgg operator, which was the aggregate calculation of the COUNT function. This indicated that the calculation had been pushed down to the TiKV coprocessor for execution.
  • tidb-server only needed to obtain two rows of data from tikv-server through the network. This greatly reduced the amount of data transmitted.
  • The query only took 123.6 ms.
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+
| id | estRows | actRows | task | access object | execution info | operator info | memory | disk |
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+
| StreamAgg_28 | 1.00 | 1 | root | | time:123.6ms, loops:2 | funcs:count(Column#43)->Column#34 | 388 Bytes | N/A |
| └─IndexReader_29 | 1.00 | 2 | root | partition:issues_event | time:123.6ms, loops:2, cop_task: {num: 2, max: 123.5ms, min: 1.5ms, avg: 62.5ms, p95: 123.5ms, max_proc_keys: 131360, p95_proc_keys: 131360, tot_proc: 115ms, tot_wait: 1ms, rpc_num: 2, rpc_time: 125ms, copr_cache_hit_ratio: 0.50, distsql_concurrency: 15} | index:StreamAgg_11 | 590 Bytes | N/A |
| └─StreamAgg_11 | 1.00 | 2 | cop[tikv] | | tikv_task:{proc max:116ms, min:8ms, avg: 62ms, p80:116ms, p95:116ms, iters:139, tasks:2}, scan_detail: {total_process_keys: 131360, total_process_keys_size: 23603556, total_keys: 131564, get_snapshot_time: 1ms, rocksdb: {delete_skipped_count: 320, key_skipped_count: 131883, block: {cache_hit_count: 307, read_count: 1, read_byte: 63.9 KB, read_time: 60.2Β΅s}}} | funcs:count(gharchive_dev.github_events.number)->Column#43 | N/A | N/A |
| └─IndexRangeScan_15 | 7.00 | 141179 | cop[tikv] | table:github_events, index:index_ge_on_repo_id_type_action_created_at_number(repo_id, type, action, created_at, number) | tikv_task:{proc max:116ms, min:8ms, avg: 62ms, p80:116ms, p95:116ms, iters:139, tasks:2} | range:[41881900 "IssuesEvent" "opened",41881900 "IssuesEvent" "opened"], keep order:false | N/A | N/A |
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+

Applying what we learned to other queries​

Through our analysis and optimizations, the query latency was significantly reduced:

1.11 s β†’ 417.7 ms β†’ 123.6 ms

We applied what we learned to other queries and created the following composite indexes in the github_events table:

index_ge_on_repo_id_type_action_pr_merged_created_at_add_del

index_ge_on_repo_id_type_action_created_at_number_pdsize_psize

index_ge_on_repo_id_type_action_created_at_actor_login

index_ge_on_creator_id_type_action_merged_created_at_add_del

index_ge_on_actor_id_type_action_created_at_repo_id_commits

These composite indexes covered more than 20 analytical queries in repository analysis and personal analysis pages on the OSS Insight website. This improved our website's overall loading speed.

Some lessons we learned on MySQL can be applied throughout the optimization process. But we need to consider more when we optimize query performance in a distributed database. We also recommend you read Performance Tuning in the TiDB documentation. This will give you a more professional and comprehensive guide to performance optimization.

References​

Β· 10 min read
Cheese Wong
Jagger
hooopo
Vita Lu
Mia Zhou
Caitin Chen

We analyzed more than 5,000,000,000 rows of GitHub event data and got the results here. In this report, you'll get interesting findings about open source software on GitHub in 2022, including:

Top languages in the open source world over the past four years​

This chart ranks programming languages yearly from 2019 to 2022 based on the ratio of new repositories using these languages to all new repositories.


top-programming-languages
Top programming languages

Insights:

  • Python surpassed Java and moved to #3 in 2021.
  • TypeScript rose from #10 to #6, and SCSS rose from #39 to #19. The rise of SCSS shows that open source projects that value front-end expressiveness are gradually gaining popularity.
  • The two languages Ruby and R dropped a lot in ranking over the years.

Rankings of back-end programming languages​

The programming languages used in a pull request reflect which languages developers used. To find out the most popular back-end programming languages, we queried the distribution of programming languages by new pull requests from 2019 to 2022 and took the top 10 for each year.


top-back-end-programming-languages
Top back-end programming languages

The chart data indicates:

  • Python and Java rank #1 and #2 respectively. In 2021, Go overtook Ruby to rank #3 in 2021.
  • Rust has been trending upward for several years, ranking #9 in 2022.

Geographic distribution of developer behavior​

We queried the number of various events that occurred throughout the world from January 1 to September 30, 2022 and identified the top 10 countries by the number of events triggered by developers in these countries. The chart displays the proportion of each event type by country or region.


geographic-distribution-of-developer-behavior
Geographic distribution of developer behavior

The chart shows that:

  • The events triggered in the top 10 countries account for about 23.27% of all GitHub events. However, the number of developers from these countries is only 10%.
  • US developers are most likely to review code, with a PullRequestReviewEvent share of 6.15%.
  • Korean developers prefer pushing directly to repositories (PushEvent).
  • Japanese developers are most likely to submit code via pull requests, with a PullRequestEvent share of 10%.
  • German developers like to open issues and comments, with IssueEvent and CommentEvent accounting for 4.18% and 12.66% respectively.
  • Chinese developers like to star repositories, with 17.23% for WatchEvent and 2.7% for ForkEvent.

Notes:

  • In 2022, 17,062,081 developers had behavioral events, and 2,923,523 of them have the Location field, so the sampling rate is 17.13%
  • GitHub identifies 15 types of events. We only show commonly used types. Comment Event includes CommitCommentEvent, IssueCommentEvent, and PullRequestReviewCommentEvent. Others includes MemberEvent, CreateEvent, ReleaseEvent, GollumEvent, and PublicEvent.

Developer behavior distribution on weekdays and weekends​

We queried the distribution of each event type over the seven days of the week.


developer-behavior-distribution-on-weekdays-and-weekends
Developer behavior distribution on weekdays and weekends

Insights:

  • Developers are most active on weekdays, with 77.73% of events occurring on weekdays.

The distribution of specific events​

developer-behavior-distribution-from-monday-to-sunday
Developer behavior distribution from Monday to Sunday

Insights:

  • Pull Request Event, Pull Request Review Event, and Issues Event all have the highest percentage on Tuesdays, while the lowest percentage is on the weekends.
  • The amount of Push Event, Watch Event, and Fork Event activities are similar on weekdays and weekends, while the Pull Request Review Event is the most different. Watch Event and Fork Event are more personal behaviors, Pull Request Review Events are more work behaviors, and Push Events are used more in personal projects.

Each year, technology introduces new buzz words. Can we gain insight into technical trends through the open source repositories behind the hot words? We investigated five technical areas: Low Code, Web3, GitHub Actions, Database, and AI.

We queried the number of open source repositories associated with each technical area, as well as the percentage of active repositories in 2022.


activity-levels-of-popular-topics
Activity levels of popular topics

This figure shows that open source repositories in the Low Code topic are the most active, with 76.3% being active in 2022, followed by Web3 with 63.85%.

We queried the following items for each technical area from 2015 to 2022:

  • The annual increment of repositories
  • The annual increment of collaborative events
  • The number of developers participating in collaborative events
  • The annual increment of stars

Then, we calculated the growth rate for each year which can reflect new entrants, developer engagement in this technical field, and the industry's interest in this area. For 2022, we compare its first nine months with the first nine months of 2021.


low-code-repositories
Low code repositories

We can see that 2020 is the peak period of project development, with a 313.43% increase in new repositories and a 157.06% increase in developer collaborative events. The industry's interest increased most significantly in 2021, reaching 184.82%. In 2022, the year-on-year growth data shows that the number of new repositories decreased (-26.21%), but developer engagement and industry interest are still rising.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


web3-repositories
Web3 repositories

Whether it is the creation of new repositories, developers, or the interest of the industry, the Web3 ecosystem has grown rapidly in recent years, and the growth rate of new repositories peaked at 322.65% in 2021.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


github-actions-repositories
GitHub Actions repositories

The annual increase of GitHub Actions repositories has been declining, but developer engagement and the industry's interest are still increasing slightly.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


database-repositories
Database repositories

As an infrastructure project, the Database project's threshold is high. Compared with projects in other fields, a database project has a stable growth rate.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


ai-repositories
AI repositories

After two years of high growth in 2016 and 2017, open source projects in AI have been growing gradually slowly.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories

The number of stars is the most visible indication of the popularity of open source projects. We looked at the 50 projects that received the most stars from January 1 to September 30, 2022. We found that:


most-popular-repositories-2022
The most popular repositories in 2022

* Time range: 2022.01.01-2022.09.30, excluding bot events

The most active repositories over the past four years​

Here we looked up the top 20 active repositories per year from 2019 to 2022 and counted the total number of listings per repository. The activity of the repository is ranked according to the number of developers participating in collaborative events.

Repository NameCount
microsoft/vscode4
flutter/flutter4
MicrosoftDocs/azure-docs4
firstcontributions/first-contributions4
Facebook/react-native4
pytorch/pytorch4
microsoft/TypeScript4
tensorflow/tensorflow3
kubernetes/kubernetes3
DefinitelyTyped/DefinitelyTyped3
golang/go3
google/it-cert-automation-practice3
home-assistant/core3
microsoft/PowerToys3
microsoft/WSL3

Insights:

  • Microsoft has the most repositories on the list, with five.

  • tensorflow/tensorflow and kubernetes/kubernetes both dropped out of the top 20 after three consecutive years on the list (2019 to 2021).

  • New to the 2022 list are archway-network/testnets, element-fi/elf-council-frontend, solana-labs/token-list, education/GitHubGraduation-2022, taozhiyu/TyProAction, NixOS/nixpkgs, rust-lang/rust.

  • Time range: 2022.01.01-2022.09.30, excluding bot events

Who gave the most stars in 2022​

We queried the developers who gave the most stars in 2022, took the top 20, and filtered out accounts of suspected bots. If a developer's number of star events divided by the number of starred repositories is equal to or greater than 2, we suspect this user to be a bot.


developers-most-stars
Developers who gave the most stars

We found that until September 30, 2022, the developer who starred the most repositories had starred a total of 37,228 repositories, an average of 136 repositories per day.

* Time range: 2022.01.01-2022.09.30, excluding bot events

The most active developers since 2011​

We queried the top 20 most active developers per year since 2011. This time we didn't filter out bot events.


most-active-developers
The most active developers

We found that the percentage of bots is becoming larger and larger. Bots started to overtake humans in 2013 and have reached over 95% in 2022.

Appendix​

Term description​

  • GitHub events: GitHub events are triggered by user actions, like starring a repository or pushing code.
  • Time range: In this report, the data collection range of 2022 is from January 1, 2022 to September 30, 2022. When comparing data of 2022 with another year, we use year-on-year analysis.
  • Bot events: Bot-triggered events account for a growing percentage of GitHub events. However, these events are not the focus of this report. We filtered out most of the bot-initiated events by matching regular expressions.

How we classify technical fields by topics​

We do exact matching and fuzzy matching based on the repository topic. Exact matching means that the repository topics have a topic that exactly matches the word, and fuzzy matching means that the repository topics have a topic that contains the word.

TopicExact matchingFuzzy matching
GitHub Actionsactionsgithub-action, gh-action
Low Codelow-code, lowcode, nocode, no-code
Web3web3
Databasedbdatabase, databases
nosql, newsql, sql
mongodb,neo4j
AIai, aiops, aiotartificial-intelligence, machine-intelligence
computer-vision, image-processing, opencv, computervision, imageprocessing
voice-recognition, speech-recognition, voicerecognition, speechrecognition, speech-processing
machinelearning, machine-learning
deeplearning, deep-learning
transferlearning, transfer-learning
mlops
text-to-speech, tts, speech-synthesis, voice-synthesis
robot, robotics
sentiment-analysis
natural-language-processing, nlp
language-model, text-classification, question-answering, knowledge-graph, knowledge-base
gan, gans, generative-adversarial-network, generative-adversarial-networks
neural-network, neuralnetwork, neuralnetworks, neural-network, dnn
tensorflow
PyTorch
huggingface
transformers
seq2seq, sequence-to-sequence
data-analysis, data-science
object-detection, objectdetection
data-augmentation
classification
action-recognition

Β· 5 min read
Mia Zhou
Wink Yao
Caitin Chen

The OSS Insight website displays the data changes of GitHub events in real time. GitHub events are activities triggered by user actions on GitHub, for example, commenting and forking a repository. In nearly seven weeks, GitHub events increased by about 150 million, from 4.7 billion to 4.85 billion. GitHub events are booming!

This post dives deeply into GitHub event trending, why GitHub events are surging, and whether GitHub's architecture can handle the increasing load.

Historical data analysis​

The OSS Insight database includes all the GitHub events since 2011. When we plot the number of events by year, we can see that since 2018 they have been increasing rapidly.


GitHub event trending

GitHub event trending

The figure below shows how long it takes to grow each billion events in GitHub.


The time to reach a billion GitHub events

The time to reach a billion GitHub events

It's taking less and less for GitHub to generate 1 billion events. It took more than 6 years for the first billion events and only 13 months for the last billion!

The secret behind the exponential growth of GitHub events​

GitHub Actions was released in October 2018. Since August 2019, it has supported continuous integration and continuous delivery (CI/CD), and it has been free for open source projects. Therefore, projects hosted on GitHub can automate their own development workflows, and a large number of automation-related bot applications have appeared on GitHub Marketplace. Could GitHub events' data growth be related to these?

To find the answer, we divided the events into data from humans and data from bots and plotted them with the following histogram. The blue columns represent the human data, and the yellow columns represent the bot data.


Bot events vs. human events

Bot events vs. human events

As you can see, the proportion of GitHub bot events has increased each year. In 2015, they were only 1.23% of all events. In early July of this year, they reached 13.2%. To show the data changes of bot events more clearly, we made the following line chart.


Bot event trending

Bot event trending

This figure shows that since 2019, bot events have been grown faster than before. As Mini256, a TiDB community contributor said in Love, Code, and Robot β€” Explore robots in the world of code:

For now, rough statistics find that there are more than 95,620 bots on GitHub. The number doesn't seem like so much, but wait...

These 95 thousand bot accounts generated 603 million events. These events account for 12.82% of all public events on GitHub, and these GitHub robots have served over 18 million open source repositories.

Bots are playing an increasingly important role on GitHub. Many projects are handing over automated work to bots. We expect that GitHub events will grow faster in the future.

When will GitHub reach 10 billion events?​

How many GitHub events will there be by the end of 2022? We fit predictions to GitHub historical data.


Human event fit (left) vs. bot event fit (right)

Human event fit (left) vs. bot event fit (right)

It's estimated that by the end of 2022, GitHub events will reach 5.36 billion.


github-event-prediction
GitHub event prediction

According to this prediction, GitHub events will exceed 10 billion in February 2025.


gitub-events-exceed-10-billion
GitHub events will exceed 10 billion in 2025

Can MySQL sharding support such a huge amount of data?​

GitHub uses MySQL as the main storage for all non-git warehouse data. The rapid growth of data volume poses a great challenge to GitHub's high availability. In March 2022, GitHub had 3 service disruptions, each lasting 2-5 hours. The official investigation report shows the MySQL database caused the outages. During peak load periods, the GitHub mysql1 database (the main database cluster in GitHub) load increased. Therefore, database access reached the maximum number of connections. This affected the performance of many GitHub services and features.

In fact, over the past few years GitHub has optimized its databases. For example, it added clusters to support platform growth and partitioned the main database. But these improvements did not fundamentally solve the problem. In the near future, GitHub events will exceed 5 billion, or even 10 billion. Can MySQL sharding support such data surge?

Data sources​

All the analysis data in this article comes from OSS Insight, a tool based on TiDB to analyze and gain insights into GitHub events data.

You can use it to easily get insights about developers and repositories based on billions of GitHub events. You can also get the latest and historical rankings and trends in technical fields.


The OSS Insight website

The OSS Insight website

Β· 10 min read
Wink Yao
Fendy Feng

In early January 2022, Max, our CEO, a big fan of open-source, asked if my team could build a small tool to help us understand all the open-source projects on GitHub; and, that if everything worked well, we should open the API to help open source developers to build better insights. In fact, GitHub continuously publishes the public events in its open-source world through the open API. (Thank you and well done! Github). We can certainly learn a lot from the data!

I was excited about this project until Max said: β€œYou’ve only got one week.” Well, the boss is the boss! Although time was tight and we were faced with multiple head-aching problems, I decided to take up this challenge.

Headache 1: we need both historical and real-time data.​

After some quick research, we found GHArchive, an open-source project that collects and archives all GitHub data from 2011 and updates it hourly. By the way, a lot of open-source analytical tools such as CNCF's Devstats rely on GH Archive, too.

Thanks to GH Archive, we found the data source.

But there's another problem: hourly data is good, but not good enough. We wanted our data to be updated in real timeβ€”or at least near real time. We decided to directly use the GitHub event API, which collects all events that have occurred within the past hour.

By combining the data from the GH Archive and the GitHub event API, we can gain streaming, real-time event updates.


GitHub event updates

GitHub event updates

Headache 2: the data is huge!​

After we decompressed all the data from GH Archive, we found there were more than 4.6 billion rows of GitHub events. That’s a lot of data! We also noticed that about 300,000 rows were generated and updated each hour.


The data volume of GitHub events occurred after 2011

The data volume of GitHub events occurred after 2011

The database solution would be tricky here. Our goal is to build an application that provides real-time data insights based on a continuously growing dataset. So, scalability is a must. NoSQL databases can provide good scalability, but what follows is how to handle complex analytical queries. Unfortunately, NoSQL databases are not good at that.


Scalability vs SQL

Another option is to use an OLAP database such as ClickHouse. ClickHouse can handle the analytical workload very well, but it is not designed for serving online traffic. If we chose it, we would need another database for the online traffic.


OLAP vs Online Serving

What about sharding the database and then building an extract, transform, load (ETL) pipeline to synchronize the new events to a data warehouse? This sounds workable.


How a RDBMS handles the GitHub data

How a RDBMS handles the GitHub data

According to our product manager's (PM’s) plan, we needed to do some repo-specific or user-specific analysis. Although the total data volume was huge, the number of events was not too large for a single project or user. This meant using the secondary indexes in RDBMS would be a good idea. But, if we decided to use the above architecture, we had to be careful in selecting the database sharding key. For example, if we use user_id as the sharding key, then queries based on repo_id will be very tricky.

Another requirement from the PM was that our insight tool should provide OpenAPI, which meant we would have unpredictable concurrent traffic from the outside world.

Since we're not experts on Kafka and data warehouses, mastering and building such an infrastructure in just one week was a very difficult task for us.

The choice is obvious now, and don't forget PingCAP is a database company! TiDB seems a perfect fit for this, and it's a good chance to eat our own dog food. So, why not using TiDB! :)

If we use TiDB, can we get:

  • SQL support, including complex & flexible queries? β˜‘οΈ
  • Scalability? β˜‘οΈ
  • Secondary index support for fast lookup? β˜‘οΈ
  • Capability for online serving? β˜‘οΈ

Wow! It seems we got a winner!


By using the secondary index, TiDB scanned 29,639 rows (instead of 4.6 billion rows) GitHub events in 4.9 ms

By using the secondary index, TiDB scanned 29,639 rows (instead of 4.6 billion rows) GitHub events in 4.9 ms

To choose a database to support an application like OSS Insight, we think TiDB is a great choice. Plus, its simplified technology stack means a faster go-to-market and faster delivery of my boss' assignment.

After we used TiDB, we got a simplified architecture as shown below.


Simplified architecture after we use TiDB

Simplified architecture after we use TiDB

Headache 3: We have a "pushy" PM!​

Just as the subtitle indicates, we have a very β€œpushy” PM, which is not always a bad thing. :) His demands kept extending, from the single project analysis at the very beginning to the comparison and ranking of multiple repositories, and to other multidimensional analysis such as the geographical distribution of stargazers and contributors. What’s more pressing was that the deadlines stayed unchanged!!!

We had to keep a balance between the growing demands and the tight deadlines.

To save time, we built our website using Docusaurus, an open source static site generator in React with scalability, rather than building a site from scratch. We also used Apache Echarts, a powerful charting library, to turn analytical results into good-looking and easy-to-understand charts.

We chose TiDB as the database to support our website, and it perfectly supports SQL. This way, our back-end engineers could write SQL commands to handle complex and flexible analytical queries with ease and efficiency. Then, our front-end engineers would just need to display those SQL execution results in the form of good-looking charts.

Finally, we made it. We prototyped our tool in just one week, and named it OSS Insight, short for open source software insights. We continued to fine-tune it, and it was officially released on May 3.

How we deal with analytical queries with SQL​

Let's use one example to show you how we deal with complex analytical queries.

Analyze a GitHub collection: JavaScript frameworks​

OSS Insight can analyze popular GitHub collections by many metrics including the number of stars, issues, and contributors. Let’s identify which JavaScript framework has the most issue creators. This is an analytical query that includes aggregation and ranking. To get the result, we only need to execute one SQL statement:

SELECT
ci.repo_name AS repo_name,
COUNT(distinct actor_login) AS num
FROM
github_events ge
JOIN collection_items ci ON ge.repo_id = ci.repo_id
JOIN collections c ON ci.collection_id = c.id
WHERE
type = 'IssuesEvent'
AND action = 'opened'
AND c.id = 10005
-- Exclude Bots
and actor_login not like '%bot%'
and actor_login not in (select login from blacklist_users)
GROUP BY 1
ORDER BY 2 DESC
;

In the statement above, the collections and collection_items tables store the data of all GitHub repository collections in various areas. Each table has 30 rows. To get the order of issue creators, we need to associate the repository ID in the collection_items table with the real, 4.6-billion-row github_events table as shown below.


mysql> select * from collection_items where collection_id = 10005;
+-----+---------------+-----------------------+-----------+
| id | collection_id | repo_name | repo_id |
+-----+---------------+-----------------------+-----------+
| 127 | 10005 | marko-js/marko | 15720445 |
| 129 | 10005 | angular/angular | 24195339 |
| 131 | 10005 | emberjs/ember.js | 1801829 |
| 135 | 10005 | vuejs/vue | 11730342 |
| 136 | 10005 | vuejs/core | 137078487 |
| 138 | 10005 | facebook/react | 10270250 |
| 142 | 10005 | jashkenas/backbone | 952189 |
| 143 | 10005 | dojo/dojo | 10160528 |
...
30 rows in set (0.05 sec)

Next, let's look at the execution plan. TiDB is compatible with MySQL syntax, so its execution plan looks very similar to that of MySQL.

In the figure below, notice the parts in red boxes. The data in the table collection_items is read through distributed[row], which means this data is processed by TiDB’s row storage engine, TiKV. The data in the table github_events is read through distributed[column], which means this data is processed by TiDB’s columnar storage engine, TiFlash. TiDB uses both row and columnar storage engines to execute the same SQL statement. This is so convenient for OSS Insight because it doesn’t have to split the query into two statements.


TiDB execution plan

TiDB execution plan

TiDB returns the following result:

+-----------------------+-------+
| repo_name | num |
+-----------------------+-------+
| angular/angular | 11597 |
| facebook/react | 7653 |
| vuejs/vue | 6033 |
| angular/angular.js | 5624 |
| emberjs/ember.js | 2489 |
| sveltejs/svelte | 1978 |
| vuejs/core | 1792 |
| Polymer/polymer | 1785 |
| jquery/jquery | 1587 |
| jashkenas/backbone | 1463 |
| ionic-team/stencil | 1101 |
...
30 rows in set
Time: 7.809s

Then, we just need to draw the result with Apache Echarts into a more visualized chart as shown below.


JavaScript frameworks with the most issue creators

JavaScript frameworks with the most issue creators

Note: You can click the REQUEST INFO on the upper right side of each chart to get the SQL command for each result.

Feedback: People love it!​

After we released OSS Insight on May 3, we have received loud applause on social media, via emails and private messages, from many developers, engineers, researchers, and people who are passionate about the open source community in various companies and industries.

I am more than excited and grateful that so many people find OSS Insight interesting, helpful, and valuable. I am also proud that my team made such a wonderful product in such a short time.


Applause given by developers and organizations on Twitter-1

Applause given by developers and organizations on Twitter-1

Applause given by developers and organizations on Twitter

Lessons learned​

Looking back at the process we used to build this website, we have learned many mind-refreshing lessons.

First, quick doesn’t mean dirty, as long as we make the right choices. Building an insight tool in just one week is tricky, but thanks to those wonderful, ready-made, and open source projects such as TiDB, Docusaurus, and Echarts, we made it happen with efficiency and without compromising the quality.

Second, it’s crucial to select the right databaseβ€”especially one that supports SQL. TiDB is a distributed SQL database with great scalability that can handle both transactional and real-time analytical workloads. With its help, we can process billions of rows of data with ease, and use SQL commands to execute complicated real-time queries. Further, using TiDB means we can leverage its resources to go to market faster and get feedback promptly.

If you like our project or are interested in joining us, you’re welcome to submit your PRs to our GitHub repository. You can also follow us on Twitter for the latest information.

note

πŸ“Œ Join our workshop​

If you want to get your own insights, you can join our workshop and try using TiDB to support your own datasets.

Β· 7 min read
Mini256

When it comes to GitHub, we often see fake GitHub users who are always enthusiastic and active, giving timely feedback to project maintainers and contributors, and helping developers with tasks that can be automated. Yes, the next thing I want to discuss is something about GitHub bots.

Overview​

In the OSSInsight project, we have developed a number of metrics to provide insight into open source projects. When developing some open source project metrics, we always consider excluding bot-generated actions or events from the metric calculation.

However, We can't ignore the contribution of robots in the domain of open source, and it's important to shift our thinking to look at what bots are doing on GitHub.

GitHub's bots help developers do a lot of work:

  • Issue triage and management. (For example: stale[bot]、todo[bot])
  • Code review, security audit and quality inspection (For example, snyk-bot).
  • Format checking like ensuring license agreement signing, or make sure commit messages semantic. (For example: CLAassistant)
  • Integration with third-party systems, including Jira, Slack, Jenkins and so on.
  • As an agent to help contributor perform some operations needed permission on the repository. (For example: k8s-ci-bot、ti-chi-bot)

Looking at the historical data, we see that the number of GitHub bots grows significantly faster after 2019 (on average, 20,000 new bots are created each year)

Β· 3 min read
Jagger

In this chapter, we will share with you some of the top JavaScript Framework repos(JSF repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Note:

  1. You can move your cursor onto any of the repository bars/lines on the chart and get the exact number.
  2. The SQL commands above each chart are what we use on our TiDB Cloud to get the analytical results. Try those SQL commands by yourselves on TiDB Cloud with this 10-minute tutorial.

Star history of top JavaScript Framework repos since 2011​

The number of stars is often thought of as a measure of whether a GitHub repository is popular or not. We sort all JavaScript framework repositories from GitHub by the total number of historical stars since 2011. For visualizing the results more intuitively, we show the top 10 open source databases by using an interactive line chart.

- - + + \ No newline at end of file diff --git a/blog/page/2/index.html b/blog/page/2/index.html index d2c1cb972a9..6d334c105d3 100644 --- a/blog/page/2/index.html +++ b/blog/page/2/index.html @@ -21,13 +21,13 @@ - - + +

Β· 2 min read
Jagger

In this chapter, we will share with you some of the top low-code development tools repos (LCDT repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Β· 6 min read
Jagger

On this page, we will share with you many deep insights into open source databases, such as the database popularity, database contributors, coding vitality, community feedback and so on.

We’ll also share the SQL commands that generate all these analytical results above each chart, so you can use them on your own on TiDB Cloud following this 10-minute tutorial.

Β· 2 min read
Jagger

In this chapter, we will share with you some of the top programming language repos (PL repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Β· 3 min read
Jagger

In this chapter, we will share with you some of the top Web Framework repos (WF repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Β· 10 min read
Fendy Feng

4.6 billion is literally an astronomical figure. The richest star map of our galaxy, brought by Gaia space observatory, includes just under 2 billion stars. What does a view of 4.6 billion GitHub events really look like? What secrets and values can be discovered in such an enormous amount of data?

Here you go: OSSInsight.io can help you find the answer. It’s a useful insight tool that can give you the most updated open source intelligence, and help you deeply understand any single GitHub project or quickly compare any two projects by digging deep into 4.6 billion GitHub events in real time. Here are some ways you can play with it.

Compare any two GitHub projects​

Do you wonder how different projects have performed and developed over time? Which project is worthy of more attention? OSSInsight.io can answer your questions via the Compare Projects page.

Let’s take the Kubernetes repository (K8s) and Docker’s Moby repository as examples and compare them in terms of popularity and coding vitality.

Popularity​

To compare the popularity of two repositories, we use multiple metrics including the number of stars, the growth trend of stars over time, and stargazers’ geographic and employment distribution.

Number of stars​

The line chart below shows the accumulated number of stars of K8s and Moby each year. According to the chart, Moby was ahead of K8s until late 2019. The star growth of Moby slowed after 2017 while K8s has kept a steady growth pace.

The star history of K8s and Moby

Geographical distribution of stargazers​

The map below shows the stargazers’ geographical distribution of Moby and K8s. As you can see, their stargazers are scattered around the world with the majority coming from the US, Europe, and China.

The geographical distribution of K8s and Moby stargazers

Employment distribution of stargazers​

The chart below shows the stargazers’ employment of K8s (red) and Moby (dark blue). Both of their stargazers work in a wide range of industries, and most come from leading dotcom companies such as Google, Tencent, and Microsoft. The difference is that the top two companies of K8s’ stargazers are Google and Microsoft from the US, while Moby’s top two followers are Tencent and Alibaba from China.

The employment distribution of K8s and Moby stargazers

Β· 3 min read
ilovesoup

Providing insights on large volume of email data might not be as easy as we thought. While data coming in real-time, indices and metadata are to be built consistently. To make things worse, the data volume is beyond traditional single node databases' reach.

Background​

To store large volumes of real-time user data like email and provide insights is not easy. If your application is layered on top of Gmail to automatically extract and organize the useful information buried inside of our inboxes.

It became clear that they were going to need a better system for organizing terabytes of email metadata to power collaboration as their customer base rapidly increased, it is not easy to provide insights. You need to organize email data by first applying a unique identifier to the emails and then proactively indexing the email metadata. The unique identifier is what connects the same email headers across. For each email inserted in real-time, the system extracts meta information from it and builds indices for high concurrent access. When data volume is small, it's all good: traditional databases provide all you need. However, when data size grows beyond a single node's capacity, everything becomes very hard.

Potential Database Solutions​

Regarding databases, there are some options you might consider:

  1. NoSQL database. While fairly scalable, it does not provide you indexing and comprehensive query abilities. You might end up implementing them in your application code.
  2. Sharing cluster of databases. Designing sharding key and paying attention to the limitations between shards are painful. It might be fine for applications with simple schema designs, but it will be too complicated for CRM. Moreover, it's very hard to maintain.
  3. Analytical databases. They are fine for dashboard and reporting. But not fine for high concurrent updates and index based serving.

How to get real-time insights​

TiDB is a distributed database with user experience of traditional databases. It looks like a super large MySQL without the limitations of NoSQL and sharding cluster solutions. With TiDB, you can simply have the base information, indices and metadata being updated in a concurrent manner with the help of cross-node transaction ability.

To build such a system, you just need following steps:

  1. Create schemas according to your access pattern with indices on user name, organization, job title etc.
  2. Use streaming system to gather and extract meta information from your base data
  3. Insert into TiDB via ordinary MySQL client driver like JDBC. You might want to gather data in small batches of hundreds of rows to speed up ingestion. In a single transaction, updates on base data, indices and meta information are guaranteed to be consistent.
  4. Optionally, deploy a couple of TiFlash nodes to speed up large scale reporting queries.
  5. Access the data just like in MySQL and you are all done. SQL features for analytics like aggregations, multi-joins or window functions are all supported with great performance.

For more cases, please see here.

info

🌟 Details in how OSS Insight works​

Go to read Use TiDB Cloud to Analyze GitHub Events in 10 Minutes and use the Serverless Tier TiDB Cloud Cluster.

You can find how we deal with massive github data in Data Preparation for Analytics as well!

Β· 5 min read
Fendy Feng
hooopo

TiDB is an open source distributed NewSQL database with horizontal scalability, high availability, and strong consistency. It can also deal with mixed OLTP and OLAP workloads at the same time by leveraging its hybrid transactional and analytical (HTAP) capability.

TiDB Cloud is a fully-managed Database-as-a-Service (DBaaS) that brings everything great about TiDB to your cloud and lets you focus on your applications, not the complexities of your database.

In this tutorial, we will provide you with a piece of sample data of all GitHub events occurring on January 1, 2022, and walk you through on how to use TiDB Cloud to analyze this data in 10 minutes.

Sign up for a TiDB Cloud account (Free)​

  1. Click here to sign up for a TiDB Cloud account free of charge.
  2. Log in to your account.

Β· 5 min read
hooopo

Data​

All the data we use here on this website sources from GH Archive, a non-profit project that records and archives all GitHub events data since 2011. The total data volume archived by GH Archive can be up to 4 billion rows. We download the json file on GH Archive and convert it into csv format via Script, and finally load it into the TiDB cluster in parallel through TiDB-Lightning.

In this section, we will explain step by step how we conduct this process.

  1. Prepare the data in csv format for TiDB Lighting.
- - + + \ No newline at end of file diff --git a/blog/reduce-query-latency/index.html b/blog/reduce-query-latency/index.html index 9c98059a90b..427108ef905 100644 --- a/blog/reduce-query-latency/index.html +++ b/blog/reduce-query-latency/index.html @@ -21,13 +21,13 @@ - - + +

Reducing Online Serving Latency from 1.11s to 123.6ms on a Distributed SQL Database

Β· 11 min read
Mini256
Caitin Chen

TL;DR:

This post tells how a website on a distributed database reduced online serving latency from 1.11 s to 417.7 ms, and then to 123.6 ms. We found that some lessons learned on MySQL could be applied throughout the optimization process. But when we optimize a distributed database, we need to consider more.

The OSS Insight website displays the data changes of GitHub events in real time. It's powered by TiDB Cloud, a MySQL-compatible distributed SQL database for elastic scale and real-time analytics.

Recently, to save costs, we tried to use lower-specification machines without affecting query efficiency and user experience. But our website and query response slowed down.


The repository analysis page was loading

The repository analysis page was loading, loading, and loading

How could we solve these problems on a distributed database? Could we use the methodology we learned on MySQL?

Analyzing the SQL execution plan​

To identify slow SQL statements, we used TiDB Cloud's Diagnosis page to sort SQL queries by their average latency.

For example, after the API server received a request, it executed the following SQL statement to obtain the number of issues in the vscode repository:

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

However, if the open source repository is large, this query may take several seconds or more to execute.

Using EXPLAIN ANALYZE to troubleshoot query performance problems​

In MySQL, when we troubleshoot query performance problems, we usually use the EXPLAIN ANALYZE <sql> statement to view the SQL statement's execution plan. We can use the execution plan to locate the problem. The same works for TiDB.

We executed the EXPLAIN statement:

EXPLAIN ANALYZE SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

The result showed that the query took 1.11 seconds to execute.


The query result

The query result

You can see that TiDB's EXPLAIN ANALYZE statement execution result was completely different from MySQL's. TiDB's execution plan gave us a clearer understanding of how this SQL statement was executed.

The execution plan shows:

  • This SQL statement was split into several subtasks. Some were on the root node, and others were on the tikv node.
  • The query fetched data from the partition:issue_event partition table.
  • This query did a range scan through the index index_github_events_on_repo_id(repo_id). This let the query narrow down the data scan quickly. This process only took 59 ms. It was the sum of the execution times of multiple concurrent tasks.
  • Besides IndexRangeScan, the query also used TableRowIDScan. This scan took 4.69 s, the sum of execution times for multiple concurrent subtasks.

From the execution times above, we determined that the query performance bottleneck was in the TableRowIDScan step.

We reran the EXPLAIN ANALYZE statement and found that the query was faster the second time. Why?

Why did TableRowIDScan take so long?​

To find the reason why TableRowIDScan took so long, we need basic knowledge of TiDB's underlying storage.

In TiDB, a table's data entries and indexes are stored on TiKV nodes in key-value pairs.

  • For an index, the key is the combination of the index value and the row_id (for a non-clustered index) or the primary key (for a clustered index). The row_id or primary key indicates where the data is stored.
  • For a data entry, the key is the combination of the table ID and the row_id or primary key. The value part is the combination of this row of data.

This graph shows how IndexLookup is executed in the execution plan:


The logical structure

This is the logical structure, not the physical storage structure.

In the query above, TiDB uses the query condition repo_id=41881900 to filter out all row numbers row_id related to the repository in the secondary index index_github_events_on_repo_id. The query needs the number column data, but the secondary index doesn't provide it. Therefore, TiDB must execute IndexLookup to find the corresponding row in the table based on the obtained row_id (the TableRowIDScan step).

The rows are probably scattered in different data blocks and stored on the hard disk. This causes TiDB to perform a large number of I/O operations to read data from different data blocks or even different machine nodes.

Why was EXPLAIN ANALYZE faster the second time?​

In EXPLAIN ANALYZE's execution result, we saw that the "execution info" column corresponding to the TableRowIDScan step contained this information:

block: {cache_hit_count: 2755559, read_count: 179510, read_byte: 4.07 GB}

We thought this had something to do with TiKV. TiKV read a very large number of data blocks from the disk. Because the data blocks read from the disk were cached in memory in the first execution, 2.75 million data blocks could be read directly from memory instead of being retrieved from the hard disk. This made the TableRowIDScan step much faster, and the query was faster overall.

However, we believed that user queries were random. For example, a user might look up data from a vscode repository and then go to a kubernetes repository. TiKV's memory couldn't cache all the data blocks in all the drives. Therefore, this did not solve our problem, but it reminded us that when we analyze SQL execution efficiency, we need to exclude cache effects.

Using a covering index to avoid executing TableRowIDScan​

Could we avoid executing TableRowIDScan in IndexLookup?

In MySQL, a covering index prevents the database from index lookup after index filtering. We wanted to apply this to OSS Insight. In our TiDB database, we tried to create a composite index to achieve index coverage.

When we created a composite index with multiple columns, we needed to pay attention to the column order. Our goals were to allow a composite index to be used by as many queries as possible, to help these queries narrow the scope of data scans as quickly as possible, and to provide as many fields as possible in the query. When we created a composite index we followed this order:

  1. Columns that had high differentiation and could be used as equivalence conditions for the WHERE statement, like repo_id
  2. Columns that didn't have high differentiation but could be used as equivalence conditions for the WHERE statement, like type and action
  3. Columns that could be used as range query conditions for the WHERE statement, like created_at
  4. Redundant columns that were not used as filter conditions but were used in the query, such as number and push_size

We used the CREATE INDEX statement to create a composite index in the database:

CREATE INDEX index_github_events_on_repo_id_type_number ON github_events(repo_id, type, number);

When we created the index and ran the SQL statement again, the query speed was significantly faster. We viewed the execution plan through EXPLAIN ANALYZE and found that the execution plan became simpler. The IndexLookup and TableRowIDScan steps were gone. The query took only 417.7 ms.


The result of the EXPLAIN query

The result of the EXPLAIN query. This query cost 417.7 ms

So we knew that our query could get all the data it needed by doing an IndexRangeScan on the new index. This composite index included the number field, so TiDB did not need to perform IndexLookup to get data from the table. This reduced a lot of I/O operations.


`IndexRangeScan` in the non-clustered table

IndexRangeScan in the non-clustered table

Pushing down computing to further reduce query latency​

For a query that needed to obtain 270,000 rows of data, 417.7 ms was quite a short execution time. But could we improve the time even more?

We thought this relied on TiDB's architecture that separates computing and storage layers. This is different from MySQL.

In TiDB:

  • The tidb-server node computes data. It corresponds to root in the execution plan.
  • The tikv-server node stores the data. It corresponds to cop[tikv] in the execution plan.

Generally, an SQL statement is split into multiple steps to execute with the cooperation of computing and storage nodes.

When we executed the SQL statement in this article, TiDB obtained the data of the github_events table from tikv-server and performed the aggregate calculation of the COUNT function on tidb-server.

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

The execution plan indicated that when TiDB was performing IndexReader, tidb-server needed to read 270,000 rows of data from tikv-server through the network. This was time-consuming.


`tidb-server` read 270,000 rows of data from `tikv-server`

tidb-server read 270,000 rows of data from tikv-server

How could we avoid such a large network transmission? Although the query needed to obtain a large amount of data, the final calculation result was only a number. Could we complete the COUNT aggregation calculation on tikv-server and return the result only to tidb-server?

TiDB had implemented this idea through the coprocessor on tikv-server. This optimization process is called computing pushdown.

The execution plan indicated that our SQL query did not do this. Why? We checked the TiDB documentation and learned that:

Usually, aggregate functions with the DISTINCT option are executed in the TiDB layer in a single-threaded execution model.

This meant that our SQL statement couldn't use computing pushdown.

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

Therefore, we removed the DISTINCT keyword.

For the github_events table, an issue only generated an event with the IssuesEvent type and opened action. We could get the total number of unique issues by adding the condition of action = 'opened'. This way, we didn't need to use the DISTINCT keyword for deduplication.

SELECT
COUNT(number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent'
AND action = 'opened';

The composite index we created lacked the action column. This caused the query index coverage to fail. So we created a new composite index:

CREATE INDEX index_github_events_on_repo_id_type_action_number ON github_events(repo_id, type, action, number);

After we created the index, we checked the execution plan of the modified SQL statement through the EXPLAIN ANALYZE statement. We found that:

  • Because we added a new filter action='opened', the number of rows to scan had decreased from 270,000 to 140,000.
  • tikv-server executed the StreamAgg operator, which was the aggregate calculation of the COUNT function. This indicated that the calculation had been pushed down to the TiKV coprocessor for execution.
  • tidb-server only needed to obtain two rows of data from tikv-server through the network. This greatly reduced the amount of data transmitted.
  • The query only took 123.6 ms.
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+
| id | estRows | actRows | task | access object | execution info | operator info | memory | disk |
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+
| StreamAgg_28 | 1.00 | 1 | root | | time:123.6ms, loops:2 | funcs:count(Column#43)->Column#34 | 388 Bytes | N/A |
| └─IndexReader_29 | 1.00 | 2 | root | partition:issues_event | time:123.6ms, loops:2, cop_task: {num: 2, max: 123.5ms, min: 1.5ms, avg: 62.5ms, p95: 123.5ms, max_proc_keys: 131360, p95_proc_keys: 131360, tot_proc: 115ms, tot_wait: 1ms, rpc_num: 2, rpc_time: 125ms, copr_cache_hit_ratio: 0.50, distsql_concurrency: 15} | index:StreamAgg_11 | 590 Bytes | N/A |
| └─StreamAgg_11 | 1.00 | 2 | cop[tikv] | | tikv_task:{proc max:116ms, min:8ms, avg: 62ms, p80:116ms, p95:116ms, iters:139, tasks:2}, scan_detail: {total_process_keys: 131360, total_process_keys_size: 23603556, total_keys: 131564, get_snapshot_time: 1ms, rocksdb: {delete_skipped_count: 320, key_skipped_count: 131883, block: {cache_hit_count: 307, read_count: 1, read_byte: 63.9 KB, read_time: 60.2Β΅s}}} | funcs:count(gharchive_dev.github_events.number)->Column#43 | N/A | N/A |
| └─IndexRangeScan_15 | 7.00 | 141179 | cop[tikv] | table:github_events, index:index_ge_on_repo_id_type_action_created_at_number(repo_id, type, action, created_at, number) | tikv_task:{proc max:116ms, min:8ms, avg: 62ms, p80:116ms, p95:116ms, iters:139, tasks:2} | range:[41881900 "IssuesEvent" "opened",41881900 "IssuesEvent" "opened"], keep order:false | N/A | N/A |
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+

Applying what we learned to other queries​

Through our analysis and optimizations, the query latency was significantly reduced:

1.11 s β†’ 417.7 ms β†’ 123.6 ms

We applied what we learned to other queries and created the following composite indexes in the github_events table:

index_ge_on_repo_id_type_action_pr_merged_created_at_add_del

index_ge_on_repo_id_type_action_created_at_number_pdsize_psize

index_ge_on_repo_id_type_action_created_at_actor_login

index_ge_on_creator_id_type_action_merged_created_at_add_del

index_ge_on_actor_id_type_action_created_at_repo_id_commits

These composite indexes covered more than 20 analytical queries in repository analysis and personal analysis pages on the OSS Insight website. This improved our website's overall loading speed.

Some lessons we learned on MySQL can be applied throughout the optimization process. But we need to consider more when we optimize query performance in a distributed database. We also recommend you read Performance Tuning in the TiDB documentation. This will give you a more professional and comprehensive guide to performance optimization.

References​

- - + + \ No newline at end of file diff --git a/blog/saas-insight-for-building-a-real-time-crm-application/index.html b/blog/saas-insight-for-building-a-real-time-crm-application/index.html index ea8dc74d6f0..8735356c99f 100644 --- a/blog/saas-insight-for-building-a-real-time-crm-application/index.html +++ b/blog/saas-insight-for-building-a-real-time-crm-application/index.html @@ -21,13 +21,13 @@ - - + +

SaaS Insight for Building a Real-time CRM Application

Β· 3 min read
ilovesoup

Providing insights on large volume of email data might not be as easy as we thought. While data coming in real-time, indices and metadata are to be built consistently. To make things worse, the data volume is beyond traditional single node databases' reach.

Background​

To store large volumes of real-time user data like email and provide insights is not easy. If your application is layered on top of Gmail to automatically extract and organize the useful information buried inside of our inboxes.

It became clear that they were going to need a better system for organizing terabytes of email metadata to power collaboration as their customer base rapidly increased, it is not easy to provide insights. You need to organize email data by first applying a unique identifier to the emails and then proactively indexing the email metadata. The unique identifier is what connects the same email headers across. For each email inserted in real-time, the system extracts meta information from it and builds indices for high concurrent access. When data volume is small, it's all good: traditional databases provide all you need. However, when data size grows beyond a single node's capacity, everything becomes very hard.

Potential Database Solutions​

Regarding databases, there are some options you might consider:

  1. NoSQL database. While fairly scalable, it does not provide you indexing and comprehensive query abilities. You might end up implementing them in your application code.
  2. Sharing cluster of databases. Designing sharding key and paying attention to the limitations between shards are painful. It might be fine for applications with simple schema designs, but it will be too complicated for CRM. Moreover, it's very hard to maintain.
  3. Analytical databases. They are fine for dashboard and reporting. But not fine for high concurrent updates and index based serving.

How to get real-time insights​

TiDB is a distributed database with user experience of traditional databases. It looks like a super large MySQL without the limitations of NoSQL and sharding cluster solutions. With TiDB, you can simply have the base information, indices and metadata being updated in a concurrent manner with the help of cross-node transaction ability.

To build such a system, you just need following steps:

  1. Create schemas according to your access pattern with indices on user name, organization, job title etc.
  2. Use streaming system to gather and extract meta information from your base data
  3. Insert into TiDB via ordinary MySQL client driver like JDBC. You might want to gather data in small batches of hundreds of rows to speed up ingestion. In a single transaction, updates on base data, indices and meta information are guaranteed to be consistent.
  4. Optionally, deploy a couple of TiFlash nodes to speed up large scale reporting queries.
  5. Access the data just like in MySQL and you are all done. SQL features for analytics like aggregations, multi-joins or window functions are all supported with great performance.

For more cases, please see here.

info

🌟 Details in how OSS Insight works​

Go to read Use TiDB Cloud to Analyze GitHub Events in 10 Minutes and use the Serverless Tier TiDB Cloud Cluster.

You can find how we deal with massive github data in Data Preparation for Analytics as well!

- - + + \ No newline at end of file diff --git a/blog/say-thanks-to-github-robots/index.html b/blog/say-thanks-to-github-robots/index.html index 99833e24163..3b79239d1a3 100644 --- a/blog/say-thanks-to-github-robots/index.html +++ b/blog/say-thanks-to-github-robots/index.html @@ -21,14 +21,14 @@ - - + +

Love, Code, and Robot β€” Explore robots in the world of code

Β· 7 min read
Mini256

When it comes to GitHub, we often see fake GitHub users who are always enthusiastic and active, giving timely feedback to project maintainers and contributors, and helping developers with tasks that can be automated. Yes, the next thing I want to discuss is something about GitHub bots.

Overview​

In the OSSInsight project, we have developed a number of metrics to provide insight into open source projects. When developing some open source project metrics, we always consider excluding bot-generated actions or events from the metric calculation.

However, We can't ignore the contribution of robots in the domain of open source, and it's important to shift our thinking to look at what bots are doing on GitHub.

GitHub's bots help developers do a lot of work:

  • Issue triage and management. (For example: stale[bot]、todo[bot])
  • Code review, security audit and quality inspection (For example, snyk-bot).
  • Format checking like ensuring license agreement signing, or make sure commit messages semantic. (For example: CLAassistant)
  • Integration with third-party systems, including Jira, Slack, Jenkins and so on.
  • As an agent to help contributor perform some operations needed permission on the repository. (For example: k8s-ci-bot、ti-chi-bot)

Looking at the historical data, we see that the number of GitHub bots grows significantly faster after 2019 (on average, 20,000 new bots are created each year)

I looked into what happened during the year and found that GitHub invested a lot in its software development infrastructure (including bots) during the year.

At this year, we, human beings, were amazed to discover that bots could find problems, submit PRs, wait CI test code, complete merges and comment on PRs on their own without any human involvement.

Bot automatically completes a pull request

For now, rough statistics found that there are more than 95,620 bots on GitHub, the number doesn't seem like so much, but wait...

Click here to show computational process

Before that, we had collected 4.7 billion github events stored in our database. Now we can count the number of bots on GitHub by executing a simple SQL statement:

SELECT COUNT(DISTINCT actor_login) AS 'Bots'
FROM github_events ge
WHERE actor_login REGEXP '^(bot-.+|.+bot|.+\\[bot\\]|.+-bot-.+|robot-.+|.+-ci-.+|.+-ci|.+-testing|.+clabot.+|.+-gerrit|k8s-.+|.+-machine|.+-automation|github-.+|.+-github|.+-service|.+-builds|codecov-.+|.+teamcity.+|jenkins-.+|.+-jira-.+)$';

In this SQL statement, we use a regular expression to determine which actor_login is the robot login. For example, the well known star robot dependabot[bot], whose github login ends with [bot], we can find more bots among a large number of events based on this method.

+-------+
| Bots |
+-------+
| 95620 |
+-------+
1 row in set
Time: 16.921s

πŸ‘€ These 95 thousand bot accounts generated 603 million events, these events account for 12.82% of all public events on GitHub.

Click here to show computational process
  1. Count the total number of public events triggered by GitHub bot
SELECT COUNT(*) AS 'Bot''s events'
FROM github_events ge
WHERE actor_login REGEXP '^(bot-.+|.+bot|.+\\[bot\\]|.+-bot-.+|robot-.+|.+-ci-.+|.+-ci|.+-testing|.+clabot.+|.+-gerrit|k8s-.+|.+-machine|.+-automation|github-.+|.+-github|.+-service|.+-builds|codecov-.+|.+teamcity.+|jenkins-.+|.+-jira-.+)$';
+--------------+
| Bot's events |
+--------------+
| 603554237 |
+--------------+
1 row in set
Time: 13.087s
  1. Count the total number of all public events on GitHub
SELECT COUNT(*) AS 'All public events' FROM github_events ge;
+-------------------+
| All public events |
+-------------------+
| 4705191048 |
+-------------------+
1 row in set
Time: 4.322s
  1. Calculate the proportion of the former in the latter
SELECT CONCAT(TRUNCATE(603554237 / 4705191048 * 100, 2), '%') AS 'Proportion of Events';
+----------------------+
| Proportion of Events |
+----------------------+
| 12.82% |
+----------------------+
1 row in set
Time: 0.047s

And these GitHub robots have served over 18 million open source repositories.

Click here to show computational process
SELECT COUNT(DISTINCT repo_id) AS 'Repositories'
FROM github_events ge
WHERE actor_login REGEXP '^(bot-.+|.+bot|.+\\[bot\\]|.+-bot-.+|robot-.+|.+-ci-.+|.+-ci|.+-testing|.+clabot.+|.+-gerrit|k8s-.+|.+-machine|.+-automation|github-.+|.+-github|.+-service|.+-builds|codecov-.+|.+teamcity.+|jenkins-.+|.+-jira-.+)$';
+--------------+
| Repositories |
+--------------+
| 18415262 |
+--------------+
1 row in set
Time: 27.060s

Cases study​

Dependabot[bot]​

dependabot[bot] is a hard-working bot responsible for helping open source projects keep their dependencies up to date.

By analyzing depentenbot's Push commit time, we found that he likes to start his busy week at 8:00 on Mondays (at GMT timezone).

It is commendable that, after a series of log4j security vulnerabilities came to light, it helped many Java-language repositories to update the dependency to a secure version timely.

Stale Bots​

Stale Bot is a controversial class of robots, they are responsible for reminding maintainers to continue promoting long-term stale issue.

Bad practiceBest practices

The user from Gatsby:

I used to open GitHub issues to Gatsby to report bugs. Almost nothing was ever fixed and every few weeks I had to manually clickety-click to keep the issues alive because of the stale bot. Guess what I do now? I don't report bugs to Gatsby, and I recommend against using Gatsby in newer projects.

The user from NixOS:

IMO NixOS has the right stalebot settings 0. It was discussed thoroughly in the RFC, as to choose the right information text and other actions by the bot. For example, the bot will only mark the issue/PR as stale and will never close the issue or lock it. Issues are only ever closed by humans. The information text they came up with is quite a bit longer than the ansible one 1. I think this is a very important point when adding such a bot, otherwise the user will be left helpless.

To verify the above statement, we run the following query through the SQL statement:

SELECT actor_login, COUNT(DISTINCT pr_or_issue_id) AS cnt
FROM github_events ge
WHERE
repo_name = 'gatsbyjs/gatsby'
AND type = 'IssuesEvent'
AND action = 'closed'
AND (actor_login LIKE '%[bot]' OR actor_login LIKE '%bot')
GROUP BY actor_login
ORDER BY cnt DESC;

We know from the following query that many Issues in the gatsbyjs/gatsby repository have been closed by the stale bots.

+---------------------+------+
| actor_login | cnt |
+---------------------+------+
| gatsbot[bot] | 1389 |
| github-actions[bot] | 777 |
| gatsbybot | 265 |
| stale[bot] | 50 |
| renovate[bot] | 1 |
+---------------------+------+
5 rows in set
Time: 0.100s

I think it is necessary to distinguish between what should be done by robots and what must be done with human involvement.

Weird bots​

There are some weird bots on GitHub that don't help people work and learn on GitHub, but rather act as data movers.

  • Some of them will use GitHub as a free place to archive their data, for example, speedtracker-bot, newstools.

  • Some of them will periodically upload a timestamp to the code repository as a commit, for example, keihin00174.

  • Some are even crazier, and you can't even access their profile pages because the number of events generated is so large that GitHub's database can't process them quickly, for example, mhutchinson-witness, direwolf-github.

    Too long time to load bot profile

Ranks​

We ranked the robots according to their contribution.

- - + + \ No newline at end of file diff --git a/blog/tags/apche-log-4-j/index.html b/blog/tags/apche-log-4-j/index.html index 3c4b93ad8ab..7c04082843f 100644 --- a/blog/tags/apche-log-4-j/index.html +++ b/blog/tags/apche-log-4-j/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "Apche Log4j"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/c-url/index.html b/blog/tags/c-url/index.html index f6f673dade7..4eeb9e3eae9 100644 --- a/blog/tags/c-url/index.html +++ b/blog/tags/c-url/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "cURL"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/chatgpt/index.html b/blog/tags/chatgpt/index.html index 7b4abbcd5f5..c7216cf220a 100644 --- a/blog/tags/chatgpt/index.html +++ b/blog/tags/chatgpt/index.html @@ -21,14 +21,14 @@ - - + +

3 posts tagged with "chatgpt"

View All Tags

Β· 18 min read
sykp241095
ChatGPT

In this blog, we will share every configurations to build a OSS Comparison GPT.

GPTs Configurations​

Name​

Open Source Benchmark

Description​

Compare open-source softwares

Instructions​

You are a data analysis expert. 
When a user inputs one or more open-source software/technology terms, you provide a comprehensive comparison of their data,
such as popularity, GitHub stars count, contributors count, user geographical distribution, stargazers company distribution, Hacker News keyword mention counts,
long-term trend data, and more. You can utilize any available data about the object in question, estimate or obtain it through a search engine or API interface.
Currently, you have the following APIs at your disposal:

1. GitHub API for getting repo basic info
2. OSS Insight API for star history and stargazer's distribution
3. Hackernews mentions per_year API
4. OSS Insight star history chart API (show me with a <img> label)
5. OSS Insight API for stargazers company distribution

Here's a step-by-step process:

Identify which API to use based on the data you need.
- you goal is to think more metrics according exist API.
- each step you output your thought
- your action
- at least 8 metrics you should give
Output the data in a markdown table for easy comparison. add your known metrics for more insight. at least 8 metrics.

| Dimension | A | B |
|----------------|-------------|-------------|
| Dimension 1 | Detail A1 | Detail B1 |
| Dimension 2 | Detail A2 | Detail B2 |
| Dimension 3 | Detail A3 | Detail B3 |
| ... | ... | ... |
| Dimension N | Detail AN | Detail BN |

- For star history data, you should generate a line chart using oss insight star history api, at least one chart.
- For stargazers company data, you use markdown table:
| Company | Stargazers Count |
|-----------------|------------------|
| Company A | 100 |
| Company B | 75 |
| Company C | 50 |
| Company D | 30 |
| Other/Unknown | 45 |

Provide insights and analysis based on the collected data. and trending insight.
Be sure to think big! Always give plan and explain what you do.

Let's begin

Plan:
Tools:
Action:
Output:
Deep Insight:

At the end, you should give use some surprise, you can search stackshare.io for more info, and continue guiding the users to compare more pair of oss tools.

Conversation starters​

PyTorch vs TensorFlow
TiDB vs Vitess
React vs Vue
Golang vs Rust-lang

Capabilities​

tip

Make all these three capabilities checked

  • Web Browsing
  • DALL-E Image Generation
  • Code Interpreter

Actions​

Action 1: Config API of next.ossinsight.io for drawing star historical chart​

Schema​
openapi: 3.0.0
info:
title: OSS Insight star history chart API
version: 1.0.0
description: OSS Insight star history chart API.
servers:
- url: https://next.ossinsight.io
paths:
/widgets/official/analyze-repo-stars-history/manifest.json:
get:
operationId: Star History
summary: Retrieve repository star history analysis
description: Fetches the star history and analysis for specified repositories.
parameters:
- name: repo_id
in: query
required: true
description: The ID of the primary repository.
schema:
type: integer
- name: vs_repo_id
in: query
required: true
description: The ID of the repository to compare with.
schema:
type: integer
responses:
'200':
description: Successful response with star history data.
content:
application/json:
schema:
type: object
properties:
imageUrl:
type: string
format: uri
description: URL of the thumbnail image.
title:
type: string
description: Title of the analysis.
description:
type: string
description: Description of the analysis.
'400':
description: Bad request - parameters missing or invalid.
'404':
description: Resource not found.
'500':
description: Internal server error.
Privacy policy​
https://www.pingcap.com/privacy-policy/

Action 2: Config api.github.com for fetching basic info of a repository​

As GitHub API use Personal Access Token and Bearer type of authentication for authentication, you should create one in: https://github.com/settings/tokens, it will be used later.

Schema:​
openapi: 3.0.0
info:
title: GitHub Repository Info API
description: An API for retrieving information about GitHub repositories.
version: 1.0.0
servers:
- url: https://api.github.com
description: GitHub API Server
paths:
/repos/{owner}/{repo}:
get:
summary: Get Repository Info
description: Retrieve information about a GitHub repository.
operationId: getRepositoryInfo
parameters:
- name: owner
in: path
required: true
schema:
type: string
description: The username or organization name of the repository owner.
- name: repo
in: path
required: true
schema:
type: string
description: The name of the repository.
responses:
'200':
description: Successful response with repository information.
content:
application/json:
schema:
type: object
properties:
id:
type: integer
name:
type: string
full_name:
type: string
owner:
type: object
properties:
login:
type: string
id:
type: integer
avatar_url:
type: string
html_url:
type: string
private:
type: boolean
description:
type: string
fork:
type: boolean
url:
type: string
html_url:
type: string
language:
type: string
forks_count:
type: integer
stargazers_count:
type: integer
watchers_count:
type: integer
size:
type: integer
default_branch:
type: string
open_issues_count:
type: integer
topics:
type: array
items:
type: string
has_issues:
type: boolean
has_projects:
type: boolean
has_wiki:
type: boolean
has_pages:
type: boolean
has_downloads:
type: boolean
has_discussions:
type: boolean
archived:
type: boolean
disabled:
type: boolean
visibility:
type: string
pushed_at:
type: string
format: date-time
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
license:
type: object
properties:
key:
type: string
name:
type: string
spdx_id:
type: string
url:
type: string
Privacy policy​
https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement

Action 3: Stargazer's geo & company distribution provided by TiDB Serverless Data Service​

Schema URL to import​
https://us-west-2.prod.aws.tidbcloud.com/api/v1/dataservices/external/appexport/openapi?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBpZCI6ImRhdGFhcHAtUmZGS2NaRnUiLCJjcmVhdGVyIjoiaHVvaGFvQHBpbmdjYXAuY29tIiwic2VuY2UiOiJvcGVuYXBpIn0.xqu-ZCPHozisIHWTD5XM_5t2JWOGVpAejcQeWiTH_Mw

or you can use the following details schema.

Show detailed API schema

components:
schemas:
getGithubRepoStar_historyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
date:
type: string
stargazers:
type: string
required:
- date
- stargazers
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_companyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
company_name:
type: string
proportion:
type: string
stargazers:
type: string
required:
- company_name
- stargazers
- proportion
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_countryResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
country_code:
type: string
percentage:
type: string
stargazers:
type: string
required:
- country_code
- stargazers
- percentage
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_countResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
required:
- count
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_per_yearResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
date:
type: string
required:
- count
- date
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
securitySchemes:
basicAuth:
description: Enter your public key for the username field and private key for
the password field
scheme: basic
type: http
info:
description: API Interface for GPT PK Action, response GitHub repo metrics and hackernews
mentions count data
title: GPT-PK
version: 1.0.0
openapi: 3.0.3
paths:
/github/repo/star_history:
get:
description: GitHub repo star history
operationId: getGithubRepoStar_history
parameters:
- description: The time interval of the data points
in: query
name: per
schema:
default: month
enum:
- day
- week
- month
example: month
type: string
- description: 'The owner of the repo. For example: `pingcap`'
in: query
name: owner
required: true
schema:
default: ""
example: ""
type: string
- description: 'The name of the repo. For example: `tidb`'
in: query
name: repo
required: true
schema:
default: ""
example: ""
type: string
- description: The start date of the range
in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- description: The end date of the range
in: query
name: to
schema:
default: "2099-12-31"
example: "2099-12-31"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Internal server error
summary: /github/repo/star_history
tags:
- Default
/github/repo/stargazers_company:
get:
operationId: getGithubRepoStargazers_company
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Internal server error
summary: /github/repo/stargazers_company
tags:
- Default
/github/repo/stargazers_country:
get:
description: github repo stargazers country
operationId: getGithubRepoStargazers_country
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
- in: query
name: exclude_unknown
schema:
default: "true"
example: "true"
type: boolean
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Internal server error
summary: /github/repo/stargazers_country
tags:
- Default
/hackernews/mentions_count:
get:
description: Total counts for keyword in hackernews
operationId: getHackernewsMentions_count
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Internal server error
summary: /hackernews/mentions_count
tags:
- Default
/hackernews/mentions_per_year:
get:
description: keyword mentions per year in hackernews
operationId: getHackernewsMentions_per_year
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Internal server error
summary: /hackernews/mentions_per_year
tags:
- Default
security:
- basicAuth: []
servers:
- url: https://us-west-2.data.tidbcloud.com/api/v1beta/app/dataapp-RfFKcZFu/endpoint

API Key​

When config this action, you should input the following encoded api key in Authentication -> API Key -> Auth Type(Basic)

QzBTQ0VRNzA6MmJjNjAwYzUtODA0Mi00Yzg4LTkxNTgtMTNiNzdkMDY0OGM5
Note!
  • Make sure using this key for GPT's learning, thanks~
  • We will revoke this key after a period of time
Privacy policy​
https://www.pingcap.com/privacy-policy/

Β· 2 min read
PingCAP
ChatGPT

SQL is a powerful language for managing and analyzing data, but it can be difficult to learn for beginners. That's where ChatGPT comes in.

ChatGPT is a large language model trained by OpenAI that can help you learn SQL easily by visualizing the key information in a SQL query. In this blog post, we'll show you how to use ChatGPT to visualize SQL queries using pretty ASCII art diagrams. Let's start with an example. Suppose we want to find the top 10 most popular AI projects on GitHub in the last month. Here's the SQL query that does that:

SELECT
repo_name,
COUNT(*) AS stars
FROM
github_events
WHERE
type = 'WatchEvent'
AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
AND repo_name LIKE '%AI%'
GROUP BY
repo_name
ORDER BY
stars DESC
LIMIT
10

Now, let's use ChatGPT to visualize this SQL query using pretty ASCII art diagrams. Here's the diagram:

          +-------------------+            
| What to Retrieve? | top 10
+-------------------+
| SELECT
| repo_name,
| COUNT(*) AS stars
v
+-------------------+
| From Where? | GitHub
+-------------------+
| FROM
| github_events
v
+-------------------+
| Filter By: | last month, AI projects, most popular
+-------------------+
| WHERE
| type = 'WatchEvent'
| AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
| AND repo_name LIKE '%AI%'
v
+-------------------+
| Group By |
+-------------------+
| GROUP BY
| repo_name
v
+-------------------+
| Order By | most popular
+-------------------+
| ORDER BY
| stars DESC
v
+-------------------+
| Limit To 10 | top 10
+-------------------+
| LIMIT
| 10
v

This diagram visually shows the flow of the SQL query, from selecting what to retrieve, to filtering, grouping, ordering, and limiting the results. The arrows make it easy to see the relationship between the key information in the question and the corresponding SQL statements.

By using ChatGPT to visualize SQL queries with pretty ASCII art diagrams, you can learn SQL easily and quickly. The diagrams help you understand the structure of the SQL query, and make it easy to see how the various statements are related. With practice, you'll be able to write your own SQL queries in no time.

In conclusion, if you want to learn SQL easily, try using ChatGPT to visualize SQL queries with pretty ASCII art diagrams. It's a fun and effective way to learn SQL and improve your data management skills.

Β· One min read
PingCAP
ChatGPT

This blog is written with help of ChatGPT.


To get insight of your own dataset without writing sql is easy, follow these steps:

  1. Sign up for a TiDB Cloud account at https://tidbcloud.com/ using your email, Google account, or GitHub account.

  2. Create a free Serverless Tier cluster in the TiDB Cloud web console.

  3. In the TiDB Cloud web console, click the "Import" button and follow the prompts to load a CSV file into your cluster from a local file or from Amazon S3.

    Import Data

  4. Use the web console's SQL editor(Chat2Query) to get insights from your data. But no worry, you don't need to write SQL, you could ask questions about your data in natural language.

    The magic is typing -- your question and press Enter, here is an example:

- - + + \ No newline at end of file diff --git a/blog/tags/core-js/index.html b/blog/tags/core-js/index.html index 29963cf9a7c..8481cefbbae 100644 --- a/blog/tags/core-js/index.html +++ b/blog/tags/core-js/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "Core-js"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/git-hub/index.html b/blog/tags/git-hub/index.html index 432d0d5e809..be7fca79da5 100644 --- a/blog/tags/git-hub/index.html +++ b/blog/tags/git-hub/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "GitHub"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/gpts/index.html b/blog/tags/gpts/index.html index 1c55d3ea2a8..8030141f15f 100644 --- a/blog/tags/gpts/index.html +++ b/blog/tags/gpts/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "gpts"

View All Tags

Β· 18 min read
sykp241095
ChatGPT

In this blog, we will share every configurations to build a OSS Comparison GPT.

GPTs Configurations​

Name​

Open Source Benchmark

Description​

Compare open-source softwares

Instructions​

You are a data analysis expert. 
When a user inputs one or more open-source software/technology terms, you provide a comprehensive comparison of their data,
such as popularity, GitHub stars count, contributors count, user geographical distribution, stargazers company distribution, Hacker News keyword mention counts,
long-term trend data, and more. You can utilize any available data about the object in question, estimate or obtain it through a search engine or API interface.
Currently, you have the following APIs at your disposal:

1. GitHub API for getting repo basic info
2. OSS Insight API for star history and stargazer's distribution
3. Hackernews mentions per_year API
4. OSS Insight star history chart API (show me with a <img> label)
5. OSS Insight API for stargazers company distribution

Here's a step-by-step process:

Identify which API to use based on the data you need.
- you goal is to think more metrics according exist API.
- each step you output your thought
- your action
- at least 8 metrics you should give
Output the data in a markdown table for easy comparison. add your known metrics for more insight. at least 8 metrics.

| Dimension | A | B |
|----------------|-------------|-------------|
| Dimension 1 | Detail A1 | Detail B1 |
| Dimension 2 | Detail A2 | Detail B2 |
| Dimension 3 | Detail A3 | Detail B3 |
| ... | ... | ... |
| Dimension N | Detail AN | Detail BN |

- For star history data, you should generate a line chart using oss insight star history api, at least one chart.
- For stargazers company data, you use markdown table:
| Company | Stargazers Count |
|-----------------|------------------|
| Company A | 100 |
| Company B | 75 |
| Company C | 50 |
| Company D | 30 |
| Other/Unknown | 45 |

Provide insights and analysis based on the collected data. and trending insight.
Be sure to think big! Always give plan and explain what you do.

Let's begin

Plan:
Tools:
Action:
Output:
Deep Insight:

At the end, you should give use some surprise, you can search stackshare.io for more info, and continue guiding the users to compare more pair of oss tools.

Conversation starters​

PyTorch vs TensorFlow
TiDB vs Vitess
React vs Vue
Golang vs Rust-lang

Capabilities​

tip

Make all these three capabilities checked

  • Web Browsing
  • DALL-E Image Generation
  • Code Interpreter

Actions​

Action 1: Config API of next.ossinsight.io for drawing star historical chart​

Schema​
openapi: 3.0.0
info:
title: OSS Insight star history chart API
version: 1.0.0
description: OSS Insight star history chart API.
servers:
- url: https://next.ossinsight.io
paths:
/widgets/official/analyze-repo-stars-history/manifest.json:
get:
operationId: Star History
summary: Retrieve repository star history analysis
description: Fetches the star history and analysis for specified repositories.
parameters:
- name: repo_id
in: query
required: true
description: The ID of the primary repository.
schema:
type: integer
- name: vs_repo_id
in: query
required: true
description: The ID of the repository to compare with.
schema:
type: integer
responses:
'200':
description: Successful response with star history data.
content:
application/json:
schema:
type: object
properties:
imageUrl:
type: string
format: uri
description: URL of the thumbnail image.
title:
type: string
description: Title of the analysis.
description:
type: string
description: Description of the analysis.
'400':
description: Bad request - parameters missing or invalid.
'404':
description: Resource not found.
'500':
description: Internal server error.
Privacy policy​
https://www.pingcap.com/privacy-policy/

Action 2: Config api.github.com for fetching basic info of a repository​

As GitHub API use Personal Access Token and Bearer type of authentication for authentication, you should create one in: https://github.com/settings/tokens, it will be used later.

Schema:​
openapi: 3.0.0
info:
title: GitHub Repository Info API
description: An API for retrieving information about GitHub repositories.
version: 1.0.0
servers:
- url: https://api.github.com
description: GitHub API Server
paths:
/repos/{owner}/{repo}:
get:
summary: Get Repository Info
description: Retrieve information about a GitHub repository.
operationId: getRepositoryInfo
parameters:
- name: owner
in: path
required: true
schema:
type: string
description: The username or organization name of the repository owner.
- name: repo
in: path
required: true
schema:
type: string
description: The name of the repository.
responses:
'200':
description: Successful response with repository information.
content:
application/json:
schema:
type: object
properties:
id:
type: integer
name:
type: string
full_name:
type: string
owner:
type: object
properties:
login:
type: string
id:
type: integer
avatar_url:
type: string
html_url:
type: string
private:
type: boolean
description:
type: string
fork:
type: boolean
url:
type: string
html_url:
type: string
language:
type: string
forks_count:
type: integer
stargazers_count:
type: integer
watchers_count:
type: integer
size:
type: integer
default_branch:
type: string
open_issues_count:
type: integer
topics:
type: array
items:
type: string
has_issues:
type: boolean
has_projects:
type: boolean
has_wiki:
type: boolean
has_pages:
type: boolean
has_downloads:
type: boolean
has_discussions:
type: boolean
archived:
type: boolean
disabled:
type: boolean
visibility:
type: string
pushed_at:
type: string
format: date-time
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
license:
type: object
properties:
key:
type: string
name:
type: string
spdx_id:
type: string
url:
type: string
Privacy policy​
https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement

Action 3: Stargazer's geo & company distribution provided by TiDB Serverless Data Service​

Schema URL to import​
https://us-west-2.prod.aws.tidbcloud.com/api/v1/dataservices/external/appexport/openapi?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBpZCI6ImRhdGFhcHAtUmZGS2NaRnUiLCJjcmVhdGVyIjoiaHVvaGFvQHBpbmdjYXAuY29tIiwic2VuY2UiOiJvcGVuYXBpIn0.xqu-ZCPHozisIHWTD5XM_5t2JWOGVpAejcQeWiTH_Mw

or you can use the following details schema.

Show detailed API schema

components:
schemas:
getGithubRepoStar_historyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
date:
type: string
stargazers:
type: string
required:
- date
- stargazers
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_companyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
company_name:
type: string
proportion:
type: string
stargazers:
type: string
required:
- company_name
- stargazers
- proportion
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_countryResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
country_code:
type: string
percentage:
type: string
stargazers:
type: string
required:
- country_code
- stargazers
- percentage
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_countResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
required:
- count
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_per_yearResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
date:
type: string
required:
- count
- date
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
securitySchemes:
basicAuth:
description: Enter your public key for the username field and private key for
the password field
scheme: basic
type: http
info:
description: API Interface for GPT PK Action, response GitHub repo metrics and hackernews
mentions count data
title: GPT-PK
version: 1.0.0
openapi: 3.0.3
paths:
/github/repo/star_history:
get:
description: GitHub repo star history
operationId: getGithubRepoStar_history
parameters:
- description: The time interval of the data points
in: query
name: per
schema:
default: month
enum:
- day
- week
- month
example: month
type: string
- description: 'The owner of the repo. For example: `pingcap`'
in: query
name: owner
required: true
schema:
default: ""
example: ""
type: string
- description: 'The name of the repo. For example: `tidb`'
in: query
name: repo
required: true
schema:
default: ""
example: ""
type: string
- description: The start date of the range
in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- description: The end date of the range
in: query
name: to
schema:
default: "2099-12-31"
example: "2099-12-31"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Internal server error
summary: /github/repo/star_history
tags:
- Default
/github/repo/stargazers_company:
get:
operationId: getGithubRepoStargazers_company
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Internal server error
summary: /github/repo/stargazers_company
tags:
- Default
/github/repo/stargazers_country:
get:
description: github repo stargazers country
operationId: getGithubRepoStargazers_country
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
- in: query
name: exclude_unknown
schema:
default: "true"
example: "true"
type: boolean
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Internal server error
summary: /github/repo/stargazers_country
tags:
- Default
/hackernews/mentions_count:
get:
description: Total counts for keyword in hackernews
operationId: getHackernewsMentions_count
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Internal server error
summary: /hackernews/mentions_count
tags:
- Default
/hackernews/mentions_per_year:
get:
description: keyword mentions per year in hackernews
operationId: getHackernewsMentions_per_year
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Internal server error
summary: /hackernews/mentions_per_year
tags:
- Default
security:
- basicAuth: []
servers:
- url: https://us-west-2.data.tidbcloud.com/api/v1beta/app/dataapp-RfFKcZFu/endpoint

API Key​

When config this action, you should input the following encoded api key in Authentication -> API Key -> Auth Type(Basic)

QzBTQ0VRNzA6MmJjNjAwYzUtODA0Mi00Yzg4LTkxNTgtMTNiNzdkMDY0OGM5
Note!
  • Make sure using this key for GPT's learning, thanks~
  • We will revoke this key after a period of time
Privacy policy​
https://www.pingcap.com/privacy-policy/
- - + + \ No newline at end of file diff --git a/blog/tags/homebrew/index.html b/blog/tags/homebrew/index.html index a12e213d8d7..562d4b8f5e8 100644 --- a/blog/tags/homebrew/index.html +++ b/blog/tags/homebrew/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "Homebrew"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/image-magick/index.html b/blog/tags/image-magick/index.html index 80924cf023f..c344cb673a1 100644 --- a/blog/tags/image-magick/index.html +++ b/blog/tags/image-magick/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "ImageMagick"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/index.html b/blog/tags/index.html index 367fecf0894..5a7a17dd165 100644 --- a/blog/tags/index.html +++ b/blog/tags/index.html @@ -21,13 +21,13 @@ - - + +
- - + + \ No newline at end of file diff --git a/blog/tags/insight/index.html b/blog/tags/insight/index.html index ef510cfe4a3..83f88d79f91 100644 --- a/blog/tags/insight/index.html +++ b/blog/tags/insight/index.html @@ -21,13 +21,13 @@ - - + +

7 posts tagged with "insight"

View All Tags

Β· 10 min read
Cheese Wong
Jagger
hooopo
Vita Lu
Mia Zhou
Caitin Chen

We analyzed more than 5,000,000,000 rows of GitHub event data and got the results here. In this report, you'll get interesting findings about open source software on GitHub in 2022, including:

Top languages in the open source world over the past four years​

This chart ranks programming languages yearly from 2019 to 2022 based on the ratio of new repositories using these languages to all new repositories.


top-programming-languages
Top programming languages

Insights:

  • Python surpassed Java and moved to #3 in 2021.
  • TypeScript rose from #10 to #6, and SCSS rose from #39 to #19. The rise of SCSS shows that open source projects that value front-end expressiveness are gradually gaining popularity.
  • The two languages Ruby and R dropped a lot in ranking over the years.

Rankings of back-end programming languages​

The programming languages used in a pull request reflect which languages developers used. To find out the most popular back-end programming languages, we queried the distribution of programming languages by new pull requests from 2019 to 2022 and took the top 10 for each year.


top-back-end-programming-languages
Top back-end programming languages

The chart data indicates:

  • Python and Java rank #1 and #2 respectively. In 2021, Go overtook Ruby to rank #3 in 2021.
  • Rust has been trending upward for several years, ranking #9 in 2022.

Geographic distribution of developer behavior​

We queried the number of various events that occurred throughout the world from January 1 to September 30, 2022 and identified the top 10 countries by the number of events triggered by developers in these countries. The chart displays the proportion of each event type by country or region.


geographic-distribution-of-developer-behavior
Geographic distribution of developer behavior

The chart shows that:

  • The events triggered in the top 10 countries account for about 23.27% of all GitHub events. However, the number of developers from these countries is only 10%.
  • US developers are most likely to review code, with a PullRequestReviewEvent share of 6.15%.
  • Korean developers prefer pushing directly to repositories (PushEvent).
  • Japanese developers are most likely to submit code via pull requests, with a PullRequestEvent share of 10%.
  • German developers like to open issues and comments, with IssueEvent and CommentEvent accounting for 4.18% and 12.66% respectively.
  • Chinese developers like to star repositories, with 17.23% for WatchEvent and 2.7% for ForkEvent.

Notes:

  • In 2022, 17,062,081 developers had behavioral events, and 2,923,523 of them have the Location field, so the sampling rate is 17.13%
  • GitHub identifies 15 types of events. We only show commonly used types. Comment Event includes CommitCommentEvent, IssueCommentEvent, and PullRequestReviewCommentEvent. Others includes MemberEvent, CreateEvent, ReleaseEvent, GollumEvent, and PublicEvent.

Developer behavior distribution on weekdays and weekends​

We queried the distribution of each event type over the seven days of the week.


developer-behavior-distribution-on-weekdays-and-weekends
Developer behavior distribution on weekdays and weekends

Insights:

  • Developers are most active on weekdays, with 77.73% of events occurring on weekdays.

The distribution of specific events​

developer-behavior-distribution-from-monday-to-sunday
Developer behavior distribution from Monday to Sunday

Insights:

  • Pull Request Event, Pull Request Review Event, and Issues Event all have the highest percentage on Tuesdays, while the lowest percentage is on the weekends.
  • The amount of Push Event, Watch Event, and Fork Event activities are similar on weekdays and weekends, while the Pull Request Review Event is the most different. Watch Event and Fork Event are more personal behaviors, Pull Request Review Events are more work behaviors, and Push Events are used more in personal projects.

Each year, technology introduces new buzz words. Can we gain insight into technical trends through the open source repositories behind the hot words? We investigated five technical areas: Low Code, Web3, GitHub Actions, Database, and AI.

We queried the number of open source repositories associated with each technical area, as well as the percentage of active repositories in 2022.


activity-levels-of-popular-topics
Activity levels of popular topics

This figure shows that open source repositories in the Low Code topic are the most active, with 76.3% being active in 2022, followed by Web3 with 63.85%.

We queried the following items for each technical area from 2015 to 2022:

  • The annual increment of repositories
  • The annual increment of collaborative events
  • The number of developers participating in collaborative events
  • The annual increment of stars

Then, we calculated the growth rate for each year which can reflect new entrants, developer engagement in this technical field, and the industry's interest in this area. For 2022, we compare its first nine months with the first nine months of 2021.


low-code-repositories
Low code repositories

We can see that 2020 is the peak period of project development, with a 313.43% increase in new repositories and a 157.06% increase in developer collaborative events. The industry's interest increased most significantly in 2021, reaching 184.82%. In 2022, the year-on-year growth data shows that the number of new repositories decreased (-26.21%), but developer engagement and industry interest are still rising.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


web3-repositories
Web3 repositories

Whether it is the creation of new repositories, developers, or the interest of the industry, the Web3 ecosystem has grown rapidly in recent years, and the growth rate of new repositories peaked at 322.65% in 2021.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


github-actions-repositories
GitHub Actions repositories

The annual increase of GitHub Actions repositories has been declining, but developer engagement and the industry's interest are still increasing slightly.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


database-repositories
Database repositories

As an infrastructure project, the Database project's threshold is high. Compared with projects in other fields, a database project has a stable growth rate.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


ai-repositories
AI repositories

After two years of high growth in 2016 and 2017, open source projects in AI have been growing gradually slowly.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories

The number of stars is the most visible indication of the popularity of open source projects. We looked at the 50 projects that received the most stars from January 1 to September 30, 2022. We found that:


most-popular-repositories-2022
The most popular repositories in 2022

* Time range: 2022.01.01-2022.09.30, excluding bot events

The most active repositories over the past four years​

Here we looked up the top 20 active repositories per year from 2019 to 2022 and counted the total number of listings per repository. The activity of the repository is ranked according to the number of developers participating in collaborative events.

Repository NameCount
microsoft/vscode4
flutter/flutter4
MicrosoftDocs/azure-docs4
firstcontributions/first-contributions4
Facebook/react-native4
pytorch/pytorch4
microsoft/TypeScript4
tensorflow/tensorflow3
kubernetes/kubernetes3
DefinitelyTyped/DefinitelyTyped3
golang/go3
google/it-cert-automation-practice3
home-assistant/core3
microsoft/PowerToys3
microsoft/WSL3

Insights:

  • Microsoft has the most repositories on the list, with five.

  • tensorflow/tensorflow and kubernetes/kubernetes both dropped out of the top 20 after three consecutive years on the list (2019 to 2021).

  • New to the 2022 list are archway-network/testnets, element-fi/elf-council-frontend, solana-labs/token-list, education/GitHubGraduation-2022, taozhiyu/TyProAction, NixOS/nixpkgs, rust-lang/rust.

  • Time range: 2022.01.01-2022.09.30, excluding bot events

Who gave the most stars in 2022​

We queried the developers who gave the most stars in 2022, took the top 20, and filtered out accounts of suspected bots. If a developer's number of star events divided by the number of starred repositories is equal to or greater than 2, we suspect this user to be a bot.


developers-most-stars
Developers who gave the most stars

We found that until September 30, 2022, the developer who starred the most repositories had starred a total of 37,228 repositories, an average of 136 repositories per day.

* Time range: 2022.01.01-2022.09.30, excluding bot events

The most active developers since 2011​

We queried the top 20 most active developers per year since 2011. This time we didn't filter out bot events.


most-active-developers
The most active developers

We found that the percentage of bots is becoming larger and larger. Bots started to overtake humans in 2013 and have reached over 95% in 2022.

Appendix​

Term description​

  • GitHub events: GitHub events are triggered by user actions, like starring a repository or pushing code.
  • Time range: In this report, the data collection range of 2022 is from January 1, 2022 to September 30, 2022. When comparing data of 2022 with another year, we use year-on-year analysis.
  • Bot events: Bot-triggered events account for a growing percentage of GitHub events. However, these events are not the focus of this report. We filtered out most of the bot-initiated events by matching regular expressions.

How we classify technical fields by topics​

We do exact matching and fuzzy matching based on the repository topic. Exact matching means that the repository topics have a topic that exactly matches the word, and fuzzy matching means that the repository topics have a topic that contains the word.

TopicExact matchingFuzzy matching
GitHub Actionsactionsgithub-action, gh-action
Low Codelow-code, lowcode, nocode, no-code
Web3web3
Databasedbdatabase, databases
nosql, newsql, sql
mongodb,neo4j
AIai, aiops, aiotartificial-intelligence, machine-intelligence
computer-vision, image-processing, opencv, computervision, imageprocessing
voice-recognition, speech-recognition, voicerecognition, speechrecognition, speech-processing
machinelearning, machine-learning
deeplearning, deep-learning
transferlearning, transfer-learning
mlops
text-to-speech, tts, speech-synthesis, voice-synthesis
robot, robotics
sentiment-analysis
natural-language-processing, nlp
language-model, text-classification, question-answering, knowledge-graph, knowledge-base
gan, gans, generative-adversarial-network, generative-adversarial-networks
neural-network, neuralnetwork, neuralnetworks, neural-network, dnn
tensorflow
PyTorch
huggingface
transformers
seq2seq, sequence-to-sequence
data-analysis, data-science
object-detection, objectdetection
data-augmentation
classification
action-recognition

Β· 5 min read
Mia Zhou
Wink Yao
Caitin Chen

The OSS Insight website displays the data changes of GitHub events in real time. GitHub events are activities triggered by user actions on GitHub, for example, commenting and forking a repository. In nearly seven weeks, GitHub events increased by about 150 million, from 4.7 billion to 4.85 billion. GitHub events are booming!

This post dives deeply into GitHub event trending, why GitHub events are surging, and whether GitHub's architecture can handle the increasing load.

Historical data analysis​

The OSS Insight database includes all the GitHub events since 2011. When we plot the number of events by year, we can see that since 2018 they have been increasing rapidly.


GitHub event trending

GitHub event trending

The figure below shows how long it takes to grow each billion events in GitHub.


The time to reach a billion GitHub events

The time to reach a billion GitHub events

It's taking less and less for GitHub to generate 1 billion events. It took more than 6 years for the first billion events and only 13 months for the last billion!

The secret behind the exponential growth of GitHub events​

GitHub Actions was released in October 2018. Since August 2019, it has supported continuous integration and continuous delivery (CI/CD), and it has been free for open source projects. Therefore, projects hosted on GitHub can automate their own development workflows, and a large number of automation-related bot applications have appeared on GitHub Marketplace. Could GitHub events' data growth be related to these?

To find the answer, we divided the events into data from humans and data from bots and plotted them with the following histogram. The blue columns represent the human data, and the yellow columns represent the bot data.


Bot events vs. human events

Bot events vs. human events

As you can see, the proportion of GitHub bot events has increased each year. In 2015, they were only 1.23% of all events. In early July of this year, they reached 13.2%. To show the data changes of bot events more clearly, we made the following line chart.


Bot event trending

Bot event trending

This figure shows that since 2019, bot events have been grown faster than before. As Mini256, a TiDB community contributor said in Love, Code, and Robot β€” Explore robots in the world of code:

For now, rough statistics find that there are more than 95,620 bots on GitHub. The number doesn't seem like so much, but wait...

These 95 thousand bot accounts generated 603 million events. These events account for 12.82% of all public events on GitHub, and these GitHub robots have served over 18 million open source repositories.

Bots are playing an increasingly important role on GitHub. Many projects are handing over automated work to bots. We expect that GitHub events will grow faster in the future.

When will GitHub reach 10 billion events?​

How many GitHub events will there be by the end of 2022? We fit predictions to GitHub historical data.


Human event fit (left) vs. bot event fit (right)

Human event fit (left) vs. bot event fit (right)

It's estimated that by the end of 2022, GitHub events will reach 5.36 billion.


github-event-prediction
GitHub event prediction

According to this prediction, GitHub events will exceed 10 billion in February 2025.


gitub-events-exceed-10-billion
GitHub events will exceed 10 billion in 2025

Can MySQL sharding support such a huge amount of data?​

GitHub uses MySQL as the main storage for all non-git warehouse data. The rapid growth of data volume poses a great challenge to GitHub's high availability. In March 2022, GitHub had 3 service disruptions, each lasting 2-5 hours. The official investigation report shows the MySQL database caused the outages. During peak load periods, the GitHub mysql1 database (the main database cluster in GitHub) load increased. Therefore, database access reached the maximum number of connections. This affected the performance of many GitHub services and features.

In fact, over the past few years GitHub has optimized its databases. For example, it added clusters to support platform growth and partitioned the main database. But these improvements did not fundamentally solve the problem. In the near future, GitHub events will exceed 5 billion, or even 10 billion. Can MySQL sharding support such data surge?

Data sources​

All the analysis data in this article comes from OSS Insight, a tool based on TiDB to analyze and gain insights into GitHub events data.

You can use it to easily get insights about developers and repositories based on billions of GitHub events. You can also get the latest and historical rankings and trends in technical fields.


The OSS Insight website

The OSS Insight website

Β· 3 min read
Jagger

In this chapter, we will share with you some of the top JavaScript Framework repos(JSF repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Note:

  1. You can move your cursor onto any of the repository bars/lines on the chart and get the exact number.
  2. The SQL commands above each chart are what we use on our TiDB Cloud to get the analytical results. Try those SQL commands by yourselves on TiDB Cloud with this 10-minute tutorial.

Star history of top JavaScript Framework repos since 2011​

The number of stars is often thought of as a measure of whether a GitHub repository is popular or not. We sort all JavaScript framework repositories from GitHub by the total number of historical stars since 2011. For visualizing the results more intuitively, we show the top 10 open source databases by using an interactive line chart.

Β· 2 min read
Jagger

In this chapter, we will share with you some of the top low-code development tools repos (LCDT repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Β· 6 min read
Jagger

On this page, we will share with you many deep insights into open source databases, such as the database popularity, database contributors, coding vitality, community feedback and so on.

We’ll also share the SQL commands that generate all these analytical results above each chart, so you can use them on your own on TiDB Cloud following this 10-minute tutorial.

Β· 2 min read
Jagger

In this chapter, we will share with you some of the top programming language repos (PL repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

Β· 3 min read
Jagger

In this chapter, we will share with you some of the top Web Framework repos (WF repos) on GitHub in 2021 measured by different metrics including the number of stars, PRs, contributors, countries, regions and so on.

- - + + \ No newline at end of file diff --git a/blog/tags/maintainer/index.html b/blog/tags/maintainer/index.html index e229495a312..9b98f012f64 100644 --- a/blog/tags/maintainer/index.html +++ b/blog/tags/maintainer/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "Maintainer"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/my-cli/index.html b/blog/tags/my-cli/index.html index 17d4eeab3e7..d3ec5b85638 100644 --- a/blog/tags/my-cli/index.html +++ b/blog/tags/my-cli/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "MyCLI"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/open-source/index.html b/blog/tags/open-source/index.html index 413375f20c5..de6a2715bee 100644 --- a/blog/tags/open-source/index.html +++ b/blog/tags/open-source/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "Open Source"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/open-ssl/index.html b/blog/tags/open-ssl/index.html index 68ddab87a83..ddb6b53d569 100644 --- a/blog/tags/open-ssl/index.html +++ b/blog/tags/open-ssl/index.html @@ -21,13 +21,13 @@ - - + +

One post tagged with "OpenSSL"

View All Tags

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/tags/openai/index.html b/blog/tags/openai/index.html index 488323c83f3..4057f5ed352 100644 --- a/blog/tags/openai/index.html +++ b/blog/tags/openai/index.html @@ -21,14 +21,14 @@ - - + +

3 posts tagged with "openai"

View All Tags

Β· 18 min read
sykp241095
ChatGPT

In this blog, we will share every configurations to build a OSS Comparison GPT.

GPTs Configurations​

Name​

Open Source Benchmark

Description​

Compare open-source softwares

Instructions​

You are a data analysis expert. 
When a user inputs one or more open-source software/technology terms, you provide a comprehensive comparison of their data,
such as popularity, GitHub stars count, contributors count, user geographical distribution, stargazers company distribution, Hacker News keyword mention counts,
long-term trend data, and more. You can utilize any available data about the object in question, estimate or obtain it through a search engine or API interface.
Currently, you have the following APIs at your disposal:

1. GitHub API for getting repo basic info
2. OSS Insight API for star history and stargazer's distribution
3. Hackernews mentions per_year API
4. OSS Insight star history chart API (show me with a <img> label)
5. OSS Insight API for stargazers company distribution

Here's a step-by-step process:

Identify which API to use based on the data you need.
- you goal is to think more metrics according exist API.
- each step you output your thought
- your action
- at least 8 metrics you should give
Output the data in a markdown table for easy comparison. add your known metrics for more insight. at least 8 metrics.

| Dimension | A | B |
|----------------|-------------|-------------|
| Dimension 1 | Detail A1 | Detail B1 |
| Dimension 2 | Detail A2 | Detail B2 |
| Dimension 3 | Detail A3 | Detail B3 |
| ... | ... | ... |
| Dimension N | Detail AN | Detail BN |

- For star history data, you should generate a line chart using oss insight star history api, at least one chart.
- For stargazers company data, you use markdown table:
| Company | Stargazers Count |
|-----------------|------------------|
| Company A | 100 |
| Company B | 75 |
| Company C | 50 |
| Company D | 30 |
| Other/Unknown | 45 |

Provide insights and analysis based on the collected data. and trending insight.
Be sure to think big! Always give plan and explain what you do.

Let's begin

Plan:
Tools:
Action:
Output:
Deep Insight:

At the end, you should give use some surprise, you can search stackshare.io for more info, and continue guiding the users to compare more pair of oss tools.

Conversation starters​

PyTorch vs TensorFlow
TiDB vs Vitess
React vs Vue
Golang vs Rust-lang

Capabilities​

tip

Make all these three capabilities checked

  • Web Browsing
  • DALL-E Image Generation
  • Code Interpreter

Actions​

Action 1: Config API of next.ossinsight.io for drawing star historical chart​

Schema​
openapi: 3.0.0
info:
title: OSS Insight star history chart API
version: 1.0.0
description: OSS Insight star history chart API.
servers:
- url: https://next.ossinsight.io
paths:
/widgets/official/analyze-repo-stars-history/manifest.json:
get:
operationId: Star History
summary: Retrieve repository star history analysis
description: Fetches the star history and analysis for specified repositories.
parameters:
- name: repo_id
in: query
required: true
description: The ID of the primary repository.
schema:
type: integer
- name: vs_repo_id
in: query
required: true
description: The ID of the repository to compare with.
schema:
type: integer
responses:
'200':
description: Successful response with star history data.
content:
application/json:
schema:
type: object
properties:
imageUrl:
type: string
format: uri
description: URL of the thumbnail image.
title:
type: string
description: Title of the analysis.
description:
type: string
description: Description of the analysis.
'400':
description: Bad request - parameters missing or invalid.
'404':
description: Resource not found.
'500':
description: Internal server error.
Privacy policy​
https://www.pingcap.com/privacy-policy/

Action 2: Config api.github.com for fetching basic info of a repository​

As GitHub API use Personal Access Token and Bearer type of authentication for authentication, you should create one in: https://github.com/settings/tokens, it will be used later.

Schema:​
openapi: 3.0.0
info:
title: GitHub Repository Info API
description: An API for retrieving information about GitHub repositories.
version: 1.0.0
servers:
- url: https://api.github.com
description: GitHub API Server
paths:
/repos/{owner}/{repo}:
get:
summary: Get Repository Info
description: Retrieve information about a GitHub repository.
operationId: getRepositoryInfo
parameters:
- name: owner
in: path
required: true
schema:
type: string
description: The username or organization name of the repository owner.
- name: repo
in: path
required: true
schema:
type: string
description: The name of the repository.
responses:
'200':
description: Successful response with repository information.
content:
application/json:
schema:
type: object
properties:
id:
type: integer
name:
type: string
full_name:
type: string
owner:
type: object
properties:
login:
type: string
id:
type: integer
avatar_url:
type: string
html_url:
type: string
private:
type: boolean
description:
type: string
fork:
type: boolean
url:
type: string
html_url:
type: string
language:
type: string
forks_count:
type: integer
stargazers_count:
type: integer
watchers_count:
type: integer
size:
type: integer
default_branch:
type: string
open_issues_count:
type: integer
topics:
type: array
items:
type: string
has_issues:
type: boolean
has_projects:
type: boolean
has_wiki:
type: boolean
has_pages:
type: boolean
has_downloads:
type: boolean
has_discussions:
type: boolean
archived:
type: boolean
disabled:
type: boolean
visibility:
type: string
pushed_at:
type: string
format: date-time
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
license:
type: object
properties:
key:
type: string
name:
type: string
spdx_id:
type: string
url:
type: string
Privacy policy​
https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement

Action 3: Stargazer's geo & company distribution provided by TiDB Serverless Data Service​

Schema URL to import​
https://us-west-2.prod.aws.tidbcloud.com/api/v1/dataservices/external/appexport/openapi?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBpZCI6ImRhdGFhcHAtUmZGS2NaRnUiLCJjcmVhdGVyIjoiaHVvaGFvQHBpbmdjYXAuY29tIiwic2VuY2UiOiJvcGVuYXBpIn0.xqu-ZCPHozisIHWTD5XM_5t2JWOGVpAejcQeWiTH_Mw

or you can use the following details schema.

Show detailed API schema

components:
schemas:
getGithubRepoStar_historyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
date:
type: string
stargazers:
type: string
required:
- date
- stargazers
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_companyResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
company_name:
type: string
proportion:
type: string
stargazers:
type: string
required:
- company_name
- stargazers
- proportion
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getGithubRepoStargazers_countryResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
country_code:
type: string
percentage:
type: string
stargazers:
type: string
required:
- country_code
- stargazers
- percentage
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_countResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
required:
- count
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
getHackernewsMentions_per_yearResponse:
properties:
data:
properties:
columns:
items:
properties:
col:
type: string
data_type:
type: string
nullable:
type: boolean
type: object
type: array
result:
properties:
code:
format: int64
type: integer
end_ms:
format: int64
type: integer
latency:
type: string
limit:
maximum: 1.8446744073709552e+19
minimum: 0
type: integer
message:
type: string
row_affect:
format: int64
type: integer
row_count:
format: int64
type: integer
start_ms:
format: int64
type: integer
warn_count:
type: integer
warn_messages:
items:
type: string
type: array
type: object
rows:
items:
properties:
count:
type: string
date:
type: string
required:
- count
- date
type: object
type: array
required:
- columns
- rows
- result
type: object
type:
type: string
required:
- type
- data
type: object
securitySchemes:
basicAuth:
description: Enter your public key for the username field and private key for
the password field
scheme: basic
type: http
info:
description: API Interface for GPT PK Action, response GitHub repo metrics and hackernews
mentions count data
title: GPT-PK
version: 1.0.0
openapi: 3.0.3
paths:
/github/repo/star_history:
get:
description: GitHub repo star history
operationId: getGithubRepoStar_history
parameters:
- description: The time interval of the data points
in: query
name: per
schema:
default: month
enum:
- day
- week
- month
example: month
type: string
- description: 'The owner of the repo. For example: `pingcap`'
in: query
name: owner
required: true
schema:
default: ""
example: ""
type: string
- description: 'The name of the repo. For example: `tidb`'
in: query
name: repo
required: true
schema:
default: ""
example: ""
type: string
- description: The start date of the range
in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- description: The end date of the range
in: query
name: to
schema:
default: "2099-12-31"
example: "2099-12-31"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStar_historyResponse'
description: Internal server error
summary: /github/repo/star_history
tags:
- Default
/github/repo/stargazers_company:
get:
operationId: getGithubRepoStargazers_company
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_companyResponse'
description: Internal server error
summary: /github/repo/stargazers_company
tags:
- Default
/github/repo/stargazers_country:
get:
description: github repo stargazers country
operationId: getGithubRepoStargazers_country
parameters:
- in: query
name: owner
schema:
default: ""
example: ""
type: string
- in: query
name: repo
schema:
default: ""
example: ""
type: string
- in: query
name: from
schema:
default: "2000-01-01"
example: "2000-01-01"
type: string
- in: query
name: to
schema:
default: "2099-01-01"
example: "2099-01-01"
type: string
- in: query
name: exclude_unknown
schema:
default: "true"
example: "true"
type: boolean
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getGithubRepoStargazers_countryResponse'
description: Internal server error
summary: /github/repo/stargazers_country
tags:
- Default
/hackernews/mentions_count:
get:
description: Total counts for keyword in hackernews
operationId: getHackernewsMentions_count
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_countResponse'
description: Internal server error
summary: /hackernews/mentions_count
tags:
- Default
/hackernews/mentions_per_year:
get:
description: keyword mentions per year in hackernews
operationId: getHackernewsMentions_per_year
parameters:
- in: query
name: keyword
schema:
default: ""
example: ""
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: OK
"400":
content:
application/json:
example:
data:
columns: []
result:
code: 400
end_ms: 0
latency: ""
limit: 0
message: param check failed! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Bad request
"401":
content:
application/json:
example:
data:
columns: []
result:
code: 401
end_ms: 0
latency: ""
limit: 0
message: auth failed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Unauthorized request
"404":
content:
application/json:
example:
data:
columns: []
result:
code: 404
end_ms: 0
latency: ""
limit: 0
message: endpoint not found
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested resource was not found
"405":
content:
application/json:
example:
data:
columns: []
result:
code: 405
end_ms: 0
latency: ""
limit: 0
message: method not allowed
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The requested method is not supported for the specified resource
"408":
content:
application/json:
example:
data:
columns: []
result:
code: 408
end_ms: 0
latency: ""
limit: 0
message: request timeout
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The server timed out waiting for the request
"429":
content:
application/json:
example:
data:
columns: []
result:
code: 429
end_ms: 0
latency: ""
limit: 0
message: 'The request exceeded the limit of 100 times per apikey
per minute. For more quota, please contact us: https://support.pingcap.com/hc/en-us/requests/new?ticket_form_id=7800003722519'
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: The user has sent too many requests in a given amount of time
"500":
content:
application/json:
example:
data:
columns: []
result:
code: 500
end_ms: 0
latency: ""
limit: 0
message: internal error! {detailed error}
row_affect: 0
row_count: 0
start_ms: 0
rows: []
type: sql_endpoint
schema:
$ref: '#/components/schemas/getHackernewsMentions_per_yearResponse'
description: Internal server error
summary: /hackernews/mentions_per_year
tags:
- Default
security:
- basicAuth: []
servers:
- url: https://us-west-2.data.tidbcloud.com/api/v1beta/app/dataapp-RfFKcZFu/endpoint

API Key​

When config this action, you should input the following encoded api key in Authentication -> API Key -> Auth Type(Basic)

QzBTQ0VRNzA6MmJjNjAwYzUtODA0Mi00Yzg4LTkxNTgtMTNiNzdkMDY0OGM5
Note!
  • Make sure using this key for GPT's learning, thanks~
  • We will revoke this key after a period of time
Privacy policy​
https://www.pingcap.com/privacy-policy/

Β· 2 min read
PingCAP
ChatGPT

SQL is a powerful language for managing and analyzing data, but it can be difficult to learn for beginners. That's where ChatGPT comes in.

ChatGPT is a large language model trained by OpenAI that can help you learn SQL easily by visualizing the key information in a SQL query. In this blog post, we'll show you how to use ChatGPT to visualize SQL queries using pretty ASCII art diagrams. Let's start with an example. Suppose we want to find the top 10 most popular AI projects on GitHub in the last month. Here's the SQL query that does that:

SELECT
repo_name,
COUNT(*) AS stars
FROM
github_events
WHERE
type = 'WatchEvent'
AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
AND repo_name LIKE '%AI%'
GROUP BY
repo_name
ORDER BY
stars DESC
LIMIT
10

Now, let's use ChatGPT to visualize this SQL query using pretty ASCII art diagrams. Here's the diagram:

          +-------------------+            
| What to Retrieve? | top 10
+-------------------+
| SELECT
| repo_name,
| COUNT(*) AS stars
v
+-------------------+
| From Where? | GitHub
+-------------------+
| FROM
| github_events
v
+-------------------+
| Filter By: | last month, AI projects, most popular
+-------------------+
| WHERE
| type = 'WatchEvent'
| AND created_at > DATE_SUB(NOW(), INTERVAL 1 MONTH)
| AND repo_name LIKE '%AI%'
v
+-------------------+
| Group By |
+-------------------+
| GROUP BY
| repo_name
v
+-------------------+
| Order By | most popular
+-------------------+
| ORDER BY
| stars DESC
v
+-------------------+
| Limit To 10 | top 10
+-------------------+
| LIMIT
| 10
v

This diagram visually shows the flow of the SQL query, from selecting what to retrieve, to filtering, grouping, ordering, and limiting the results. The arrows make it easy to see the relationship between the key information in the question and the corresponding SQL statements.

By using ChatGPT to visualize SQL queries with pretty ASCII art diagrams, you can learn SQL easily and quickly. The diagrams help you understand the structure of the SQL query, and make it easy to see how the various statements are related. With practice, you'll be able to write your own SQL queries in no time.

In conclusion, if you want to learn SQL easily, try using ChatGPT to visualize SQL queries with pretty ASCII art diagrams. It's a fun and effective way to learn SQL and improve your data management skills.

Β· One min read
PingCAP
ChatGPT

This blog is written with help of ChatGPT.


To get insight of your own dataset without writing sql is easy, follow these steps:

  1. Sign up for a TiDB Cloud account at https://tidbcloud.com/ using your email, Google account, or GitHub account.

  2. Create a free Serverless Tier cluster in the TiDB Cloud web console.

  3. In the TiDB Cloud web console, click the "Import" button and follow the prompts to load a CSV file into your cluster from a local file or from Amazon S3.

    Import Data

  4. Use the web console's SQL editor(Chat2Query) to get insights from your data. But no worry, you don't need to write SQL, you could ask questions about your data in natural language.

    The magic is typing -- your question and press Enter, here is an example:

- - + + \ No newline at end of file diff --git a/blog/tags/tidb/index.html b/blog/tags/tidb/index.html index 574beb07bd2..45204655a7f 100644 --- a/blog/tags/tidb/index.html +++ b/blog/tags/tidb/index.html @@ -21,14 +21,14 @@ - - + +

2 posts tagged with "tidb"

View All Tags

Β· 10 min read
Wink Yao
Fendy Feng

In early January 2022, Max, our CEO, a big fan of open-source, asked if my team could build a small tool to help us understand all the open-source projects on GitHub; and, that if everything worked well, we should open the API to help open source developers to build better insights. In fact, GitHub continuously publishes the public events in its open-source world through the open API. (Thank you and well done! Github). We can certainly learn a lot from the data!

I was excited about this project until Max said: β€œYou’ve only got one week.” Well, the boss is the boss! Although time was tight and we were faced with multiple head-aching problems, I decided to take up this challenge.

Headache 1: we need both historical and real-time data.​

After some quick research, we found GHArchive, an open-source project that collects and archives all GitHub data from 2011 and updates it hourly. By the way, a lot of open-source analytical tools such as CNCF's Devstats rely on GH Archive, too.

Thanks to GH Archive, we found the data source.

But there's another problem: hourly data is good, but not good enough. We wanted our data to be updated in real timeβ€”or at least near real time. We decided to directly use the GitHub event API, which collects all events that have occurred within the past hour.

By combining the data from the GH Archive and the GitHub event API, we can gain streaming, real-time event updates.


GitHub event updates

GitHub event updates

Headache 2: the data is huge!​

After we decompressed all the data from GH Archive, we found there were more than 4.6 billion rows of GitHub events. That’s a lot of data! We also noticed that about 300,000 rows were generated and updated each hour.


The data volume of GitHub events occurred after 2011

The data volume of GitHub events occurred after 2011

The database solution would be tricky here. Our goal is to build an application that provides real-time data insights based on a continuously growing dataset. So, scalability is a must. NoSQL databases can provide good scalability, but what follows is how to handle complex analytical queries. Unfortunately, NoSQL databases are not good at that.


Scalability vs SQL

Another option is to use an OLAP database such as ClickHouse. ClickHouse can handle the analytical workload very well, but it is not designed for serving online traffic. If we chose it, we would need another database for the online traffic.


OLAP vs Online Serving

What about sharding the database and then building an extract, transform, load (ETL) pipeline to synchronize the new events to a data warehouse? This sounds workable.


How a RDBMS handles the GitHub data

How a RDBMS handles the GitHub data

According to our product manager's (PM’s) plan, we needed to do some repo-specific or user-specific analysis. Although the total data volume was huge, the number of events was not too large for a single project or user. This meant using the secondary indexes in RDBMS would be a good idea. But, if we decided to use the above architecture, we had to be careful in selecting the database sharding key. For example, if we use user_id as the sharding key, then queries based on repo_id will be very tricky.

Another requirement from the PM was that our insight tool should provide OpenAPI, which meant we would have unpredictable concurrent traffic from the outside world.

Since we're not experts on Kafka and data warehouses, mastering and building such an infrastructure in just one week was a very difficult task for us.

The choice is obvious now, and don't forget PingCAP is a database company! TiDB seems a perfect fit for this, and it's a good chance to eat our own dog food. So, why not using TiDB! :)

If we use TiDB, can we get:

  • SQL support, including complex & flexible queries? β˜‘οΈ
  • Scalability? β˜‘οΈ
  • Secondary index support for fast lookup? β˜‘οΈ
  • Capability for online serving? β˜‘οΈ

Wow! It seems we got a winner!


By using the secondary index, TiDB scanned 29,639 rows (instead of 4.6 billion rows) GitHub events in 4.9 ms

By using the secondary index, TiDB scanned 29,639 rows (instead of 4.6 billion rows) GitHub events in 4.9 ms

To choose a database to support an application like OSS Insight, we think TiDB is a great choice. Plus, its simplified technology stack means a faster go-to-market and faster delivery of my boss' assignment.

After we used TiDB, we got a simplified architecture as shown below.


Simplified architecture after we use TiDB

Simplified architecture after we use TiDB

Headache 3: We have a "pushy" PM!​

Just as the subtitle indicates, we have a very β€œpushy” PM, which is not always a bad thing. :) His demands kept extending, from the single project analysis at the very beginning to the comparison and ranking of multiple repositories, and to other multidimensional analysis such as the geographical distribution of stargazers and contributors. What’s more pressing was that the deadlines stayed unchanged!!!

We had to keep a balance between the growing demands and the tight deadlines.

To save time, we built our website using Docusaurus, an open source static site generator in React with scalability, rather than building a site from scratch. We also used Apache Echarts, a powerful charting library, to turn analytical results into good-looking and easy-to-understand charts.

We chose TiDB as the database to support our website, and it perfectly supports SQL. This way, our back-end engineers could write SQL commands to handle complex and flexible analytical queries with ease and efficiency. Then, our front-end engineers would just need to display those SQL execution results in the form of good-looking charts.

Finally, we made it. We prototyped our tool in just one week, and named it OSS Insight, short for open source software insights. We continued to fine-tune it, and it was officially released on May 3.

How we deal with analytical queries with SQL​

Let's use one example to show you how we deal with complex analytical queries.

Analyze a GitHub collection: JavaScript frameworks​

OSS Insight can analyze popular GitHub collections by many metrics including the number of stars, issues, and contributors. Let’s identify which JavaScript framework has the most issue creators. This is an analytical query that includes aggregation and ranking. To get the result, we only need to execute one SQL statement:

SELECT
ci.repo_name AS repo_name,
COUNT(distinct actor_login) AS num
FROM
github_events ge
JOIN collection_items ci ON ge.repo_id = ci.repo_id
JOIN collections c ON ci.collection_id = c.id
WHERE
type = 'IssuesEvent'
AND action = 'opened'
AND c.id = 10005
-- Exclude Bots
and actor_login not like '%bot%'
and actor_login not in (select login from blacklist_users)
GROUP BY 1
ORDER BY 2 DESC
;

In the statement above, the collections and collection_items tables store the data of all GitHub repository collections in various areas. Each table has 30 rows. To get the order of issue creators, we need to associate the repository ID in the collection_items table with the real, 4.6-billion-row github_events table as shown below.


mysql> select * from collection_items where collection_id = 10005;
+-----+---------------+-----------------------+-----------+
| id | collection_id | repo_name | repo_id |
+-----+---------------+-----------------------+-----------+
| 127 | 10005 | marko-js/marko | 15720445 |
| 129 | 10005 | angular/angular | 24195339 |
| 131 | 10005 | emberjs/ember.js | 1801829 |
| 135 | 10005 | vuejs/vue | 11730342 |
| 136 | 10005 | vuejs/core | 137078487 |
| 138 | 10005 | facebook/react | 10270250 |
| 142 | 10005 | jashkenas/backbone | 952189 |
| 143 | 10005 | dojo/dojo | 10160528 |
...
30 rows in set (0.05 sec)

Next, let's look at the execution plan. TiDB is compatible with MySQL syntax, so its execution plan looks very similar to that of MySQL.

In the figure below, notice the parts in red boxes. The data in the table collection_items is read through distributed[row], which means this data is processed by TiDB’s row storage engine, TiKV. The data in the table github_events is read through distributed[column], which means this data is processed by TiDB’s columnar storage engine, TiFlash. TiDB uses both row and columnar storage engines to execute the same SQL statement. This is so convenient for OSS Insight because it doesn’t have to split the query into two statements.


TiDB execution plan

TiDB execution plan

TiDB returns the following result:

+-----------------------+-------+
| repo_name | num |
+-----------------------+-------+
| angular/angular | 11597 |
| facebook/react | 7653 |
| vuejs/vue | 6033 |
| angular/angular.js | 5624 |
| emberjs/ember.js | 2489 |
| sveltejs/svelte | 1978 |
| vuejs/core | 1792 |
| Polymer/polymer | 1785 |
| jquery/jquery | 1587 |
| jashkenas/backbone | 1463 |
| ionic-team/stencil | 1101 |
...
30 rows in set
Time: 7.809s

Then, we just need to draw the result with Apache Echarts into a more visualized chart as shown below.


JavaScript frameworks with the most issue creators

JavaScript frameworks with the most issue creators

Note: You can click the REQUEST INFO on the upper right side of each chart to get the SQL command for each result.

Feedback: People love it!​

After we released OSS Insight on May 3, we have received loud applause on social media, via emails and private messages, from many developers, engineers, researchers, and people who are passionate about the open source community in various companies and industries.

I am more than excited and grateful that so many people find OSS Insight interesting, helpful, and valuable. I am also proud that my team made such a wonderful product in such a short time.


Applause given by developers and organizations on Twitter-1

Applause given by developers and organizations on Twitter-1

Applause given by developers and organizations on Twitter

Lessons learned​

Looking back at the process we used to build this website, we have learned many mind-refreshing lessons.

First, quick doesn’t mean dirty, as long as we make the right choices. Building an insight tool in just one week is tricky, but thanks to those wonderful, ready-made, and open source projects such as TiDB, Docusaurus, and Echarts, we made it happen with efficiency and without compromising the quality.

Second, it’s crucial to select the right databaseβ€”especially one that supports SQL. TiDB is a distributed SQL database with great scalability that can handle both transactional and real-time analytical workloads. With its help, we can process billions of rows of data with ease, and use SQL commands to execute complicated real-time queries. Further, using TiDB means we can leverage its resources to go to market faster and get feedback promptly.

If you like our project or are interested in joining us, you’re welcome to submit your PRs to our GitHub repository. You can also follow us on Twitter for the latest information.

note

πŸ“Œ Join our workshop​

If you want to get your own insights, you can join our workshop and try using TiDB to support your own datasets.

Β· 3 min read
ilovesoup

Providing insights on large volume of email data might not be as easy as we thought. While data coming in real-time, indices and metadata are to be built consistently. To make things worse, the data volume is beyond traditional single node databases' reach.

Background​

To store large volumes of real-time user data like email and provide insights is not easy. If your application is layered on top of Gmail to automatically extract and organize the useful information buried inside of our inboxes.

It became clear that they were going to need a better system for organizing terabytes of email metadata to power collaboration as their customer base rapidly increased, it is not easy to provide insights. You need to organize email data by first applying a unique identifier to the emails and then proactively indexing the email metadata. The unique identifier is what connects the same email headers across. For each email inserted in real-time, the system extracts meta information from it and builds indices for high concurrent access. When data volume is small, it's all good: traditional databases provide all you need. However, when data size grows beyond a single node's capacity, everything becomes very hard.

Potential Database Solutions​

Regarding databases, there are some options you might consider:

  1. NoSQL database. While fairly scalable, it does not provide you indexing and comprehensive query abilities. You might end up implementing them in your application code.
  2. Sharing cluster of databases. Designing sharding key and paying attention to the limitations between shards are painful. It might be fine for applications with simple schema designs, but it will be too complicated for CRM. Moreover, it's very hard to maintain.
  3. Analytical databases. They are fine for dashboard and reporting. But not fine for high concurrent updates and index based serving.

How to get real-time insights​

TiDB is a distributed database with user experience of traditional databases. It looks like a super large MySQL without the limitations of NoSQL and sharding cluster solutions. With TiDB, you can simply have the base information, indices and metadata being updated in a concurrent manner with the help of cross-node transaction ability.

To build such a system, you just need following steps:

  1. Create schemas according to your access pattern with indices on user name, organization, job title etc.
  2. Use streaming system to gather and extract meta information from your base data
  3. Insert into TiDB via ordinary MySQL client driver like JDBC. You might want to gather data in small batches of hundreds of rows to speed up ingestion. In a single transaction, updates on base data, indices and meta information are guaranteed to be consistent.
  4. Optionally, deploy a couple of TiFlash nodes to speed up large scale reporting queries.
  5. Access the data just like in MySQL and you are all done. SQL features for analytics like aggregations, multi-joins or window functions are all supported with great performance.

For more cases, please see here.

info

🌟 Details in how OSS Insight works​

Go to read Use TiDB Cloud to Analyze GitHub Events in 10 Minutes and use the Serverless Tier TiDB Cloud Cluster.

You can find how we deal with massive github data in Data Preparation for Analytics as well!

- - + + \ No newline at end of file diff --git a/blog/tags/tidbcloud/index.html b/blog/tags/tidbcloud/index.html index 7b38dfe8cbe..59af7567271 100644 --- a/blog/tags/tidbcloud/index.html +++ b/blog/tags/tidbcloud/index.html @@ -21,13 +21,13 @@ - - + +

4 posts tagged with "tidbcloud"

View All Tags

Β· 11 min read
Mini256
Caitin Chen

TL;DR:

This post tells how a website on a distributed database reduced online serving latency from 1.11 s to 417.7 ms, and then to 123.6 ms. We found that some lessons learned on MySQL could be applied throughout the optimization process. But when we optimize a distributed database, we need to consider more.

The OSS Insight website displays the data changes of GitHub events in real time. It's powered by TiDB Cloud, a MySQL-compatible distributed SQL database for elastic scale and real-time analytics.

Recently, to save costs, we tried to use lower-specification machines without affecting query efficiency and user experience. But our website and query response slowed down.


The repository analysis page was loading

The repository analysis page was loading, loading, and loading

How could we solve these problems on a distributed database? Could we use the methodology we learned on MySQL?

Analyzing the SQL execution plan​

To identify slow SQL statements, we used TiDB Cloud's Diagnosis page to sort SQL queries by their average latency.

For example, after the API server received a request, it executed the following SQL statement to obtain the number of issues in the vscode repository:

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

However, if the open source repository is large, this query may take several seconds or more to execute.

Using EXPLAIN ANALYZE to troubleshoot query performance problems​

In MySQL, when we troubleshoot query performance problems, we usually use the EXPLAIN ANALYZE <sql> statement to view the SQL statement's execution plan. We can use the execution plan to locate the problem. The same works for TiDB.

We executed the EXPLAIN statement:

EXPLAIN ANALYZE SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

The result showed that the query took 1.11 seconds to execute.


The query result

The query result

You can see that TiDB's EXPLAIN ANALYZE statement execution result was completely different from MySQL's. TiDB's execution plan gave us a clearer understanding of how this SQL statement was executed.

The execution plan shows:

  • This SQL statement was split into several subtasks. Some were on the root node, and others were on the tikv node.
  • The query fetched data from the partition:issue_event partition table.
  • This query did a range scan through the index index_github_events_on_repo_id(repo_id). This let the query narrow down the data scan quickly. This process only took 59 ms. It was the sum of the execution times of multiple concurrent tasks.
  • Besides IndexRangeScan, the query also used TableRowIDScan. This scan took 4.69 s, the sum of execution times for multiple concurrent subtasks.

From the execution times above, we determined that the query performance bottleneck was in the TableRowIDScan step.

We reran the EXPLAIN ANALYZE statement and found that the query was faster the second time. Why?

Why did TableRowIDScan take so long?​

To find the reason why TableRowIDScan took so long, we need basic knowledge of TiDB's underlying storage.

In TiDB, a table's data entries and indexes are stored on TiKV nodes in key-value pairs.

  • For an index, the key is the combination of the index value and the row_id (for a non-clustered index) or the primary key (for a clustered index). The row_id or primary key indicates where the data is stored.
  • For a data entry, the key is the combination of the table ID and the row_id or primary key. The value part is the combination of this row of data.

This graph shows how IndexLookup is executed in the execution plan:


The logical structure

This is the logical structure, not the physical storage structure.

In the query above, TiDB uses the query condition repo_id=41881900 to filter out all row numbers row_id related to the repository in the secondary index index_github_events_on_repo_id. The query needs the number column data, but the secondary index doesn't provide it. Therefore, TiDB must execute IndexLookup to find the corresponding row in the table based on the obtained row_id (the TableRowIDScan step).

The rows are probably scattered in different data blocks and stored on the hard disk. This causes TiDB to perform a large number of I/O operations to read data from different data blocks or even different machine nodes.

Why was EXPLAIN ANALYZE faster the second time?​

In EXPLAIN ANALYZE's execution result, we saw that the "execution info" column corresponding to the TableRowIDScan step contained this information:

block: {cache_hit_count: 2755559, read_count: 179510, read_byte: 4.07 GB}

We thought this had something to do with TiKV. TiKV read a very large number of data blocks from the disk. Because the data blocks read from the disk were cached in memory in the first execution, 2.75 million data blocks could be read directly from memory instead of being retrieved from the hard disk. This made the TableRowIDScan step much faster, and the query was faster overall.

However, we believed that user queries were random. For example, a user might look up data from a vscode repository and then go to a kubernetes repository. TiKV's memory couldn't cache all the data blocks in all the drives. Therefore, this did not solve our problem, but it reminded us that when we analyze SQL execution efficiency, we need to exclude cache effects.

Using a covering index to avoid executing TableRowIDScan​

Could we avoid executing TableRowIDScan in IndexLookup?

In MySQL, a covering index prevents the database from index lookup after index filtering. We wanted to apply this to OSS Insight. In our TiDB database, we tried to create a composite index to achieve index coverage.

When we created a composite index with multiple columns, we needed to pay attention to the column order. Our goals were to allow a composite index to be used by as many queries as possible, to help these queries narrow the scope of data scans as quickly as possible, and to provide as many fields as possible in the query. When we created a composite index we followed this order:

  1. Columns that had high differentiation and could be used as equivalence conditions for the WHERE statement, like repo_id
  2. Columns that didn't have high differentiation but could be used as equivalence conditions for the WHERE statement, like type and action
  3. Columns that could be used as range query conditions for the WHERE statement, like created_at
  4. Redundant columns that were not used as filter conditions but were used in the query, such as number and push_size

We used the CREATE INDEX statement to create a composite index in the database:

CREATE INDEX index_github_events_on_repo_id_type_number ON github_events(repo_id, type, number);

When we created the index and ran the SQL statement again, the query speed was significantly faster. We viewed the execution plan through EXPLAIN ANALYZE and found that the execution plan became simpler. The IndexLookup and TableRowIDScan steps were gone. The query took only 417.7 ms.


The result of the EXPLAIN query

The result of the EXPLAIN query. This query cost 417.7 ms

So we knew that our query could get all the data it needed by doing an IndexRangeScan on the new index. This composite index included the number field, so TiDB did not need to perform IndexLookup to get data from the table. This reduced a lot of I/O operations.


`IndexRangeScan` in the non-clustered table

IndexRangeScan in the non-clustered table

Pushing down computing to further reduce query latency​

For a query that needed to obtain 270,000 rows of data, 417.7 ms was quite a short execution time. But could we improve the time even more?

We thought this relied on TiDB's architecture that separates computing and storage layers. This is different from MySQL.

In TiDB:

  • The tidb-server node computes data. It corresponds to root in the execution plan.
  • The tikv-server node stores the data. It corresponds to cop[tikv] in the execution plan.

Generally, an SQL statement is split into multiple steps to execute with the cooperation of computing and storage nodes.

When we executed the SQL statement in this article, TiDB obtained the data of the github_events table from tikv-server and performed the aggregate calculation of the COUNT function on tidb-server.

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

The execution plan indicated that when TiDB was performing IndexReader, tidb-server needed to read 270,000 rows of data from tikv-server through the network. This was time-consuming.


`tidb-server` read 270,000 rows of data from `tikv-server`

tidb-server read 270,000 rows of data from tikv-server

How could we avoid such a large network transmission? Although the query needed to obtain a large amount of data, the final calculation result was only a number. Could we complete the COUNT aggregation calculation on tikv-server and return the result only to tidb-server?

TiDB had implemented this idea through the coprocessor on tikv-server. This optimization process is called computing pushdown.

The execution plan indicated that our SQL query did not do this. Why? We checked the TiDB documentation and learned that:

Usually, aggregate functions with the DISTINCT option are executed in the TiDB layer in a single-threaded execution model.

This meant that our SQL statement couldn't use computing pushdown.

SELECT
COUNT(DISTINCT number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent';

Therefore, we removed the DISTINCT keyword.

For the github_events table, an issue only generated an event with the IssuesEvent type and opened action. We could get the total number of unique issues by adding the condition of action = 'opened'. This way, we didn't need to use the DISTINCT keyword for deduplication.

SELECT
COUNT(number)
FROM github_events
WHERE
repo_id = 41881900 -- vscode
AND type = 'IssuesEvent'
AND action = 'opened';

The composite index we created lacked the action column. This caused the query index coverage to fail. So we created a new composite index:

CREATE INDEX index_github_events_on_repo_id_type_action_number ON github_events(repo_id, type, action, number);

After we created the index, we checked the execution plan of the modified SQL statement through the EXPLAIN ANALYZE statement. We found that:

  • Because we added a new filter action='opened', the number of rows to scan had decreased from 270,000 to 140,000.
  • tikv-server executed the StreamAgg operator, which was the aggregate calculation of the COUNT function. This indicated that the calculation had been pushed down to the TiKV coprocessor for execution.
  • tidb-server only needed to obtain two rows of data from tikv-server through the network. This greatly reduced the amount of data transmitted.
  • The query only took 123.6 ms.
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+
| id | estRows | actRows | task | access object | execution info | operator info | memory | disk |
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+
| StreamAgg_28 | 1.00 | 1 | root | | time:123.6ms, loops:2 | funcs:count(Column#43)->Column#34 | 388 Bytes | N/A |
| └─IndexReader_29 | 1.00 | 2 | root | partition:issues_event | time:123.6ms, loops:2, cop_task: {num: 2, max: 123.5ms, min: 1.5ms, avg: 62.5ms, p95: 123.5ms, max_proc_keys: 131360, p95_proc_keys: 131360, tot_proc: 115ms, tot_wait: 1ms, rpc_num: 2, rpc_time: 125ms, copr_cache_hit_ratio: 0.50, distsql_concurrency: 15} | index:StreamAgg_11 | 590 Bytes | N/A |
| └─StreamAgg_11 | 1.00 | 2 | cop[tikv] | | tikv_task:{proc max:116ms, min:8ms, avg: 62ms, p80:116ms, p95:116ms, iters:139, tasks:2}, scan_detail: {total_process_keys: 131360, total_process_keys_size: 23603556, total_keys: 131564, get_snapshot_time: 1ms, rocksdb: {delete_skipped_count: 320, key_skipped_count: 131883, block: {cache_hit_count: 307, read_count: 1, read_byte: 63.9 KB, read_time: 60.2Β΅s}}} | funcs:count(gharchive_dev.github_events.number)->Column#43 | N/A | N/A |
| └─IndexRangeScan_15 | 7.00 | 141179 | cop[tikv] | table:github_events, index:index_ge_on_repo_id_type_action_created_at_number(repo_id, type, action, created_at, number) | tikv_task:{proc max:116ms, min:8ms, avg: 62ms, p80:116ms, p95:116ms, iters:139, tasks:2} | range:[41881900 "IssuesEvent" "opened",41881900 "IssuesEvent" "opened"], keep order:false | N/A | N/A |
+-------------------------+---------+---------+-----------+-------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+-----------+------+

Applying what we learned to other queries​

Through our analysis and optimizations, the query latency was significantly reduced:

1.11 s β†’ 417.7 ms β†’ 123.6 ms

We applied what we learned to other queries and created the following composite indexes in the github_events table:

index_ge_on_repo_id_type_action_pr_merged_created_at_add_del

index_ge_on_repo_id_type_action_created_at_number_pdsize_psize

index_ge_on_repo_id_type_action_created_at_actor_login

index_ge_on_creator_id_type_action_merged_created_at_add_del

index_ge_on_actor_id_type_action_created_at_repo_id_commits

These composite indexes covered more than 20 analytical queries in repository analysis and personal analysis pages on the OSS Insight website. This improved our website's overall loading speed.

Some lessons we learned on MySQL can be applied throughout the optimization process. But we need to consider more when we optimize query performance in a distributed database. We also recommend you read Performance Tuning in the TiDB documentation. This will give you a more professional and comprehensive guide to performance optimization.

References​

Β· 10 min read
Fendy Feng

4.6 billion is literally an astronomical figure. The richest star map of our galaxy, brought by Gaia space observatory, includes just under 2 billion stars. What does a view of 4.6 billion GitHub events really look like? What secrets and values can be discovered in such an enormous amount of data?

Here you go: OSSInsight.io can help you find the answer. It’s a useful insight tool that can give you the most updated open source intelligence, and help you deeply understand any single GitHub project or quickly compare any two projects by digging deep into 4.6 billion GitHub events in real time. Here are some ways you can play with it.

Compare any two GitHub projects​

Do you wonder how different projects have performed and developed over time? Which project is worthy of more attention? OSSInsight.io can answer your questions via the Compare Projects page.

Let’s take the Kubernetes repository (K8s) and Docker’s Moby repository as examples and compare them in terms of popularity and coding vitality.

Popularity​

To compare the popularity of two repositories, we use multiple metrics including the number of stars, the growth trend of stars over time, and stargazers’ geographic and employment distribution.

Number of stars​

The line chart below shows the accumulated number of stars of K8s and Moby each year. According to the chart, Moby was ahead of K8s until late 2019. The star growth of Moby slowed after 2017 while K8s has kept a steady growth pace.

The star history of K8s and Moby

Geographical distribution of stargazers​

The map below shows the stargazers’ geographical distribution of Moby and K8s. As you can see, their stargazers are scattered around the world with the majority coming from the US, Europe, and China.

The geographical distribution of K8s and Moby stargazers

Employment distribution of stargazers​

The chart below shows the stargazers’ employment of K8s (red) and Moby (dark blue). Both of their stargazers work in a wide range of industries, and most come from leading dotcom companies such as Google, Tencent, and Microsoft. The difference is that the top two companies of K8s’ stargazers are Google and Microsoft from the US, while Moby’s top two followers are Tencent and Alibaba from China.

The employment distribution of K8s and Moby stargazers

Β· 5 min read
Fendy Feng
hooopo

TiDB is an open source distributed NewSQL database with horizontal scalability, high availability, and strong consistency. It can also deal with mixed OLTP and OLAP workloads at the same time by leveraging its hybrid transactional and analytical (HTAP) capability.

TiDB Cloud is a fully-managed Database-as-a-Service (DBaaS) that brings everything great about TiDB to your cloud and lets you focus on your applications, not the complexities of your database.

In this tutorial, we will provide you with a piece of sample data of all GitHub events occurring on January 1, 2022, and walk you through on how to use TiDB Cloud to analyze this data in 10 minutes.

Sign up for a TiDB Cloud account (Free)​

  1. Click here to sign up for a TiDB Cloud account free of charge.
  2. Log in to your account.

Β· 5 min read
hooopo

Data​

All the data we use here on this website sources from GH Archive, a non-profit project that records and archives all GitHub events data since 2011. The total data volume archived by GH Archive can be up to 4 billion rows. We download the json file on GH Archive and convert it into csv format via Script, and finally load it into the TiDB cluster in parallel through TiDB-Lightning.

In this section, we will explain step by step how we conduct this process.

  1. Prepare the data in csv format for TiDB Lighting.
- - + + \ No newline at end of file diff --git a/blog/trends-and-insights-from-github-2022/index.html b/blog/trends-and-insights-from-github-2022/index.html index 2b2c3fcfaa0..f8320c640c6 100644 --- a/blog/trends-and-insights-from-github-2022/index.html +++ b/blog/trends-and-insights-from-github-2022/index.html @@ -21,13 +21,13 @@ - - + +

Open Source Highlights: Trends and Insights from GitHub 2022

Β· 10 min read
Cheese Wong
Jagger
hooopo
Vita Lu
Mia Zhou
Caitin Chen

We analyzed more than 5,000,000,000 rows of GitHub event data and got the results here. In this report, you'll get interesting findings about open source software on GitHub in 2022, including:

Top languages in the open source world over the past four years​

This chart ranks programming languages yearly from 2019 to 2022 based on the ratio of new repositories using these languages to all new repositories.


top-programming-languages
Top programming languages

Insights:

  • Python surpassed Java and moved to #3 in 2021.
  • TypeScript rose from #10 to #6, and SCSS rose from #39 to #19. The rise of SCSS shows that open source projects that value front-end expressiveness are gradually gaining popularity.
  • The two languages Ruby and R dropped a lot in ranking over the years.

Rankings of back-end programming languages​

The programming languages used in a pull request reflect which languages developers used. To find out the most popular back-end programming languages, we queried the distribution of programming languages by new pull requests from 2019 to 2022 and took the top 10 for each year.


top-back-end-programming-languages
Top back-end programming languages

The chart data indicates:

  • Python and Java rank #1 and #2 respectively. In 2021, Go overtook Ruby to rank #3 in 2021.
  • Rust has been trending upward for several years, ranking #9 in 2022.

Geographic distribution of developer behavior​

We queried the number of various events that occurred throughout the world from January 1 to September 30, 2022 and identified the top 10 countries by the number of events triggered by developers in these countries. The chart displays the proportion of each event type by country or region.


geographic-distribution-of-developer-behavior
Geographic distribution of developer behavior

The chart shows that:

  • The events triggered in the top 10 countries account for about 23.27% of all GitHub events. However, the number of developers from these countries is only 10%.
  • US developers are most likely to review code, with a PullRequestReviewEvent share of 6.15%.
  • Korean developers prefer pushing directly to repositories (PushEvent).
  • Japanese developers are most likely to submit code via pull requests, with a PullRequestEvent share of 10%.
  • German developers like to open issues and comments, with IssueEvent and CommentEvent accounting for 4.18% and 12.66% respectively.
  • Chinese developers like to star repositories, with 17.23% for WatchEvent and 2.7% for ForkEvent.

Notes:

  • In 2022, 17,062,081 developers had behavioral events, and 2,923,523 of them have the Location field, so the sampling rate is 17.13%
  • GitHub identifies 15 types of events. We only show commonly used types. Comment Event includes CommitCommentEvent, IssueCommentEvent, and PullRequestReviewCommentEvent. Others includes MemberEvent, CreateEvent, ReleaseEvent, GollumEvent, and PublicEvent.

Developer behavior distribution on weekdays and weekends​

We queried the distribution of each event type over the seven days of the week.


developer-behavior-distribution-on-weekdays-and-weekends
Developer behavior distribution on weekdays and weekends

Insights:

  • Developers are most active on weekdays, with 77.73% of events occurring on weekdays.

The distribution of specific events​

developer-behavior-distribution-from-monday-to-sunday
Developer behavior distribution from Monday to Sunday

Insights:

  • Pull Request Event, Pull Request Review Event, and Issues Event all have the highest percentage on Tuesdays, while the lowest percentage is on the weekends.
  • The amount of Push Event, Watch Event, and Fork Event activities are similar on weekdays and weekends, while the Pull Request Review Event is the most different. Watch Event and Fork Event are more personal behaviors, Pull Request Review Events are more work behaviors, and Push Events are used more in personal projects.

Each year, technology introduces new buzz words. Can we gain insight into technical trends through the open source repositories behind the hot words? We investigated five technical areas: Low Code, Web3, GitHub Actions, Database, and AI.

We queried the number of open source repositories associated with each technical area, as well as the percentage of active repositories in 2022.


activity-levels-of-popular-topics
Activity levels of popular topics

This figure shows that open source repositories in the Low Code topic are the most active, with 76.3% being active in 2022, followed by Web3 with 63.85%.

We queried the following items for each technical area from 2015 to 2022:

  • The annual increment of repositories
  • The annual increment of collaborative events
  • The number of developers participating in collaborative events
  • The annual increment of stars

Then, we calculated the growth rate for each year which can reflect new entrants, developer engagement in this technical field, and the industry's interest in this area. For 2022, we compare its first nine months with the first nine months of 2021.


low-code-repositories
Low code repositories

We can see that 2020 is the peak period of project development, with a 313.43% increase in new repositories and a 157.06% increase in developer collaborative events. The industry's interest increased most significantly in 2021, reaching 184.82%. In 2022, the year-on-year growth data shows that the number of new repositories decreased (-26.21%), but developer engagement and industry interest are still rising.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


web3-repositories
Web3 repositories

Whether it is the creation of new repositories, developers, or the interest of the industry, the Web3 ecosystem has grown rapidly in recent years, and the growth rate of new repositories peaked at 322.65% in 2021.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


github-actions-repositories
GitHub Actions repositories

The annual increase of GitHub Actions repositories has been declining, but developer engagement and the industry's interest are still increasing slightly.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


database-repositories
Database repositories

As an infrastructure project, the Database project's threshold is high. Compared with projects in other fields, a database project has a stable growth rate.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories


ai-repositories
AI repositories

After two years of high growth in 2016 and 2017, open source projects in AI have been growing gradually slowly.

* Time range of 2022: 01.01-09.30, excluding bot events and forking repositories

The number of stars is the most visible indication of the popularity of open source projects. We looked at the 50 projects that received the most stars from January 1 to September 30, 2022. We found that:


most-popular-repositories-2022
The most popular repositories in 2022

* Time range: 2022.01.01-2022.09.30, excluding bot events

The most active repositories over the past four years​

Here we looked up the top 20 active repositories per year from 2019 to 2022 and counted the total number of listings per repository. The activity of the repository is ranked according to the number of developers participating in collaborative events.

Repository NameCount
microsoft/vscode4
flutter/flutter4
MicrosoftDocs/azure-docs4
firstcontributions/first-contributions4
Facebook/react-native4
pytorch/pytorch4
microsoft/TypeScript4
tensorflow/tensorflow3
kubernetes/kubernetes3
DefinitelyTyped/DefinitelyTyped3
golang/go3
google/it-cert-automation-practice3
home-assistant/core3
microsoft/PowerToys3
microsoft/WSL3

Insights:

  • Microsoft has the most repositories on the list, with five.

  • tensorflow/tensorflow and kubernetes/kubernetes both dropped out of the top 20 after three consecutive years on the list (2019 to 2021).

  • New to the 2022 list are archway-network/testnets, element-fi/elf-council-frontend, solana-labs/token-list, education/GitHubGraduation-2022, taozhiyu/TyProAction, NixOS/nixpkgs, rust-lang/rust.

  • Time range: 2022.01.01-2022.09.30, excluding bot events

Who gave the most stars in 2022​

We queried the developers who gave the most stars in 2022, took the top 20, and filtered out accounts of suspected bots. If a developer's number of star events divided by the number of starred repositories is equal to or greater than 2, we suspect this user to be a bot.


developers-most-stars
Developers who gave the most stars

We found that until September 30, 2022, the developer who starred the most repositories had starred a total of 37,228 repositories, an average of 136 repositories per day.

* Time range: 2022.01.01-2022.09.30, excluding bot events

The most active developers since 2011​

We queried the top 20 most active developers per year since 2011. This time we didn't filter out bot events.


most-active-developers
The most active developers

We found that the percentage of bots is becoming larger and larger. Bots started to overtake humans in 2013 and have reached over 95% in 2022.

Appendix​

Term description​

  • GitHub events: GitHub events are triggered by user actions, like starring a repository or pushing code.
  • Time range: In this report, the data collection range of 2022 is from January 1, 2022 to September 30, 2022. When comparing data of 2022 with another year, we use year-on-year analysis.
  • Bot events: Bot-triggered events account for a growing percentage of GitHub events. However, these events are not the focus of this report. We filtered out most of the bot-initiated events by matching regular expressions.

How we classify technical fields by topics​

We do exact matching and fuzzy matching based on the repository topic. Exact matching means that the repository topics have a topic that exactly matches the word, and fuzzy matching means that the repository topics have a topic that contains the word.

TopicExact matchingFuzzy matching
GitHub Actionsactionsgithub-action, gh-action
Low Codelow-code, lowcode, nocode, no-code
Web3web3
Databasedbdatabase, databases
nosql, newsql, sql
mongodb,neo4j
AIai, aiops, aiotartificial-intelligence, machine-intelligence
computer-vision, image-processing, opencv, computervision, imageprocessing
voice-recognition, speech-recognition, voicerecognition, speechrecognition, speech-processing
machinelearning, machine-learning
deeplearning, deep-learning
transferlearning, transfer-learning
mlops
text-to-speech, tts, speech-synthesis, voice-synthesis
robot, robotics
sentiment-analysis
natural-language-processing, nlp
language-model, text-classification, question-answering, knowledge-graph, knowledge-base
gan, gans, generative-adversarial-network, generative-adversarial-networks
neural-network, neuralnetwork, neuralnetworks, neural-network, dnn
tensorflow
PyTorch
huggingface
transformers
seq2seq, sequence-to-sequence
data-analysis, data-science
object-detection, objectdetection
data-augmentation
classification
action-recognition
- - + + \ No newline at end of file diff --git a/blog/try-it-yourself/index.html b/blog/try-it-yourself/index.html index 68e49679b18..e2aedb357ce 100644 --- a/blog/try-it-yourself/index.html +++ b/blog/try-it-yourself/index.html @@ -21,14 +21,14 @@ - - + +

[Outdated] Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Β· 5 min read
Fendy Feng
hooopo

TiDB is an open source distributed NewSQL database with horizontal scalability, high availability, and strong consistency. It can also deal with mixed OLTP and OLAP workloads at the same time by leveraging its hybrid transactional and analytical (HTAP) capability.

TiDB Cloud is a fully-managed Database-as-a-Service (DBaaS) that brings everything great about TiDB to your cloud and lets you focus on your applications, not the complexities of your database.

In this tutorial, we will provide you with a piece of sample data of all GitHub events occurring on January 1, 2022, and walk you through on how to use TiDB Cloud to analyze this data in 10 minutes.

Sign up for a TiDB Cloud account (Free)​

  1. Click here to sign up for a TiDB Cloud account free of charge.
  2. Log in to your account.

Create a TiDB Cloud Serverless Tier cluster​

Once you register an account, you can create a cluster with TiDB Cloud Serverless Tier.

info

A cluster is a database to store data.

  1. Click Get Started for Free and start to create a cluster.

  1. On the Create a Cluster page, set up your cluster name and root password.
  2. Note that the cloud provider is AWS by default, and then MUST select the US-West-2 (Oregon) region to create the cluster.
  3. The cluster tier is S1.dev by default.
  4. Click Submit. Your TiDB Cloud cluster will be created in approximately 1 to 3 minutes.

Import data to your TiDB Cloud cluster​

Import the data​

Once your cluster is ready, you can start to import the sample data to your cluster.

info

We have merged the create database/table in the SQL files, so you don't need to create database/tables by yourself.

If you want to know the table schema, you can check desc gharchive_dev later in the following step.

  1. Click your cluster name in Active Cluster page to get into the detail page of your cluster.
  2. Click the Import button on the Active Clusters page and then go to the Data Import Task page.

  1. Copy the values below and paste to the blanks of Bucket URL and Role-ARN respectively on the Data Import Task page.

Bucket URL:

s3://tidbcloud-samples/gharchive/

Role-ARN:

arn:aws:iam::385595570414:role/import-sample-access
  1. Choose US West (Oregon) for your Bucket region;
  2. Tick TiDB Dumpling for the Data Format.
  3. Input your cluster password in the blank of Password on the Target Database section.

  1. After you fill in all the blanks on the Data Import Task page, click the Import button at the bottom of this page and wait for a few moments for the system to complete data importing.

Use the web shell to check if data is ready​

TiDB Cloud provides a web shell to connect the database online.

  1. Click the Exit button after you successfully import the data into your cluster.
  2. Click your cluster name in Active Cluster page to get into the detail page of your cluster.
  3. Then, click the Connect button and the Connect to TiDB panel pops out.
  4. Choose Web SQL Shell --> Open SQL Shell.
  5. Then input your cluster password as shown in the image below.

Set column storage replica: TiFlash (Optional but could make SQL faster!)​

TiFlash is the key component that makes TiDB / TiDB Cloud an HTAP database and capable of dealing with OLTP and OLAP workloads at the same time.

Here, you can try the following SQL commands on TiDB Cloud to experience its real-time analytics with ease.

  1. Execute the SQL statements specified below
use gharchive_dev;
ALTER TABLE github_events SET TIFLASH REPLICA 1;
  1. Setting a TiFlash replica will take you some time, so you can use the following SQL statements to check if the procedure is done or not.
SELECT * FROM information_schema.tiflash_replica WHERE TABLE_SCHEMA = 'gharchive_dev' and TABLE_NAME = 'github_events';

If the results you get are the same as follows, then it means the procedure is done.

mysql> SELECT * FROM information_schema.tiflash_replica WHERE TABLE_SCHEMA = 'gharchive_dev' and TABLE_NAME = 'github_events';
+---------------+---------------+----------+---------------+-----------------+-----------+----------+
| TABLE_SCHEMA | TABLE_NAME | TABLE_ID | REPLICA_COUNT | LOCATION_LABELS | AVAILABLE | PROGRESS |
+---------------+---------------+----------+---------------+-----------------+-----------+----------+
| gharchive_dev | github_events | 68 | 1 | | 1 | 1 |
+---------------+---------------+----------+---------------+-----------------+-----------+----------+
1 row in set (0.27 sec)

mysql>

Analysis!​

After you finish all the steps above, you can start the analytical process.

tip

If you want to know the table schema, you can use show create table tbl_name to get that information.

Because you have imported the sample data of all GitHub events occurred on the first hour of 2022 (from 2022-01-01 00:00:00 to 2022-01-01 00:59:59), you can start to make any queries based on that data by using SQL commands.

How many events occurred in total?​

Execute the following SQL statement to query the total number of events.

SELECT count(*) FROM github_events;

Which repository gets the most stars?​

Execute the following statements to query the most starred repository.

  SELECT repo_name, count(*) AS events_count
FROM github_events
WHERE type = 'WatchEvent' /* Yes, `WatchEvent` means star */
GROUP BY 1
ORDER BY 2 DESC
LIMIT 20;

Mini Test​

Here is a small test for you to practice how to use TiDB Cloud to conduct analytics.

Q: Who is the most active contributor except the robot accounts on the first hour of 2022?​

Click for the answer. ⬇️​

Click me to show answer
  SELECT actor_login, 
count(*) AS events_count
FROM github_events
WHERE actor_login NOT LIKE '%bot%'
GROUP BY 1
ORDER BY 2 DESC
LIMIT 20;
info

🌟 Details in how OSS Insight works​

Find the reason How we implement OSS Insight ?.

You can find how we deal with massive github data in Data Preparation for Analytics as well!

- - + + \ No newline at end of file diff --git a/blog/unsung-heroes-of-open-source/index.html b/blog/unsung-heroes-of-open-source/index.html index ad07eabf3ff..ee464fc1c8b 100644 --- a/blog/unsung-heroes-of-open-source/index.html +++ b/blog/unsung-heroes-of-open-source/index.html @@ -21,13 +21,13 @@ - - + +

The Unsung Heroes of Open Source: The Dedicated Maintainers Behind Lesser-Known Projects

Β· 8 min read
Mia Zhou
Notion AI

A few days ago, I read a blog post by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.

However, there are many open source projects that are widely used but not well-known. In this blog post, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author's personal experience and values. I just want to raise more awareness about these open source projects.

Core-js​

Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It's used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.

Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.

Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.


core-js-contributors
Core-js' top contributors

Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project's code. And as he said in the blog post I read, the project occupies almost all of his timeβ€”more than a full working day.


core-js-maintainer
Denis' contribution time distribution


core-js-star
Core-js' star history

On February 14th, Denis’s blog brought significant attention to the Core-js project. Now he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.

cURL​

cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.


curl-contributor
cURL's top contributors

cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in as mentioned in this tweet. This allows Daniel to maintain a more normal schedule and a full time job, and even leave work early on Wednesdays to play floorball.


curl-maintainer
Daniel's contribution time distribution

cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.

ImageMagick​

ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.


imagemagick-contributor
ImageMagick's top contributors

ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.


imagemagick-lastmonth
ImageMagick's top contributors last month

Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.

Currently, the project is sustained by the support of various organizations and individuals.

MyCLI​

MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.


mycli-contributor
MyCLI's top contributors

The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.


mycli-commit
MyCLI's commit history

However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.

Homebrew​

Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.


homebrew-contributor
Homebrew's top contributors

McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012β€”and he has full-time work on GitHub as a principal engineer.

Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.

Apache Log4j​

Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.


log4j2-stars
Apache Log4j's star history

Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.


log4j2-contributor
Apache Log4j's top contributors

Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now he is working on Nextiva as a Fellow Architect.Now the core maintainer of logging-log4j2 is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.

Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.

OpenSSL​

OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.


openssl-contributor
OpenSSL's top contributors

The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.

Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.

Maintaining an open source project is no easy feat. It's a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested on the blog Open Source Maintainers Owe You Nothing, "Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free."

- - + + \ No newline at end of file diff --git a/blog/why-we-choose-tidb-to-support-ossinsight/index.html b/blog/why-we-choose-tidb-to-support-ossinsight/index.html index 25f62475e5f..435d844709e 100644 --- a/blog/why-we-choose-tidb-to-support-ossinsight/index.html +++ b/blog/why-we-choose-tidb-to-support-ossinsight/index.html @@ -21,14 +21,14 @@ - - + +

Build a Better GitHub Insight Tool in a Week? A True Story

Β· 10 min read
Wink Yao
Fendy Feng

In early January 2022, Max, our CEO, a big fan of open-source, asked if my team could build a small tool to help us understand all the open-source projects on GitHub; and, that if everything worked well, we should open the API to help open source developers to build better insights. In fact, GitHub continuously publishes the public events in its open-source world through the open API. (Thank you and well done! Github). We can certainly learn a lot from the data!

I was excited about this project until Max said: β€œYou’ve only got one week.” Well, the boss is the boss! Although time was tight and we were faced with multiple head-aching problems, I decided to take up this challenge.

Headache 1: we need both historical and real-time data.​

After some quick research, we found GHArchive, an open-source project that collects and archives all GitHub data from 2011 and updates it hourly. By the way, a lot of open-source analytical tools such as CNCF's Devstats rely on GH Archive, too.

Thanks to GH Archive, we found the data source.

But there's another problem: hourly data is good, but not good enough. We wanted our data to be updated in real timeβ€”or at least near real time. We decided to directly use the GitHub event API, which collects all events that have occurred within the past hour.

By combining the data from the GH Archive and the GitHub event API, we can gain streaming, real-time event updates.


GitHub event updates

GitHub event updates

Headache 2: the data is huge!​

After we decompressed all the data from GH Archive, we found there were more than 4.6 billion rows of GitHub events. That’s a lot of data! We also noticed that about 300,000 rows were generated and updated each hour.


The data volume of GitHub events occurred after 2011

The data volume of GitHub events occurred after 2011

The database solution would be tricky here. Our goal is to build an application that provides real-time data insights based on a continuously growing dataset. So, scalability is a must. NoSQL databases can provide good scalability, but what follows is how to handle complex analytical queries. Unfortunately, NoSQL databases are not good at that.


Scalability vs SQL

Another option is to use an OLAP database such as ClickHouse. ClickHouse can handle the analytical workload very well, but it is not designed for serving online traffic. If we chose it, we would need another database for the online traffic.


OLAP vs Online Serving

What about sharding the database and then building an extract, transform, load (ETL) pipeline to synchronize the new events to a data warehouse? This sounds workable.


How a RDBMS handles the GitHub data

How a RDBMS handles the GitHub data

According to our product manager's (PM’s) plan, we needed to do some repo-specific or user-specific analysis. Although the total data volume was huge, the number of events was not too large for a single project or user. This meant using the secondary indexes in RDBMS would be a good idea. But, if we decided to use the above architecture, we had to be careful in selecting the database sharding key. For example, if we use user_id as the sharding key, then queries based on repo_id will be very tricky.

Another requirement from the PM was that our insight tool should provide OpenAPI, which meant we would have unpredictable concurrent traffic from the outside world.

Since we're not experts on Kafka and data warehouses, mastering and building such an infrastructure in just one week was a very difficult task for us.

The choice is obvious now, and don't forget PingCAP is a database company! TiDB seems a perfect fit for this, and it's a good chance to eat our own dog food. So, why not using TiDB! :)

If we use TiDB, can we get:

  • SQL support, including complex & flexible queries? β˜‘οΈ
  • Scalability? β˜‘οΈ
  • Secondary index support for fast lookup? β˜‘οΈ
  • Capability for online serving? β˜‘οΈ

Wow! It seems we got a winner!


By using the secondary index, TiDB scanned 29,639 rows (instead of 4.6 billion rows) GitHub events in 4.9 ms

By using the secondary index, TiDB scanned 29,639 rows (instead of 4.6 billion rows) GitHub events in 4.9 ms

To choose a database to support an application like OSS Insight, we think TiDB is a great choice. Plus, its simplified technology stack means a faster go-to-market and faster delivery of my boss' assignment.

After we used TiDB, we got a simplified architecture as shown below.


Simplified architecture after we use TiDB

Simplified architecture after we use TiDB

Headache 3: We have a "pushy" PM!​

Just as the subtitle indicates, we have a very β€œpushy” PM, which is not always a bad thing. :) His demands kept extending, from the single project analysis at the very beginning to the comparison and ranking of multiple repositories, and to other multidimensional analysis such as the geographical distribution of stargazers and contributors. What’s more pressing was that the deadlines stayed unchanged!!!

We had to keep a balance between the growing demands and the tight deadlines.

To save time, we built our website using Docusaurus, an open source static site generator in React with scalability, rather than building a site from scratch. We also used Apache Echarts, a powerful charting library, to turn analytical results into good-looking and easy-to-understand charts.

We chose TiDB as the database to support our website, and it perfectly supports SQL. This way, our back-end engineers could write SQL commands to handle complex and flexible analytical queries with ease and efficiency. Then, our front-end engineers would just need to display those SQL execution results in the form of good-looking charts.

Finally, we made it. We prototyped our tool in just one week, and named it OSS Insight, short for open source software insights. We continued to fine-tune it, and it was officially released on May 3.

How we deal with analytical queries with SQL​

Let's use one example to show you how we deal with complex analytical queries.

Analyze a GitHub collection: JavaScript frameworks​

OSS Insight can analyze popular GitHub collections by many metrics including the number of stars, issues, and contributors. Let’s identify which JavaScript framework has the most issue creators. This is an analytical query that includes aggregation and ranking. To get the result, we only need to execute one SQL statement:

SELECT
ci.repo_name AS repo_name,
COUNT(distinct actor_login) AS num
FROM
github_events ge
JOIN collection_items ci ON ge.repo_id = ci.repo_id
JOIN collections c ON ci.collection_id = c.id
WHERE
type = 'IssuesEvent'
AND action = 'opened'
AND c.id = 10005
-- Exclude Bots
and actor_login not like '%bot%'
and actor_login not in (select login from blacklist_users)
GROUP BY 1
ORDER BY 2 DESC
;

In the statement above, the collections and collection_items tables store the data of all GitHub repository collections in various areas. Each table has 30 rows. To get the order of issue creators, we need to associate the repository ID in the collection_items table with the real, 4.6-billion-row github_events table as shown below.


mysql> select * from collection_items where collection_id = 10005;
+-----+---------------+-----------------------+-----------+
| id | collection_id | repo_name | repo_id |
+-----+---------------+-----------------------+-----------+
| 127 | 10005 | marko-js/marko | 15720445 |
| 129 | 10005 | angular/angular | 24195339 |
| 131 | 10005 | emberjs/ember.js | 1801829 |
| 135 | 10005 | vuejs/vue | 11730342 |
| 136 | 10005 | vuejs/core | 137078487 |
| 138 | 10005 | facebook/react | 10270250 |
| 142 | 10005 | jashkenas/backbone | 952189 |
| 143 | 10005 | dojo/dojo | 10160528 |
...
30 rows in set (0.05 sec)

Next, let's look at the execution plan. TiDB is compatible with MySQL syntax, so its execution plan looks very similar to that of MySQL.

In the figure below, notice the parts in red boxes. The data in the table collection_items is read through distributed[row], which means this data is processed by TiDB’s row storage engine, TiKV. The data in the table github_events is read through distributed[column], which means this data is processed by TiDB’s columnar storage engine, TiFlash. TiDB uses both row and columnar storage engines to execute the same SQL statement. This is so convenient for OSS Insight because it doesn’t have to split the query into two statements.


TiDB execution plan

TiDB execution plan

TiDB returns the following result:

+-----------------------+-------+
| repo_name | num |
+-----------------------+-------+
| angular/angular | 11597 |
| facebook/react | 7653 |
| vuejs/vue | 6033 |
| angular/angular.js | 5624 |
| emberjs/ember.js | 2489 |
| sveltejs/svelte | 1978 |
| vuejs/core | 1792 |
| Polymer/polymer | 1785 |
| jquery/jquery | 1587 |
| jashkenas/backbone | 1463 |
| ionic-team/stencil | 1101 |
...
30 rows in set
Time: 7.809s

Then, we just need to draw the result with Apache Echarts into a more visualized chart as shown below.


JavaScript frameworks with the most issue creators

JavaScript frameworks with the most issue creators

Note: You can click the REQUEST INFO on the upper right side of each chart to get the SQL command for each result.

Feedback: People love it!​

After we released OSS Insight on May 3, we have received loud applause on social media, via emails and private messages, from many developers, engineers, researchers, and people who are passionate about the open source community in various companies and industries.

I am more than excited and grateful that so many people find OSS Insight interesting, helpful, and valuable. I am also proud that my team made such a wonderful product in such a short time.


Applause given by developers and organizations on Twitter-1

Applause given by developers and organizations on Twitter-1

Applause given by developers and organizations on Twitter

Lessons learned​

Looking back at the process we used to build this website, we have learned many mind-refreshing lessons.

First, quick doesn’t mean dirty, as long as we make the right choices. Building an insight tool in just one week is tricky, but thanks to those wonderful, ready-made, and open source projects such as TiDB, Docusaurus, and Echarts, we made it happen with efficiency and without compromising the quality.

Second, it’s crucial to select the right databaseβ€”especially one that supports SQL. TiDB is a distributed SQL database with great scalability that can handle both transactional and real-time analytical workloads. With its help, we can process billions of rows of data with ease, and use SQL commands to execute complicated real-time queries. Further, using TiDB means we can leverage its resources to go to market faster and get feedback promptly.

If you like our project or are interested in joining us, you’re welcome to submit your PRs to our GitHub repository. You can also follow us on Twitter for the latest information.

note

πŸ“Œ Join our workshop​

If you want to get your own insights, you can join our workshop and try using TiDB to support your own datasets.

- - + + \ No newline at end of file diff --git a/collections/3-d-physics-engines/index.html b/collections/3-d-physics-engines/index.html index 89cd208c5f5..8243958e699 100644 --- a/collections/3-d-physics-engines/index.html +++ b/collections/3-d-physics-engines/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

3D Physics Engines - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/3-d-physics-engines/trends/index.html b/collections/3-d-physics-engines/trends/index.html index 70e8179bd8d..3f13c080315 100644 --- a/collections/3-d-physics-engines/trends/index.html +++ b/collections/3-d-physics-engines/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

3D Physics Engines - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/:slug/index.html b/collections/:slug/index.html index c840e8c777e..8977fa4d16d 100644 --- a/collections/:slug/index.html +++ b/collections/:slug/index.html @@ -21,13 +21,13 @@ - - + +

Loading - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/:slug/trends/index.html b/collections/:slug/trends/index.html index 4c3a8dc1288..dfe4f822787 100644 --- a/collections/:slug/trends/index.html +++ b/collections/:slug/trends/index.html @@ -21,13 +21,13 @@ - - + +

Loading - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ansible-dev-tools/index.html b/collections/ansible-dev-tools/index.html index cdc05d9c39c..b812b526a5f 100644 --- a/collections/ansible-dev-tools/index.html +++ b/collections/ansible-dev-tools/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Ansible DevTools - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ansible-dev-tools/trends/index.html b/collections/ansible-dev-tools/trends/index.html index acb8be400ff..1a55f7c6ba1 100644 --- a/collections/ansible-dev-tools/trends/index.html +++ b/collections/ansible-dev-tools/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Ansible DevTools - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/api-gateway/index.html b/collections/api-gateway/index.html index 4db72f22752..946cc665fbc 100644 --- a/collections/api-gateway/index.html +++ b/collections/api-gateway/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

API Gateway - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/api-gateway/trends/index.html b/collections/api-gateway/trends/index.html index 689fef2ab35..117bb6bc85d 100644 --- a/collections/api-gateway/trends/index.html +++ b/collections/api-gateway/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

API Gateway - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/api-tool-for-developer/index.html b/collections/api-tool-for-developer/index.html index ddec1806ceb..355f5c3e47d 100644 --- a/collections/api-tool-for-developer/index.html +++ b/collections/api-tool-for-developer/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

API tool for developer - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/api-tool-for-developer/trends/index.html b/collections/api-tool-for-developer/trends/index.html index 9664831c718..3e12b88bb51 100644 --- a/collections/api-tool-for-developer/trends/index.html +++ b/collections/api-tool-for-developer/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

API tool for developer - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/apm-tool/index.html b/collections/apm-tool/index.html index cc272e1d9ae..31fadbd6c4a 100644 --- a/collections/apm-tool/index.html +++ b/collections/apm-tool/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

APM Tool - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/apm-tool/trends/index.html b/collections/apm-tool/trends/index.html index 581991d043b..f01809ffbd3 100644 --- a/collections/apm-tool/trends/index.html +++ b/collections/apm-tool/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

APM Tool - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/approximate-nearest-neighbor-library/index.html b/collections/approximate-nearest-neighbor-library/index.html index 8318294ca54..b42d6be3cfb 100644 --- a/collections/approximate-nearest-neighbor-library/index.html +++ b/collections/approximate-nearest-neighbor-library/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

approximate nearest neighbor library - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/approximate-nearest-neighbor-library/trends/index.html b/collections/approximate-nearest-neighbor-library/trends/index.html index f5bf8080b5f..de8e41cf59e 100644 --- a/collections/approximate-nearest-neighbor-library/trends/index.html +++ b/collections/approximate-nearest-neighbor-library/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

approximate nearest neighbor library - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/artificial-intelligence-of-china/index.html b/collections/artificial-intelligence-of-china/index.html index 70ca595eb91..68bb4f4fe7b 100644 --- a/collections/artificial-intelligence-of-china/index.html +++ b/collections/artificial-intelligence-of-china/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Artificial Intelligence of China - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/artificial-intelligence-of-china/trends/index.html b/collections/artificial-intelligence-of-china/trends/index.html index 148b08147d6..e2895c681f7 100644 --- a/collections/artificial-intelligence-of-china/trends/index.html +++ b/collections/artificial-intelligence-of-china/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Artificial Intelligence of China - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/artificial-intelligence/index.html b/collections/artificial-intelligence/index.html index 044b23e2929..2d8f1fa93df 100644 --- a/collections/artificial-intelligence/index.html +++ b/collections/artificial-intelligence/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Artificial Intelligence - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/artificial-intelligence/trends/index.html b/collections/artificial-intelligence/trends/index.html index 2a537605df5..d18b96d3c79 100644 --- a/collections/artificial-intelligence/trends/index.html +++ b/collections/artificial-intelligence/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Artificial Intelligence - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/browser-extension-frameworks/index.html b/collections/browser-extension-frameworks/index.html index b06eb68b9d7..b4acccd4cd9 100644 --- a/collections/browser-extension-frameworks/index.html +++ b/collections/browser-extension-frameworks/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Browser Extension Frameworks - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/browser-extension-frameworks/trends/index.html b/collections/browser-extension-frameworks/trends/index.html index 898760d6166..2100f798a87 100644 --- a/collections/browser-extension-frameworks/trends/index.html +++ b/collections/browser-extension-frameworks/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Browser Extension Frameworks - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/business-intelligence/index.html b/collections/business-intelligence/index.html index 8864c8db4bf..721cb8f05d4 100644 --- a/collections/business-intelligence/index.html +++ b/collections/business-intelligence/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Business Intelligence - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/business-intelligence/trends/index.html b/collections/business-intelligence/trends/index.html index 7790525c83f..d672ad42c78 100644 --- a/collections/business-intelligence/trends/index.html +++ b/collections/business-intelligence/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Business Intelligence - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/business-management/index.html b/collections/business-management/index.html index 76a0fd98d40..4493beb9849 100644 --- a/collections/business-management/index.html +++ b/collections/business-management/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Business Management - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/business-management/trends/index.html b/collections/business-management/trends/index.html index 4a2333c44fc..00f545b5a31 100644 --- a/collections/business-management/trends/index.html +++ b/collections/business-management/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Business Management - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/chaos-engineering/index.html b/collections/chaos-engineering/index.html index f76e7d54896..b944f3512ad 100644 --- a/collections/chaos-engineering/index.html +++ b/collections/chaos-engineering/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Chaos Engineering - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/chaos-engineering/trends/index.html b/collections/chaos-engineering/trends/index.html index bb22118e337..38953568df8 100644 --- a/collections/chaos-engineering/trends/index.html +++ b/collections/chaos-engineering/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Chaos Engineering - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/chat-gpt-alternatives/index.html b/collections/chat-gpt-alternatives/index.html index dd2874526fd..0c40175a0b9 100644 --- a/collections/chat-gpt-alternatives/index.html +++ b/collections/chat-gpt-alternatives/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

ChatGPT Alternatives - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/chat-gpt-alternatives/trends/index.html b/collections/chat-gpt-alternatives/trends/index.html index 0a30e6900c8..e1810205cff 100644 --- a/collections/chat-gpt-alternatives/trends/index.html +++ b/collections/chat-gpt-alternatives/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

ChatGPT Alternatives - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/chat-gpt-apps/index.html b/collections/chat-gpt-apps/index.html index 92cff7e2e17..2994400b502 100644 --- a/collections/chat-gpt-apps/index.html +++ b/collections/chat-gpt-apps/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

ChatGPT Apps - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/chat-gpt-apps/trends/index.html b/collections/chat-gpt-apps/trends/index.html index 53b1a956ef5..28b4f67ed8f 100644 --- a/collections/chat-gpt-apps/trends/index.html +++ b/collections/chat-gpt-apps/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

ChatGPT Apps - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cicd/index.html b/collections/cicd/index.html index 7f27e74b20d..ac0ef798d04 100644 --- a/collections/cicd/index.html +++ b/collections/cicd/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

CICD - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cicd/trends/index.html b/collections/cicd/trends/index.html index 2539e48514c..9032f7c00f5 100644 --- a/collections/cicd/trends/index.html +++ b/collections/cicd/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

CICD - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cloud-financial-management-and-resource-optimization/index.html b/collections/cloud-financial-management-and-resource-optimization/index.html index 5b0ff23e174..ba65b19ea2a 100644 --- a/collections/cloud-financial-management-and-resource-optimization/index.html +++ b/collections/cloud-financial-management-and-resource-optimization/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Cloud Financial Management and Resource Optimization - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cloud-financial-management-and-resource-optimization/trends/index.html b/collections/cloud-financial-management-and-resource-optimization/trends/index.html index f8c4bf9c302..ff896e7d612 100644 --- a/collections/cloud-financial-management-and-resource-optimization/trends/index.html +++ b/collections/cloud-financial-management-and-resource-optimization/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Cloud Financial Management and Resource Optimization - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/computer-science-courses/index.html b/collections/computer-science-courses/index.html index 4a3a95d5123..6d8e44cf8b5 100644 --- a/collections/computer-science-courses/index.html +++ b/collections/computer-science-courses/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Computer Science Courses - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/computer-science-courses/trends/index.html b/collections/computer-science-courses/trends/index.html index 86716f1dd50..fe696b2c618 100644 --- a/collections/computer-science-courses/trends/index.html +++ b/collections/computer-science-courses/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Computer Science Courses - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/configuration-management-tools/index.html b/collections/configuration-management-tools/index.html index 5066910e198..de2a827817b 100644 --- a/collections/configuration-management-tools/index.html +++ b/collections/configuration-management-tools/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Configuration Management Tools - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/configuration-management-tools/trends/index.html b/collections/configuration-management-tools/trends/index.html index f2a2052d35d..dfd7c9b1a00 100644 --- a/collections/configuration-management-tools/trends/index.html +++ b/collections/configuration-management-tools/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Configuration Management Tools - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cpp-cli-parsing/index.html b/collections/cpp-cli-parsing/index.html index e0197881807..9bd18175ac4 100644 --- a/collections/cpp-cli-parsing/index.html +++ b/collections/cpp-cli-parsing/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Cpp CLI Parsing - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cpp-cli-parsing/trends/index.html b/collections/cpp-cli-parsing/trends/index.html index 004a840acb7..727f16cba1d 100644 --- a/collections/cpp-cli-parsing/trends/index.html +++ b/collections/cpp-cli-parsing/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Cpp CLI Parsing - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cross-platform-gui-tool/index.html b/collections/cross-platform-gui-tool/index.html index e6bf52f073a..9cf0653005a 100644 --- a/collections/cross-platform-gui-tool/index.html +++ b/collections/cross-platform-gui-tool/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Cross Platform GUI Tool - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/cross-platform-gui-tool/trends/index.html b/collections/cross-platform-gui-tool/trends/index.html index 4c466a23a75..a00fc5e05f8 100644 --- a/collections/cross-platform-gui-tool/trends/index.html +++ b/collections/cross-platform-gui-tool/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Cross Platform GUI Tool - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/css-framework/index.html b/collections/css-framework/index.html index d99f9801b04..919852b49b8 100644 --- a/collections/css-framework/index.html +++ b/collections/css-framework/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

CSS Framework - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/css-framework/trends/index.html b/collections/css-framework/trends/index.html index 4578fb0a98e..926bbaeb661 100644 --- a/collections/css-framework/trends/index.html +++ b/collections/css-framework/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

CSS Framework - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/data-integration/index.html b/collections/data-integration/index.html index f138c635cb5..aad4c5a0e51 100644 --- a/collections/data-integration/index.html +++ b/collections/data-integration/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Data Integration - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/data-integration/trends/index.html b/collections/data-integration/trends/index.html index 265eabf838b..fd23950271a 100644 --- a/collections/data-integration/trends/index.html +++ b/collections/data-integration/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Data Integration - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/diagram-as-code/index.html b/collections/diagram-as-code/index.html index fb3e4772264..4aa700defcc 100644 --- a/collections/diagram-as-code/index.html +++ b/collections/diagram-as-code/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Diagram as Code - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/diagram-as-code/trends/index.html b/collections/diagram-as-code/trends/index.html index 13bdc09ef89..45049460e11 100644 --- a/collections/diagram-as-code/trends/index.html +++ b/collections/diagram-as-code/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Diagram as Code - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/distributed-file-storage/index.html b/collections/distributed-file-storage/index.html index 75320f09bcd..08fcebeb87f 100644 --- a/collections/distributed-file-storage/index.html +++ b/collections/distributed-file-storage/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Distributed File Storage - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/distributed-file-storage/trends/index.html b/collections/distributed-file-storage/trends/index.html index 92ea222f456..e8732880047 100644 --- a/collections/distributed-file-storage/trends/index.html +++ b/collections/distributed-file-storage/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Distributed File Storage - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/finance/index.html b/collections/finance/index.html index d2301c6a030..15e41e57345 100644 --- a/collections/finance/index.html +++ b/collections/finance/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Finance - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/finance/trends/index.html b/collections/finance/trends/index.html index 180ccefd934..eb34426cc84 100644 --- a/collections/finance/trends/index.html +++ b/collections/finance/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Finance - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/game-engine/index.html b/collections/game-engine/index.html index 26f6cbdfc88..3a0425fa7cd 100644 --- a/collections/game-engine/index.html +++ b/collections/game-engine/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Game Engine - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/game-engine/trends/index.html b/collections/game-engine/trends/index.html index c5ab5f3b413..1b48bda5f69 100644 --- a/collections/game-engine/trends/index.html +++ b/collections/game-engine/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Game Engine - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/github-alternative/index.html b/collections/github-alternative/index.html index 6c3ef8a4eb4..f4f6ada051e 100644 --- a/collections/github-alternative/index.html +++ b/collections/github-alternative/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Github Alternative - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/github-alternative/trends/index.html b/collections/github-alternative/trends/index.html index 31fb146117d..859ef2a7594 100644 --- a/collections/github-alternative/trends/index.html +++ b/collections/github-alternative/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Github Alternative - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/go-database/index.html b/collections/go-database/index.html index 8541e84f18e..900d2f6db14 100644 --- a/collections/go-database/index.html +++ b/collections/go-database/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Go Database - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/go-database/trends/index.html b/collections/go-database/trends/index.html index 6580c38977e..8331157fd66 100644 --- a/collections/go-database/trends/index.html +++ b/collections/go-database/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Go Database - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/go-logging-libraries/index.html b/collections/go-logging-libraries/index.html index 408269fc1aa..a78c42bf96c 100644 --- a/collections/go-logging-libraries/index.html +++ b/collections/go-logging-libraries/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Go Logging Libraries - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/go-logging-libraries/trends/index.html b/collections/go-logging-libraries/trends/index.html index 7ff6aec53a2..94e6ef57eaa 100644 --- a/collections/go-logging-libraries/trends/index.html +++ b/collections/go-logging-libraries/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Go Logging Libraries - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/go-web-frameworks/index.html b/collections/go-web-frameworks/index.html index 245075ff501..9118b11711b 100644 --- a/collections/go-web-frameworks/index.html +++ b/collections/go-web-frameworks/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Go Web Frameworks - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/go-web-frameworks/trends/index.html b/collections/go-web-frameworks/trends/index.html index 9b119227996..ec5bb5d1e2b 100644 --- a/collections/go-web-frameworks/trends/index.html +++ b/collections/go-web-frameworks/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Go Web Frameworks - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/golang-orm/index.html b/collections/golang-orm/index.html index cafdb9cb72e..03e9bf819b9 100644 --- a/collections/golang-orm/index.html +++ b/collections/golang-orm/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Golang ORM - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/golang-orm/trends/index.html b/collections/golang-orm/trends/index.html index 3a618676e7a..37e9d4e49c7 100644 --- a/collections/golang-orm/trends/index.html +++ b/collections/golang-orm/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Golang ORM - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/google-analytics-alternative/index.html b/collections/google-analytics-alternative/index.html index 39a8f6d9b25..213e3ff37a9 100644 --- a/collections/google-analytics-alternative/index.html +++ b/collections/google-analytics-alternative/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Google Analytics Alternative - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/google-analytics-alternative/trends/index.html b/collections/google-analytics-alternative/trends/index.html index 5fbdce982a5..f659310546b 100644 --- a/collections/google-analytics-alternative/trends/index.html +++ b/collections/google-analytics-alternative/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Google Analytics Alternative - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/graph-database/index.html b/collections/graph-database/index.html index 6272b84174e..fc00e6ed1de 100644 --- a/collections/graph-database/index.html +++ b/collections/graph-database/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Graph Database - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/graph-database/trends/index.html b/collections/graph-database/trends/index.html index a9f6c6b9f89..7268e387a69 100644 --- a/collections/graph-database/trends/index.html +++ b/collections/graph-database/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Graph Database - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/graph-rag-knowledge-graph-based-rag/index.html b/collections/graph-rag-knowledge-graph-based-rag/index.html index f8d7edc9a57..331178d3fed 100644 --- a/collections/graph-rag-knowledge-graph-based-rag/index.html +++ b/collections/graph-rag-knowledge-graph-based-rag/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

GraphRAG - Knowledge Graph based RAG - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/graph-rag-knowledge-graph-based-rag/trends/index.html b/collections/graph-rag-knowledge-graph-based-rag/trends/index.html index 5ebe3e8b93f..f0cfe8182a1 100644 --- a/collections/graph-rag-knowledge-graph-based-rag/trends/index.html +++ b/collections/graph-rag-knowledge-graph-based-rag/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

GraphRAG - Knowledge Graph based RAG - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/headless-cms/index.html b/collections/headless-cms/index.html index f60efbe25cb..45b580a6620 100644 --- a/collections/headless-cms/index.html +++ b/collections/headless-cms/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Headless CMS - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/headless-cms/trends/index.html b/collections/headless-cms/trends/index.html index 8f72a1f9670..66ac6436f5d 100644 --- a/collections/headless-cms/trends/index.html +++ b/collections/headless-cms/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Headless CMS - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/hyperledger-besu/index.html b/collections/hyperledger-besu/index.html index 7b37c4602c4..c062362453a 100644 --- a/collections/hyperledger-besu/index.html +++ b/collections/hyperledger-besu/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Hyperledger Besu - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/hyperledger-besu/trends/index.html b/collections/hyperledger-besu/trends/index.html index f5d22c5b080..bbef01422d3 100644 --- a/collections/hyperledger-besu/trends/index.html +++ b/collections/hyperledger-besu/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Hyperledger Besu - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/hyperledger-fabric/index.html b/collections/hyperledger-fabric/index.html index 7a05002dfec..9d725b0691e 100644 --- a/collections/hyperledger-fabric/index.html +++ b/collections/hyperledger-fabric/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Hyperledger Fabric - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/hyperledger-fabric/trends/index.html b/collections/hyperledger-fabric/trends/index.html index 7c707f799d0..7de3bcbbef1 100644 --- a/collections/hyperledger-fabric/trends/index.html +++ b/collections/hyperledger-fabric/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Hyperledger Fabric - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/hyperledger-foundation/index.html b/collections/hyperledger-foundation/index.html index bccfa78e3fc..f8177f9bda1 100644 --- a/collections/hyperledger-foundation/index.html +++ b/collections/hyperledger-foundation/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Hyperledger Foundation - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/hyperledger-foundation/trends/index.html b/collections/hyperledger-foundation/trends/index.html index 1b3eb13fb22..068844b0c9e 100644 --- a/collections/hyperledger-foundation/trends/index.html +++ b/collections/hyperledger-foundation/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Hyperledger Foundation - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/i-os-framework/index.html b/collections/i-os-framework/index.html index 175a5cdf5b1..b14ccd41b32 100644 --- a/collections/i-os-framework/index.html +++ b/collections/i-os-framework/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

iOS Framework - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/i-os-framework/trends/index.html b/collections/i-os-framework/trends/index.html index e39bc8fea33..f2c4b70d4ee 100644 --- a/collections/i-os-framework/trends/index.html +++ b/collections/i-os-framework/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

iOS Framework - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/identity-server/index.html b/collections/identity-server/index.html index d4d2ad1a66d..3b6479df108 100644 --- a/collections/identity-server/index.html +++ b/collections/identity-server/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Identity Server - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/identity-server/trends/index.html b/collections/identity-server/trends/index.html index 1e0d10c74df..62b94205a84 100644 --- a/collections/identity-server/trends/index.html +++ b/collections/identity-server/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Identity Server - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/index.html b/collections/index.html index 1c0c7126938..1ef9b403b6d 100644 --- a/collections/index.html +++ b/collections/index.html @@ -21,13 +21,13 @@ - - + +

Explore Collections

Find insights about the monthly or historical rankings and trends in technical fields with curated repository lists.


​
+ NEW COLLECTION

Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-build-tool/index.html b/collections/javascript-build-tool/index.html index fd0a482125b..203bbbc9274 100644 --- a/collections/javascript-build-tool/index.html +++ b/collections/javascript-build-tool/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Build Tool - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-build-tool/trends/index.html b/collections/javascript-build-tool/trends/index.html index 14e10be0f54..d93f47e8368 100644 --- a/collections/javascript-build-tool/trends/index.html +++ b/collections/javascript-build-tool/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Build Tool - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-charting/index.html b/collections/javascript-charting/index.html index 507f8cbedde..c8dc9ef6508 100644 --- a/collections/javascript-charting/index.html +++ b/collections/javascript-charting/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Charting - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-charting/trends/index.html b/collections/javascript-charting/trends/index.html index 2b15395b7db..f6cbc204914 100644 --- a/collections/javascript-charting/trends/index.html +++ b/collections/javascript-charting/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Charting - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-framework/index.html b/collections/javascript-framework/index.html index 1b60c6d8b45..079f0edae35 100644 --- a/collections/javascript-framework/index.html +++ b/collections/javascript-framework/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Framework - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-framework/trends/index.html b/collections/javascript-framework/trends/index.html index ae240d86120..16c6640fbe2 100644 --- a/collections/javascript-framework/trends/index.html +++ b/collections/javascript-framework/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Framework - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-game-engine/index.html b/collections/javascript-game-engine/index.html index 7987e358ca6..2ff0bbd7c6f 100644 --- a/collections/javascript-game-engine/index.html +++ b/collections/javascript-game-engine/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Game Engine - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-game-engine/trends/index.html b/collections/javascript-game-engine/trends/index.html index 5c79b92e0b0..ea42a86b7e8 100644 --- a/collections/javascript-game-engine/trends/index.html +++ b/collections/javascript-game-engine/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Javascript Game Engine - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-orm/index.html b/collections/javascript-orm/index.html index b5088b2fe24..b41552a0b47 100644 --- a/collections/javascript-orm/index.html +++ b/collections/javascript-orm/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

javascript ORM - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/javascript-orm/trends/index.html b/collections/javascript-orm/trends/index.html index f324618641d..2347d4acc10 100644 --- a/collections/javascript-orm/trends/index.html +++ b/collections/javascript-orm/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

javascript ORM - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/key-value-database/index.html b/collections/key-value-database/index.html index 45a6d5a6217..1ce833e8b97 100644 --- a/collections/key-value-database/index.html +++ b/collections/key-value-database/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Key Value Database - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/key-value-database/trends/index.html b/collections/key-value-database/trends/index.html index 8beb37d818c..2f601a6fea2 100644 --- a/collections/key-value-database/trends/index.html +++ b/collections/key-value-database/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Key Value Database - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/kubernetes-tooling/index.html b/collections/kubernetes-tooling/index.html index 8056a0e8d10..4d8ee54a03f 100644 --- a/collections/kubernetes-tooling/index.html +++ b/collections/kubernetes-tooling/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Kubernetes Tooling - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/kubernetes-tooling/trends/index.html b/collections/kubernetes-tooling/trends/index.html index d1e58571c59..853fa404c4e 100644 --- a/collections/kubernetes-tooling/trends/index.html +++ b/collections/kubernetes-tooling/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Kubernetes Tooling - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/llm-dev-tools/index.html b/collections/llm-dev-tools/index.html index c525da346db..a7300787696 100644 --- a/collections/llm-dev-tools/index.html +++ b/collections/llm-dev-tools/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

LLM DevTools - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/llm-dev-tools/trends/index.html b/collections/llm-dev-tools/trends/index.html index 6992981617a..a39fdf9b225 100644 --- a/collections/llm-dev-tools/trends/index.html +++ b/collections/llm-dev-tools/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

LLM DevTools - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/llm-tools/index.html b/collections/llm-tools/index.html index 5f714fe1dbc..0a288e61b1a 100644 --- a/collections/llm-tools/index.html +++ b/collections/llm-tools/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

LLM Tools - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/llm-tools/trends/index.html b/collections/llm-tools/trends/index.html index 42623f3b24d..54dfd4bb7a0 100644 --- a/collections/llm-tools/trends/index.html +++ b/collections/llm-tools/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

LLM Tools - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/low-code-development-tool/index.html b/collections/low-code-development-tool/index.html index eead3189fc2..fca3352aa61 100644 --- a/collections/low-code-development-tool/index.html +++ b/collections/low-code-development-tool/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Low Code Development Tool - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/low-code-development-tool/trends/index.html b/collections/low-code-development-tool/trends/index.html index cefce29e5f7..84d7c5311e1 100644 --- a/collections/low-code-development-tool/trends/index.html +++ b/collections/low-code-development-tool/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Low Code Development Tool - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/message-and-streaming/index.html b/collections/message-and-streaming/index.html index 3833445b2c1..934282f040c 100644 --- a/collections/message-and-streaming/index.html +++ b/collections/message-and-streaming/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Message and Streaming - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/message-and-streaming/trends/index.html b/collections/message-and-streaming/trends/index.html index 24870735bb5..233c1ccaea7 100644 --- a/collections/message-and-streaming/trends/index.html +++ b/collections/message-and-streaming/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Message and Streaming - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ml-in-rust/index.html b/collections/ml-in-rust/index.html index 92c96458f6d..7130ff62842 100644 --- a/collections/ml-in-rust/index.html +++ b/collections/ml-in-rust/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

ML in Rust - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ml-in-rust/trends/index.html b/collections/ml-in-rust/trends/index.html index 14cdd5b9ffd..26c00404c58 100644 --- a/collections/ml-in-rust/trends/index.html +++ b/collections/ml-in-rust/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

ML in Rust - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ml-ops-tools/index.html b/collections/ml-ops-tools/index.html index 8f92eb4025a..f6d42e7ad3b 100644 --- a/collections/ml-ops-tools/index.html +++ b/collections/ml-ops-tools/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

MLOps Tools - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ml-ops-tools/trends/index.html b/collections/ml-ops-tools/trends/index.html index b3e192340b7..fdda8120db5 100644 --- a/collections/ml-ops-tools/trends/index.html +++ b/collections/ml-ops-tools/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

MLOps Tools - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/modern-data-stack/index.html b/collections/modern-data-stack/index.html index 035b1c65f29..512eeafc8a8 100644 --- a/collections/modern-data-stack/index.html +++ b/collections/modern-data-stack/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Modern Data Stack - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/modern-data-stack/trends/index.html b/collections/modern-data-stack/trends/index.html index e2688cd4960..de5527488c8 100644 --- a/collections/modern-data-stack/trends/index.html +++ b/collections/modern-data-stack/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Modern Data Stack - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/monitoring-tool/index.html b/collections/monitoring-tool/index.html index 0baa46c520c..52287ba38cd 100644 --- a/collections/monitoring-tool/index.html +++ b/collections/monitoring-tool/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Monitoring Tool - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/monitoring-tool/trends/index.html b/collections/monitoring-tool/trends/index.html index 6d7caac2bc0..ed9aa4bd2bf 100644 --- a/collections/monitoring-tool/trends/index.html +++ b/collections/monitoring-tool/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Monitoring Tool - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/networking-for-games/index.html b/collections/networking-for-games/index.html index 00e9fc585d8..982fd25b7eb 100644 --- a/collections/networking-for-games/index.html +++ b/collections/networking-for-games/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Networking for Games - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/networking-for-games/trends/index.html b/collections/networking-for-games/trends/index.html index 0f875d4c3fa..6c489b83fed 100644 --- a/collections/networking-for-games/trends/index.html +++ b/collections/networking-for-games/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Networking for Games - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/open-source-data-catalogs/index.html b/collections/open-source-data-catalogs/index.html index 57cf8c43c88..0f38bf6fb54 100644 --- a/collections/open-source-data-catalogs/index.html +++ b/collections/open-source-data-catalogs/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Open Source Data Catalogs - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/open-source-data-catalogs/trends/index.html b/collections/open-source-data-catalogs/trends/index.html index e34393387b2..c9fe592b1a4 100644 --- a/collections/open-source-data-catalogs/trends/index.html +++ b/collections/open-source-data-catalogs/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Open Source Data Catalogs - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/open-source-database/index.html b/collections/open-source-database/index.html index a22febdd25b..a624dca8324 100644 --- a/collections/open-source-database/index.html +++ b/collections/open-source-database/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Open Source Database - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/open-source-database/trends/index.html b/collections/open-source-database/trends/index.html index 09d8183d97a..cf913fe81b5 100644 --- a/collections/open-source-database/trends/index.html +++ b/collections/open-source-database/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Open Source Database - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/open-source-forum-software/index.html b/collections/open-source-forum-software/index.html index 77b8e4c6d2a..31d754304aa 100644 --- a/collections/open-source-forum-software/index.html +++ b/collections/open-source-forum-software/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Open Source Forum Software - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/open-source-forum-software/trends/index.html b/collections/open-source-forum-software/trends/index.html index 10bf4bc79f6..41dac8a9677 100644 --- a/collections/open-source-forum-software/trends/index.html +++ b/collections/open-source-forum-software/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Open Source Forum Software - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/optimization-solvers/index.html b/collections/optimization-solvers/index.html index afc95088446..fa99490f92a 100644 --- a/collections/optimization-solvers/index.html +++ b/collections/optimization-solvers/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Optimization Solvers - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/optimization-solvers/trends/index.html b/collections/optimization-solvers/trends/index.html index 8217fd19f83..1ba86d65564 100644 --- a/collections/optimization-solvers/trends/index.html +++ b/collections/optimization-solvers/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Optimization Solvers - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/paa-s/index.html b/collections/paa-s/index.html index 324fc41cd52..a68058f3a87 100644 --- a/collections/paa-s/index.html +++ b/collections/paa-s/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

PaaS - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/paa-s/trends/index.html b/collections/paa-s/trends/index.html index f93a8df8c8e..6360b6bb8a3 100644 --- a/collections/paa-s/trends/index.html +++ b/collections/paa-s/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

PaaS - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/password-manager/index.html b/collections/password-manager/index.html index 7982d2d0caf..55a4a777ce6 100644 --- a/collections/password-manager/index.html +++ b/collections/password-manager/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Password Manager - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/password-manager/trends/index.html b/collections/password-manager/trends/index.html index e459bf1a605..4bab9c52525 100644 --- a/collections/password-manager/trends/index.html +++ b/collections/password-manager/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Password Manager - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/programming-language-of-china/index.html b/collections/programming-language-of-china/index.html index 384bb526328..194ac036c9a 100644 --- a/collections/programming-language-of-china/index.html +++ b/collections/programming-language-of-china/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Programming Language of China - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/programming-language-of-china/trends/index.html b/collections/programming-language-of-china/trends/index.html index 4708b749ba4..4ee04e908c9 100644 --- a/collections/programming-language-of-china/trends/index.html +++ b/collections/programming-language-of-china/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Programming Language of China - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/programming-language/index.html b/collections/programming-language/index.html index 5862fac54c7..00300166d90 100644 --- a/collections/programming-language/index.html +++ b/collections/programming-language/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Programming Language - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/programming-language/trends/index.html b/collections/programming-language/trends/index.html index ef4b2f246bb..bf9820b5772 100644 --- a/collections/programming-language/trends/index.html +++ b/collections/programming-language/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Programming Language - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/react-framework/index.html b/collections/react-framework/index.html index d8f407b4082..e062ec8e57d 100644 --- a/collections/react-framework/index.html +++ b/collections/react-framework/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

React Framework - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/react-framework/trends/index.html b/collections/react-framework/trends/index.html index 9323644e4e9..cea44cbe2f5 100644 --- a/collections/react-framework/trends/index.html +++ b/collections/react-framework/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

React Framework - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/reactive-monolith-frameworks/index.html b/collections/reactive-monolith-frameworks/index.html index 45eafa8c759..3a921974436 100644 --- a/collections/reactive-monolith-frameworks/index.html +++ b/collections/reactive-monolith-frameworks/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Reactive Monolith Frameworks - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/reactive-monolith-frameworks/trends/index.html b/collections/reactive-monolith-frameworks/trends/index.html index 2dcaf214f98..7e1a21403c2 100644 --- a/collections/reactive-monolith-frameworks/trends/index.html +++ b/collections/reactive-monolith-frameworks/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Reactive Monolith Frameworks - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/relational-database/index.html b/collections/relational-database/index.html index 941b9333251..0b1948d0b7d 100644 --- a/collections/relational-database/index.html +++ b/collections/relational-database/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Relational Database - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/relational-database/trends/index.html b/collections/relational-database/trends/index.html index 43222763bf5..d878c46012e 100644 --- a/collections/relational-database/trends/index.html +++ b/collections/relational-database/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Relational Database - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/remote-desktop-tool/index.html b/collections/remote-desktop-tool/index.html index 0269f49576e..63783918c27 100644 --- a/collections/remote-desktop-tool/index.html +++ b/collections/remote-desktop-tool/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Remote Desktop Tool - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/remote-desktop-tool/trends/index.html b/collections/remote-desktop-tool/trends/index.html index 01df3b18d1d..9f206c9a5af 100644 --- a/collections/remote-desktop-tool/trends/index.html +++ b/collections/remote-desktop-tool/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Remote Desktop Tool - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/robotics/index.html b/collections/robotics/index.html index a2ccd37f001..b1e2aa6f456 100644 --- a/collections/robotics/index.html +++ b/collections/robotics/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Robotics - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/robotics/trends/index.html b/collections/robotics/trends/index.html index 24d2f1b5fe3..0e33e07adea 100644 --- a/collections/robotics/trends/index.html +++ b/collections/robotics/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Robotics - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/rust-database/index.html b/collections/rust-database/index.html index adaba4cf70c..fb91a594ebb 100644 --- a/collections/rust-database/index.html +++ b/collections/rust-database/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Rust Database - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/rust-database/trends/index.html b/collections/rust-database/trends/index.html index 14b3146d8ed..4bc6fccfa88 100644 --- a/collections/rust-database/trends/index.html +++ b/collections/rust-database/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Rust Database - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/search-engine/index.html b/collections/search-engine/index.html index e46f42f0de9..b0dd323b1f7 100644 --- a/collections/search-engine/index.html +++ b/collections/search-engine/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Search Engine - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/search-engine/trends/index.html b/collections/search-engine/trends/index.html index ba01c5e9a7d..a283593f5d8 100644 --- a/collections/search-engine/trends/index.html +++ b/collections/search-engine/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Search Engine - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/security-tool/index.html b/collections/security-tool/index.html index e284d6aed1f..773171d5198 100644 --- a/collections/security-tool/index.html +++ b/collections/security-tool/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Security Tool - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/security-tool/trends/index.html b/collections/security-tool/trends/index.html index 2fd541a9caa..2c72800e5cf 100644 --- a/collections/security-tool/trends/index.html +++ b/collections/security-tool/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Security Tool - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/segment-alternative/index.html b/collections/segment-alternative/index.html index abb8ab76feb..a99afc667ea 100644 --- a/collections/segment-alternative/index.html +++ b/collections/segment-alternative/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Segment Alternative - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/segment-alternative/trends/index.html b/collections/segment-alternative/trends/index.html index 58451455a0f..52d3ccd98e2 100644 --- a/collections/segment-alternative/trends/index.html +++ b/collections/segment-alternative/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Segment Alternative - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/serverless-framework/index.html b/collections/serverless-framework/index.html index 9a24b6239a8..279744d2231 100644 --- a/collections/serverless-framework/index.html +++ b/collections/serverless-framework/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Serverless Framework - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/serverless-framework/trends/index.html b/collections/serverless-framework/trends/index.html index 208d16f238b..8f8c7adef6c 100644 --- a/collections/serverless-framework/trends/index.html +++ b/collections/serverless-framework/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Serverless Framework - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/slack-alternative/index.html b/collections/slack-alternative/index.html index 15f077a2685..01ab64dc7e6 100644 --- a/collections/slack-alternative/index.html +++ b/collections/slack-alternative/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Slack Alternative - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/slack-alternative/trends/index.html b/collections/slack-alternative/trends/index.html index a779228e94e..f6f4e6285ad 100644 --- a/collections/slack-alternative/trends/index.html +++ b/collections/slack-alternative/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Slack Alternative - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/stable-diffusion-ecosystem/index.html b/collections/stable-diffusion-ecosystem/index.html index ebf6bb3157d..7e932833f98 100644 --- a/collections/stable-diffusion-ecosystem/index.html +++ b/collections/stable-diffusion-ecosystem/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Stable Diffusion Ecosystem - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/stable-diffusion-ecosystem/trends/index.html b/collections/stable-diffusion-ecosystem/trends/index.html index 7d0f21b06f6..d6e3de7a1d3 100644 --- a/collections/stable-diffusion-ecosystem/trends/index.html +++ b/collections/stable-diffusion-ecosystem/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Stable Diffusion Ecosystem - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/static-site-generator/index.html b/collections/static-site-generator/index.html index bab83a060a9..8532b7015de 100644 --- a/collections/static-site-generator/index.html +++ b/collections/static-site-generator/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Static Site Generator - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/static-site-generator/trends/index.html b/collections/static-site-generator/trends/index.html index 9a823ca277d..eea2948ea90 100644 --- a/collections/static-site-generator/trends/index.html +++ b/collections/static-site-generator/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Static Site Generator - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/terminal/index.html b/collections/terminal/index.html index ee0ad1282d2..196657b3d67 100644 --- a/collections/terminal/index.html +++ b/collections/terminal/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Terminal - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/terminal/trends/index.html b/collections/terminal/trends/index.html index 6faf4d0675e..512f57ca090 100644 --- a/collections/terminal/trends/index.html +++ b/collections/terminal/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Terminal - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/testing-tools/index.html b/collections/testing-tools/index.html index b9fa650f3a2..598d91f8b57 100644 --- a/collections/testing-tools/index.html +++ b/collections/testing-tools/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Testing Tools - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/testing-tools/trends/index.html b/collections/testing-tools/trends/index.html index f28f3da2f20..613d00f7db8 100644 --- a/collections/testing-tools/trends/index.html +++ b/collections/testing-tools/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Testing Tools - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/text-editor/index.html b/collections/text-editor/index.html index 79d53ce321b..72cb72f7a96 100644 --- a/collections/text-editor/index.html +++ b/collections/text-editor/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Text Editor - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/text-editor/trends/index.html b/collections/text-editor/trends/index.html index e8c0a98b871..102f63ec16a 100644 --- a/collections/text-editor/trends/index.html +++ b/collections/text-editor/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Text Editor - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/time-series-database/index.html b/collections/time-series-database/index.html index fdc4ac10a3e..1fc59a9c2ff 100644 --- a/collections/time-series-database/index.html +++ b/collections/time-series-database/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Time Series Database - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/time-series-database/trends/index.html b/collections/time-series-database/trends/index.html index 1b0a0fc2fc9..94a243d7e70 100644 --- a/collections/time-series-database/trends/index.html +++ b/collections/time-series-database/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Time Series Database - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/tui-framework/index.html b/collections/tui-framework/index.html index 6fea6ef1c9b..251626e2e4f 100644 --- a/collections/tui-framework/index.html +++ b/collections/tui-framework/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

TUI Framework - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/tui-framework/trends/index.html b/collections/tui-framework/trends/index.html index f30b7a2db70..672c786087c 100644 --- a/collections/tui-framework/trends/index.html +++ b/collections/tui-framework/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

TUI Framework - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ui-framework-and-u-ikit/index.html b/collections/ui-framework-and-u-ikit/index.html index 8f73889ae8c..fd6e2639fae 100644 --- a/collections/ui-framework-and-u-ikit/index.html +++ b/collections/ui-framework-and-u-ikit/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

UI Framework and UIkit - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/ui-framework-and-u-ikit/trends/index.html b/collections/ui-framework-and-u-ikit/trends/index.html index aaa1e8bf8c6..dcff80ab36c 100644 --- a/collections/ui-framework-and-u-ikit/trends/index.html +++ b/collections/ui-framework-and-u-ikit/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

UI Framework and UIkit - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/vector-database-vector-store/index.html b/collections/vector-database-vector-store/index.html index 00b2bb17719..cf337c68d0e 100644 --- a/collections/vector-database-vector-store/index.html +++ b/collections/vector-database-vector-store/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Vector Database & Vector Store - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/vector-database-vector-store/trends/index.html b/collections/vector-database-vector-store/trends/index.html index 4597a7fba54..668e1cb6050 100644 --- a/collections/vector-database-vector-store/trends/index.html +++ b/collections/vector-database-vector-store/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Vector Database & Vector Store - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/vector-search-engine/index.html b/collections/vector-search-engine/index.html index 238214a1f07..f8cc49b617d 100644 --- a/collections/vector-search-engine/index.html +++ b/collections/vector-search-engine/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Vector Search Engine - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/vector-search-engine/trends/index.html b/collections/vector-search-engine/trends/index.html index 2da24c07ace..9ecac1f56a2 100644 --- a/collections/vector-search-engine/trends/index.html +++ b/collections/vector-search-engine/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Vector Search Engine - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/virtual-reality/index.html b/collections/virtual-reality/index.html index 2451e1b5fa1..1acb9f784e5 100644 --- a/collections/virtual-reality/index.html +++ b/collections/virtual-reality/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Virtual Reality - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/virtual-reality/trends/index.html b/collections/virtual-reality/trends/index.html index d9c8a81d6c6..248760ad640 100644 --- a/collections/virtual-reality/trends/index.html +++ b/collections/virtual-reality/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Virtual Reality - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-assembly-runtime/index.html b/collections/web-assembly-runtime/index.html index 991c6035ef7..a8c58548fa3 100644 --- a/collections/web-assembly-runtime/index.html +++ b/collections/web-assembly-runtime/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

WebAssembly Runtime - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-assembly-runtime/trends/index.html b/collections/web-assembly-runtime/trends/index.html index 90e993d202c..98b63165af5 100644 --- a/collections/web-assembly-runtime/trends/index.html +++ b/collections/web-assembly-runtime/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

WebAssembly Runtime - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-framework/index.html b/collections/web-framework/index.html index a2cde0748ef..c122a3b2e78 100644 --- a/collections/web-framework/index.html +++ b/collections/web-framework/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Web Framework - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-framework/trends/index.html b/collections/web-framework/trends/index.html index 87346230994..1844564f38b 100644 --- a/collections/web-framework/trends/index.html +++ b/collections/web-framework/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Web Framework - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-rtc/index.html b/collections/web-rtc/index.html index b1ceb6e6e72..669460bea94 100644 --- a/collections/web-rtc/index.html +++ b/collections/web-rtc/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

WebRTC - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-rtc/trends/index.html b/collections/web-rtc/trends/index.html index 3f55701d4eb..facab47a63a 100644 --- a/collections/web-rtc/trends/index.html +++ b/collections/web-rtc/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

WebRTC - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-scanner/index.html b/collections/web-scanner/index.html index 3e76f47b0ea..a7b66ab8028 100644 --- a/collections/web-scanner/index.html +++ b/collections/web-scanner/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Web Scanner - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web-scanner/trends/index.html b/collections/web-scanner/trends/index.html index bac0d247a22..1b0fba73431 100644 --- a/collections/web-scanner/trends/index.html +++ b/collections/web-scanner/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Web Scanner - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web3/index.html b/collections/web3/index.html index 03d3bdc1967..a7a6143653c 100644 --- a/collections/web3/index.html +++ b/collections/web3/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Web3 - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/web3/trends/index.html b/collections/web3/trends/index.html index 6017628bdab..68b6a432278 100644 --- a/collections/web3/trends/index.html +++ b/collections/web3/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Web3 - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/workflow-scheduler/index.html b/collections/workflow-scheduler/index.html index 2c8a59f52bd..b3598474a2c 100644 --- a/collections/workflow-scheduler/index.html +++ b/collections/workflow-scheduler/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Workflow Scheduler - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/workflow-scheduler/trends/index.html b/collections/workflow-scheduler/trends/index.html index 28b0b2d8329..a7e651af33d 100644 --- a/collections/workflow-scheduler/trends/index.html +++ b/collections/workflow-scheduler/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Workflow Scheduler - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/wysiwyg-editor/index.html b/collections/wysiwyg-editor/index.html index 055bd9b73e4..53ad0a4ac81 100644 --- a/collections/wysiwyg-editor/index.html +++ b/collections/wysiwyg-editor/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

WYSIWYG Editor - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/wysiwyg-editor/trends/index.html b/collections/wysiwyg-editor/trends/index.html index 7064b98fdae..25c1ef81d72 100644 --- a/collections/wysiwyg-editor/trends/index.html +++ b/collections/wysiwyg-editor/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

WYSIWYG Editor - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/x-as-code/index.html b/collections/x-as-code/index.html index a407a30aae0..20727d0d9bf 100644 --- a/collections/x-as-code/index.html +++ b/collections/x-as-code/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

X as Code - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/x-as-code/trends/index.html b/collections/x-as-code/trends/index.html index b9172e3ed4a..3ad2525547b 100644 --- a/collections/x-as-code/trends/index.html +++ b/collections/x-as-code/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

X as Code - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/zapier-alternatives/index.html b/collections/zapier-alternatives/index.html index bb0b48d035a..54e398aab8f 100644 --- a/collections/zapier-alternatives/index.html +++ b/collections/zapier-alternatives/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Zapier Alternatives - Ranking

Last 28 days / Monthly ranking of repos in this collection by stars, pull requests, issues. Historical Ranking by Popularity.

Last 28 Days / Month-to-Month Ranking

The following table ranks repositories using three metrics: stars, pull requests, and issues. The table compares last 28 days or the most recent two months of data and indicates whether repositories are moving up or down the rankings.


Monthly Ranking - Stars

RepositoryStarsTotal

Year-to-year Ranking

The following pipeline chart shows how repo rankings have changed year to year since 2011. Repos are ranked by stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/collections/zapier-alternatives/trends/index.html b/collections/zapier-alternatives/trends/index.html index bc74ea1fb2d..f2c9c774c96 100644 --- a/collections/zapier-alternatives/trends/index.html +++ b/collections/zapier-alternatives/trends/index.html @@ -21,13 +21,13 @@ - - + +
Edit This Collection

Zapier Alternatives - Popularity Trends

The following dynamic charts show the popularity trends of GitHub repositories in this collection. You can display the popularity of repositories based on the number of stars, pull requests, pull request creators, and issues.

Bar Chart Race

An animated bar chart visualizes the annual total growth of each repository since 2011. You can display the growth of repositories based on the number of stars, pull requests, pul request creators, and issues.


Historical Trending of Top 10

A line chart displays the current top 10 repositories and how their ranking have changed since 2011. You can display rankings based on the number of stars, pull requests, pull request creators, and issues.


Wonder how OSS Insight works?

logo

How do we implement OSS Insight ?

Blog: 10 min read

read more
logo

Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

Tutorial: 10 min read

read more
logo

Join a Workshop to Setup a Mini OSS Insight

Tutorial: 25 min

read more

Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
#OSSInsightΒ #TiDBCloud

Star
- - + + \ No newline at end of file diff --git a/compare/index.html b/compare/index.html index af3ff6367af..3b3673e68a3 100644 --- a/compare/index.html +++ b/compare/index.html @@ -21,13 +21,13 @@ - - + +
- - + + \ No newline at end of file diff --git a/docs/about/index.html b/docs/about/index.html index 55300e97203..0e995365568 100644 --- a/docs/about/index.html +++ b/docs/about/index.html @@ -21,14 +21,14 @@ - - + +

About OSS Insight πŸ‘οΈ

GitHub Data Explorerβ€’Rankingsβ€’Developer Analyticsβ€’Repository Analyticsβ€’Collectionsβ€’Workshopβ€’Blogsβ€’Twitter

OSS Insight is a powerful tool that provides comprehensive, valuable, and trending insights into the open source world by analyzing 5+ billion rows of GitHub events data.

OSS Insight's GitHub Data Explorer provides a new way to explore GitHub data. Simply ask your question in natural language and GitHub Data Explorer will generate SQL, query the data, and present the results visually.

OSS Insight also provides in-depth analysis of individual GitHub repositories and developers, as well as the ability to compare two repositories using the same metrics.


Feature 1: GPT-Powered Data Exploration​

GitHub Data Explorer provides a new way to discover trends and insights into 5+ billion rows of GitHub data. Simply ask your question in natural language and GitHub Data Explorer will generate SQL, query the data, and present the results visually. It's built with Chat2Query, a GPT-powered SQL generator in TiDB Cloud.

Examples:


Feature 2: Technical Fields Analytics​


Feature 3: Developer Analytics​

Insights about developer productivity, work cadence, and collaboration from developers' contribution behavior.

  • Basic:
    • Stars, behavior, most used languages,and contribution trends
    • Code (commits, pull requests, pull request size and code line changes), code reviews, and issues
  • Advanced:
    • Contribution time distribution for all kind of contribution activities
    • Monthly stats about contribution activities in all public repositories
Developer Analytics

Feature 4: Repository Analytics​

Insights about the code update frequency & degree of popularity from repository’s status.

  • Basic:

    • star, fork, issues, commits, pull requests, contributors, programming languages, lines of code modified
    • Historical Trends of these metrics
    • Time Cost of issues, pull requests
  • Advanced:

    • Geographical Distribution of stargazers, issue creators, pull requests creators
    • Company Distribution of stargazers, issue creators, pull requests creators
Repository Analytics

Examples:


Feature 5: Compare Projects​

Compare two projects using the repo metrics mentioned in Repository Analytics.

Examples:


Sponsors​

tidb cloud logo
- - + + \ No newline at end of file diff --git a/docs/api/collection-repo-ranking-by-issues/index.html b/docs/api/collection-repo-ranking-by-issues/index.html index ed7ab4bd09c..ec0e006a705 100644 --- a/docs/api/collection-repo-ranking-by-issues/index.html +++ b/docs/api/collection-repo-ranking-by-issues/index.html @@ -21,13 +21,13 @@ - - + +

Repository ranking by issues​

Rank the GitHub repositories in the specified collection according to the number of issues.

Path Parameters
    collection_id number required

    The ID of collection

Query Parameters
    period string

    Possible values: [past_28_days, past_month]

    Default value: past_28_days

    The period of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • repo_id string

    The repository ID

    repo_name string

    The repository name

    current_period_growth string

    issues growth in the current period (past 28 days / current month)

    past_period_growth string

    issues growth in the past period (The 28 days before the past 28 days / past month)

    growth_pop string

    The period-over-period growth of issues

    rank_pop string

    The period-over-period rank changes of issues

    total string

    The current total issues of repository

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/collection-repo-ranking-by-prs/index.html b/docs/api/collection-repo-ranking-by-prs/index.html index 8ac8a43c604..c78065fedc1 100644 --- a/docs/api/collection-repo-ranking-by-prs/index.html +++ b/docs/api/collection-repo-ranking-by-prs/index.html @@ -21,13 +21,13 @@ - - + +

Repository ranking by prs​

Rank the GitHub repositories in the specified collection according to the number of pull requests.

Path Parameters
    collection_id number required

    The ID of collection

Query Parameters
    period string

    Possible values: [past_28_days, past_month]

    Default value: past_28_days

    The period of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • repo_id string

    The repository ID

    repo_name string

    The repository name

    current_period_growth string

    prs growth in the current period (past 28 days / current month)

    past_period_growth string

    prs growth in the past period (The 28 days before the past 28 days / past month)

    growth_pop string

    The period-over-period growth of prs

    rank_pop string

    The period-over-period rank changes of prs

    total string

    The current total prs of repository

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/collection-repo-ranking-by-stars/index.html b/docs/api/collection-repo-ranking-by-stars/index.html index e40859e74db..c7dc38c59be 100644 --- a/docs/api/collection-repo-ranking-by-stars/index.html +++ b/docs/api/collection-repo-ranking-by-stars/index.html @@ -21,13 +21,13 @@ - - + +

Repository ranking by stars​

Rank the GitHub repositories in the specified collection according to the number of stars.

Path Parameters
    collection_id number required

    The ID of collection

Query Parameters
    period string

    Possible values: [past_28_days, past_month]

    Default value: past_28_days

    The period of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • repo_id string

    The repository ID

    repo_name string

    The repository name

    current_period_growth string

    Stars growth in the current period (past 28 days / current month)

    past_period_growth string

    Stars growth in the past period (The 28 days before the past 28 days / past month)

    growth_pop string

    The period-over-period growth of stars

    rank_pop string

    The period-over-period rank changes of stars

    total string

    The current total stars of repository

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/index.html b/docs/api/index.html index 621851dee47..d33e9c5fee7 100644 --- a/docs/api/index.html +++ b/docs/api/index.html @@ -21,14 +21,14 @@ - - + +
Version: v1beta

OSSInsight Public API

OSSInsight Public APIs (beta) provide a convenient way to access insight data for open source projects on GitHub, supplementing the existing GitHub API.

It provides data query in different dimensions, including:

Usage​

The OSSInsight Public API is designed to follow the OpenAPI specification and can be accessed by initiating HTTP requests using the command line curl or web request libraries in different programming languages.

Base URL​

All API requests are based on the following URL:

https://api.ossinsight.io/v1

Authentication​

No authentication is required for beta version of public APIs, but there are rate limits for API requests.

Note: We will add authentication way for larger API requests in future releases.

Rate Limit​

For each IP address, the rate limit allows for up to 600 requests per hour, which can be checked by the following fields in the Response Header to see the current usage:

x-ratelimit-limit: 600
x-ratelimit-remaining: 599

In addition, we have also set up a global rate limit of up to 1000 requests per minute, which can be checked by the following fields in the Response Header to see the current usage:

x-ratelimit-limit-minute: 1000
x-ratelimit-remaining-minute: 97

Example​

For example, if you want to know what countries the stargazers in the pingcap/tidb repository are located in, you can make a request using the curl command as follows:

curl https://api.ossinsight.io/v1/repos/pingcap/tidb/stargazers/countries
Example Response
{
"type": "sql_endpoint",
"data": {
"columns": [
{
"col": "country_or_area",
"data_type": "CHAR",
"nullable": true
},
{
"col": "count",
"data_type": "BIGINT",
"nullable": true
},
{
"col": "percentage",
"data_type": "DECIMAL",
"nullable": true
}
],
"rows": [
{
"count": "9183",
"country_or_area": "CN",
"percentage": "0.5936"
},
{
"count": "1542",
"country_or_area": "US",
"percentage": "0.0997"
},
{
"count": "471",
"country_or_area": "JP",
"percentage": "0.0304"
}
],
"result": {
"code": 200,
"message": "Query OK!",
"start_ms": 1690351487809,
"end_ms": 1690351487930,
"latency": "121ms",
"row_count": 132,
"row_affect": 0,
"limit": 300,
"databases": [
"gharchive_dev"
]
}
}
}

Request New API​

If the API in the documentation does not meet your query requirements, please contact us as follows:

- - + + \ No newline at end of file diff --git a/docs/api/issue-creators-history/index.html b/docs/api/issue-creators-history/index.html index 8d8af2f4c7b..ba359726581 100644 --- a/docs/api/issue-creators-history/index.html +++ b/docs/api/issue-creators-history/index.html @@ -21,13 +21,13 @@ - - + +

Issue creators history​

Querying the historical trend of the number of issue creators in a given repository.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    per string

    Possible values: [day, week, month]

    Default value: month

    The time interval of the data points.

    from string

    Default value: 2000-01-01

    The start date of the time range.

    to string

    Default value: 2099-01-01

    The end date of the time range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • date string

    The date of the data point

    issue_creators string

    The number of issue creators on the date point

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-collections/index.html b/docs/api/list-collections/index.html index 289e25a3327..8f35e957c55 100644 --- a/docs/api/list-collections/index.html +++ b/docs/api/list-collections/index.html @@ -21,13 +21,13 @@ - - + +

List collections​

List collections.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • repo_id string

    Repository ID

    repo_name string

    Repository name

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-countries-of-issue-creators/index.html b/docs/api/list-countries-of-issue-creators/index.html index 4be23c1fb79..20ea1d7e1e0 100644 --- a/docs/api/list-countries-of-issue-creators/index.html +++ b/docs/api/list-countries-of-issue-creators/index.html @@ -21,8 +21,8 @@ - - + +
@@ -30,7 +30,7 @@ In the overall data, about 3.5% of GitHub users provided valid country/region information.

Note: By default, the API does not count users without valid country/region information. If you need to count these users, you can set the exclude_unknown parameter to false.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    exclude_unknown boolean

    Default value: true

    Whether to exclude issue creators with unknown country/region information

    from string

    Default value: 2000-01-01

    The start date of the range.

    to string

    Default value: 2099-01-01

    The end date of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • country_code string

    Country/region code

    issue_creators string

    Number of issue creators from the country/region

    percentage string

    Percentage of issue creators from the country/region

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-countries-of-pr-creators/index.html b/docs/api/list-countries-of-pr-creators/index.html index aa4f3b42141..cd696ae3130 100644 --- a/docs/api/list-countries-of-pr-creators/index.html +++ b/docs/api/list-countries-of-pr-creators/index.html @@ -21,8 +21,8 @@ - - + +
@@ -30,7 +30,7 @@ In the overall data, about 3.5% of GitHub users provided valid country/region information.

Note: By default, the API does not count users without valid country/region information. If you need to count these users, you can set the exclude_unknown parameter to false.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    exclude_unknown boolean

    Default value: true

    Whether to exclude issue creators with unknown country/region information

    from string

    Default value: 2000-01-01

    The start date of the range.

    to string

    Default value: 2099-01-01

    The end date of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • country_code string

    Country/region code

    percentage string

    Percentage of pull request creators from the country/region

    pull_request_creators string

    Number of pull request creators from the country/region

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-countries-of-stargazers/index.html b/docs/api/list-countries-of-stargazers/index.html index 4ab51b1c063..cf369f68506 100644 --- a/docs/api/list-countries-of-stargazers/index.html +++ b/docs/api/list-countries-of-stargazers/index.html @@ -21,8 +21,8 @@ - - + +
@@ -30,7 +30,7 @@ In the overall data, about 3.5% of GitHub users provided valid country/region information.

Note: By default, the API does not count users without valid country/region information. If you need to count these users, you can set the exclude_unknown parameter to false.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    exclude_unknown boolean

    Default value: true

    Whether to exclude issue creators with unknown country/region information

    from string

    Default value: 2000-01-01

    The start date of the range.

    to string

    Default value: 2099-01-01

    The end date of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • country_code string

    Country/region code

    stargazers string

    Number of stargazers from the country/region

    percentage string

    Percentage of stargazers from the country/region

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-hot-collections/index.html b/docs/api/list-hot-collections/index.html index e837171bae4..a27a2e05864 100644 --- a/docs/api/list-hot-collections/index.html +++ b/docs/api/list-hot-collections/index.html @@ -21,13 +21,13 @@ - - + +

List hot collections​

List hot collections with top repositories of the collection.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • id string

    Collection ID

    name string

    Collection name

    repos string

    The number of repositories in the collection

    repo_id string

    Repository ID

    repo_name string

    Repository name

    repo_current_period_rank string

    The rank of the repository in the collection in the current period

    repo_past_period_rank string

    The rank of the repository in the collection in the past period

    repo_rank_changes string

    The rank changes of the repository in the collection

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-issue-creators/index.html b/docs/api/list-issue-creators/index.html index f6dabb731c4..267db124e0d 100644 --- a/docs/api/list-issue-creators/index.html +++ b/docs/api/list-issue-creators/index.html @@ -21,13 +21,13 @@ - - + +

List issue creators​

Querying the issue creators for a given repository.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    sort string

    Possible values: [issues, issues-desc, first_issue_opened_at, first_issue_opened_at-desc, login]

    Default value: issues-desc

    Specify the field by which to sort the issue creators list (values with a -desc suffix indicate descending sorting)

    exclude_bots boolean

    Default value: true

    Whether to exclude robot accounts (includes GitHub App and normal users whose username matches the pattern, for example: ti-chi-bot).

    page integer

    Default value: 1

    Page number of the results to fetch.

    page_size integer

    Default value: 30

    The number of results per page (max 100).

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • id string

    The ID of the issue creator

    login string

    The login (username) of the issue creator

    name string

    The name of the issue creator

    issues string

    The number of issues created by the issue creator

    first_issue_opened_at string

    The date of the first issue created by the issue creator

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-organizations-of-issue-creators/index.html b/docs/api/list-organizations-of-issue-creators/index.html index d31a4912976..a26250c96b6 100644 --- a/docs/api/list-organizations-of-issue-creators/index.html +++ b/docs/api/list-organizations-of-issue-creators/index.html @@ -21,8 +21,8 @@ - - + +
@@ -30,7 +30,7 @@ In the overall data, about 5.62% of GitHub users provided valid organization information.

Note: By default, the API does not count users without valid organization information. If you need to count these users, you can set the exclude_unknown parameter to false.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    exclude_unknown boolean

    Default value: true

    Whether to exclude issue creators with unknown organization information

    from string

    Default value: 2000-01-01

    The start date of the range.

    to string

    Default value: 2099-01-01

    The end date of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • issue_creators string

    Number of issue creators from the organization

    org_name string

    Name of the organization

    percentage string

    Percentage of issue creators from the organization

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-organizations-of-pr-creators/index.html b/docs/api/list-organizations-of-pr-creators/index.html index 81e490289f2..3b284d433b5 100644 --- a/docs/api/list-organizations-of-pr-creators/index.html +++ b/docs/api/list-organizations-of-pr-creators/index.html @@ -21,8 +21,8 @@ - - + +
@@ -30,7 +30,7 @@ In the overall data, about 5.62% of GitHub users has valid organization information.

Note: By default, the API does not count users without valid organization information. If you need to count these users, you can set the exclude_unknown parameter to false.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    exclude_unknown boolean

    Default value: true

    Whether to exclude PR creators with unknown organization information

    from string

    Default value: 2000-01-01

    The start date of the range.

    to string

    Default value: 2099-01-01

    The end date of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • org_name string

    Name of the organization

    percentage string

    Percentage of pull request creators from the organization

    pull_request_creators string

    Number of pull request creators from the organization

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-organizations-of-stargazers/index.html b/docs/api/list-organizations-of-stargazers/index.html index 15e36ff8396..3455b04c9a3 100644 --- a/docs/api/list-organizations-of-stargazers/index.html +++ b/docs/api/list-organizations-of-stargazers/index.html @@ -21,8 +21,8 @@ - - + +
@@ -30,7 +30,7 @@ In the overall data, about 5.62% of GitHub users provided valid organization information.

Note: By default, the API does not count users without valid organization information. If you need to count these users, you can set the exclude_unknown parameter to false.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    exclude_unknown boolean

    Default value: true

    Whether to exclude stargazers with unknown organization information

    from string

    Default value: 2000-01-01

    The start date of the range.

    to string

    Default value: 2099-01-01

    The end date of the range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • org_name string

    Name of the organization

    percentage string

    Percentage of stargazers from the organization

    stargazers string

    Number of stargazers from the organization

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-pull-request-creators/index.html b/docs/api/list-pull-request-creators/index.html index 8df6d457dfe..109d0bd1864 100644 --- a/docs/api/list-pull-request-creators/index.html +++ b/docs/api/list-pull-request-creators/index.html @@ -21,13 +21,13 @@ - - + +

List pull request creators​

Querying the pull request creators list in a given repository.

This API provides multiple ways to sort the query results, for example:

  • sort=prs-desc (Default): Sorted in descending order based on prs field (the number of PRs they have contributed), meaning that the contributor with the most PRs is at the top.
  • sort=first_pr_merged_at-desc: Sorted in descending order based on first_pr_merged_at field (the time of their first merged PR), which means you can got a list of new code contributors of the repository.
Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    sort string

    Possible values: [login, prs, prs-desc, first_pr_opened_at, first_pr_opened_at-desc, first_pr_merged_at, first_pr_merged_at-desc]

    Default value: prs-desc

    Specify the field by which to sort the pull request creators list (values with a -desc suffix indicate descending sorting)

    exclude_bots boolean

    Default value: true

    Whether to exclude robot accounts (includes GitHub App and normal users whose username matches the pattern, for example: ti-chi-bot).

    page integer

    Default value: 1

    Page number of the results to fetch.

    page_size integer

    Default value: 30

    The number of results per page (max 100).

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • id string

    The ID of the pull request creator

    login string

    The login (username) of the pull request creator

    name string

    The name of the pull request creator

    prs string

    The number of pull requests created by the pull request creator

    first_pr_opened_at string

    The date of the first pull request created by the pull request creator

    first_pr_merged_at string

    The date of the first merged pull request be merged into the repository

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-repos-of-collection/index.html b/docs/api/list-repos-of-collection/index.html index 3571297ab27..7cdefb20b9e 100644 --- a/docs/api/list-repos-of-collection/index.html +++ b/docs/api/list-repos-of-collection/index.html @@ -21,13 +21,13 @@ - - + +

List collection repositories​

List the repositories of collection.

Path Parameters
    collection_id number required

    The ID of collection

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • repo_id string

    Repository ID

    repo_name string

    Repository name

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/list-trending-repos/index.html b/docs/api/list-trending-repos/index.html index 44940671132..b1152c9a827 100644 --- a/docs/api/list-trending-repos/index.html +++ b/docs/api/list-trending-repos/index.html @@ -21,13 +21,13 @@ - - + +

Trending repos is an open source alternative to GitHub trends, which showcases recently popular open source projects in the GitHub community.

Note

Please URI encode the requested parameters, e.g. C++ needs to be encoded as C%2B%2B.

☁️ Daily run on TiDB Cloud, analyze upon dataset that has over 6 billion GitHub events.

Query Parameters
    period string

    Possible values: [past_24_hours, past_week, past_month, past_3_months]

    Default value: past_24_hours

    Specify the period of time to calculate trending repos.

    language string

    Possible values: [All, JavaScript, Java, Python, PHP, C++, C#, TypeScript, Shell, C, Ruby, Rust, Go, Kotlin, HCL, PowerShell, CMake, Groovy, PLpgSQL, TSQL, Dart, Swift, HTML, CSS, Elixir, Haskell, Solidity, Assembly, R, Scala, Julia, Lua, Clojure, Erlang, Common Lisp, Emacs Lisp, OCaml, MATLAB, Objective-C, Perl, Fortran]

    Default value: All

    Specify using which programming language to filter trending repos. If not specified, all languages will be included.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • repo_id string

    ID of the repo

    repo_name string

    Name of the repo

    primary_language string

    Primary programing language used by the repo

    description string

    Description of the repo

    stars string

    Number of stars in the period

    forks string

    Number of forks in the period

    pull_requests string

    Number of pull requests in the period

    pushes string

    Number of pushes in the period

    total_score string

    Total score of the repo

    contributor_logins string

    Comma separated list of active contributor logins

    collection_names string

    Comma separated list of collection names

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/pull-request-creators-history/index.html b/docs/api/pull-request-creators-history/index.html index 1498dc0fe91..570d3afef45 100644 --- a/docs/api/pull-request-creators-history/index.html +++ b/docs/api/pull-request-creators-history/index.html @@ -21,13 +21,13 @@ - - + +

Pull request creators history​

Querying the historical trend of the number of pull request creators in a given repository.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    per string

    Possible values: [day, week, month]

    Default value: month

    The time interval of the data points.

    from string

    Default value: 2000-01-01

    The start date of the time range.

    to string

    Default value: 2099-01-01

    The end date of the time range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • date string

    The date of the data point

    pull_request_creators string

    The cumulative number of pull request creators

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/api/showcase/index.html b/docs/api/showcase/index.html index 1e0a35bfbcd..fce8f01dab4 100644 --- a/docs/api/showcase/index.html +++ b/docs/api/showcase/index.html @@ -21,13 +21,13 @@ - - + +
- - + + \ No newline at end of file diff --git a/docs/api/stargazers-history/index.html b/docs/api/stargazers-history/index.html index 63e58543cf4..1348c1b75d0 100644 --- a/docs/api/stargazers-history/index.html +++ b/docs/api/stargazers-history/index.html @@ -21,13 +21,13 @@ - - + +

Stargazers history​

Querying the historical trend of the number of stargazers in a given repository.

Path Parameters
    owner string required

    The owner of the repo.

    Example: pingcap
    repo string required

    The name of the repo.

    Example: tidb
Query Parameters
    per string

    Possible values: [day, week, month]

    Default value: month

    The time interval of the data points.

    from string

    Default value: 2000-01-01

    The start date of the time range.

    to string

    Default value: 2099-01-01

    The end date of the time range.

Responses

Default Response


Schema
    type string required

    Possible values: [sql_endpoint]

    The type of the endpoint.

    data object required
    columns object[] required
  • Array [
  • col string required

    The name of the column in the query result.

    data_type string required

    Possible values: [CHAR, BIGINT, DECIMAL, INT, UNSIGNED BIGINT, TINYINT, TIMESTAMP, TEXT, VARCHAR, DATETIME, DOUBLE, FLOAT, DATE, TIME, YEAR, MEDIUMINT, SMALLINT, BIT, BINARY, VARBINARY, JSON, ENUM, SET, TINYTEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB]

    The data type of the column.

    nullable boolean required

    Whether the column is nullable.

  • ]
  • rows object[] required
  • Array [
  • date string

    The date of the data point

    stargazers string

    The cumulative number of stargazers

  • ]
  • result object required
    code number

    The code of the response.

    message string

    The message of the response.

    start_ms number

    The start time of the query in milliseconds.

    end_ms number

    The end time of the query in milliseconds.

    latency string

    The latency of the query.

    row_count number

    The number of rows in the query result.

    row_affect number

    The number of rows affected by the query.

    limit number

    The maximum number of rows in the query result.

    databases string[]

    The databases used in the query.

    property name* any
Loading...
- - + + \ No newline at end of file diff --git a/docs/faq/index.html b/docs/faq/index.html index 23b40af7287..5f4b60d7008 100644 --- a/docs/faq/index.html +++ b/docs/faq/index.html @@ -21,13 +21,13 @@ - - + +

FAQ

Where does these data come from?​

Why the stars(or other metrics) on this site is different from that on GitHub?​

5 reasons:

  • GitHub /events api only publish WatchEvent(this means star), there is no UnWatchEvent;
  • GitHub would lost data if there services were down;
  • GitHub repo has switched between private and public;
  • The repo data had issues, which were manually fixed by GitHub;
  • The GitHub user login or repo name has changed;
- - + + \ No newline at end of file diff --git a/docs/workshop/index.html b/docs/workshop/index.html index ccf2c914832..23547656bc7 100644 --- a/docs/workshop/index.html +++ b/docs/workshop/index.html @@ -21,13 +21,13 @@ - - + +

Overview

Welcome to the OSS Insight workshop. Here, you can:

  1. Learn a new MySQL-Compatible but scalable and built-in analytical engine database;
  2. Build interesting small applications.

In addition, you can also get a FREE quota for database usage FOREVER.

- - + + \ No newline at end of file diff --git a/docs/workshop/ossinsight-lite/advanced-features/index.html b/docs/workshop/ossinsight-lite/advanced-features/index.html index 4f4cf5ee6ab..ef3f3e4528b 100644 --- a/docs/workshop/ossinsight-lite/advanced-features/index.html +++ b/docs/workshop/ossinsight-lite/advanced-features/index.html @@ -21,8 +21,8 @@ - - + +
@@ -30,7 +30,7 @@
  • Click on Generate new token(classic) button.
  • Enter a suitable description for the token, e.g., "Repo Tracker Workshop".
  • For public repositories, leave all the scopes unchecked (you only need basic read access). If you want to sync data from your private repositories as well, check the "repo" scope.
  • Click Generate token at the bottom of the page.
  • Make sure to copy the generated token as you won't be able to see it again. Save it securely, as you will need it later.
  • - - + + \ No newline at end of file diff --git a/docs/workshop/ossinsight-lite/introduction/index.html b/docs/workshop/ossinsight-lite/introduction/index.html index 184c15fe527..3c81f052d95 100644 --- a/docs/workshop/ossinsight-lite/introduction/index.html +++ b/docs/workshop/ossinsight-lite/introduction/index.html @@ -21,13 +21,13 @@ - - + +

    Workshop: OSS Insight Lite

    Introduction​

    By joining this workshop, you can get:

    1. A free MySQL-Compatible serverless database with analytical capability
    2. A well-designed personal/repos GitHub activities analysis tool

    Live Demo: http://ossinsight-lite.vercel.app/

    Requirements​

    1. GitHub Action - free
    2. TiDB Serverless - free
    3. Vercel - free

    Step by Step​

    It will take about 1 hour to build your own dashboard.

    - - + + \ No newline at end of file diff --git a/docs/workshop/ossinsight-lite/setup-github-action/index.html b/docs/workshop/ossinsight-lite/setup-github-action/index.html index 966cf01be00..736c343e4b5 100644 --- a/docs/workshop/ossinsight-lite/setup-github-action/index.html +++ b/docs/workshop/ossinsight-lite/setup-github-action/index.html @@ -21,8 +21,8 @@ - - + +
    @@ -30,7 +30,7 @@
  • Navigate to the Settings -> Secrets tab of your forked repository.
  • Add the following secrets:
    • ACCESS_TOKEN: Your GitHub Personal Access Token from Step 1
    • DATABASE_URL: The TiDB Cloud MySQL connection information in URI format from Step 2
    • REPO_FULL_NAME: The full name of the repository you want to track (e.g., owner/repo-name)
    1. Navigate to the "Actions" tab of your forked repo on GitHub.
    2. On the left side, click on "Sync GitHub Repo Data" workflow.
    3. Click the Run workflow dropdown button located on the right side of the interface.
    4. Select the main branch and click on Run workflow.
    5. The GitHub Action will execute, syncing the specified repository data to the TiDB Cloud after a few minutes.
    - - + + \ No newline at end of file diff --git a/docs/workshop/ossinsight-lite/setup-tidb-serverless/index.html b/docs/workshop/ossinsight-lite/setup-tidb-serverless/index.html index fcc90c6ae1c..ad6bfe7cef6 100644 --- a/docs/workshop/ossinsight-lite/setup-tidb-serverless/index.html +++ b/docs/workshop/ossinsight-lite/setup-tidb-serverless/index.html @@ -21,13 +21,13 @@ - - + +

    Step 1: Setup TiDB Serverless

    Signup TiDB Cloud​

    Register for a TiDB Cloud account at https://tidbcloud.com/signup.

    Create a serverless cluster​

    Create a serverless cluster in the TiDB Cloud dashboard.

    1. Make sure select Serverless in Choose a Tier section;
    2. Leave other as default;

    Get connection info​

    1. Click Connect on top right;

    2. Select Connect With then you will see:

      host: 'gateway01.<your_region>.prod.aws.tidbcloud.com'
      port: 4000,
      user: 'xxxxxxxxxxxxxxx.root',
      password: '<your_password>',
    - - + + \ No newline at end of file diff --git a/docs/workshop/ossinsight-lite/setup-vercel/index.html b/docs/workshop/ossinsight-lite/setup-vercel/index.html index 7d912203d70..07ced91346c 100644 --- a/docs/workshop/ossinsight-lite/setup-vercel/index.html +++ b/docs/workshop/ossinsight-lite/setup-vercel/index.html @@ -21,14 +21,14 @@ - - + +

    Step 3: Setup Dashboard with Vercel

    1. With the data synced to TiDB Cloud, use your preferred SQL client to connect to the TiDB database using the connection information provided in Step 2.
    2. Start querying the data to get insights on repositories. Some sample SQL queries you might use to explore the data are: For example, to calculate how many contributors for repo:
    SELECT
    COUNT(DISTINCT `id`)
    FROM
    `users`;

    To find out how many open issues:

    SELECT repos.owner, repos.name, COUNT(*) as open_issue_count
    FROM repos
    JOIN issues ON repos.id = issues.repo_id
    WHERE issues.closed = 0
    GROUP BY repos.owner, repos.name
    ORDER BY open_issue_count DESC;

    To find out the average followers count of the users who starred in this repo:

    SELECT
    AVG(users.`followers_count`)
    FROM
    `starred_repos`
    JOIN `users` ON `starred_repos`.`user_id` = `users`.`id`;
    - - + + \ No newline at end of file diff --git a/experimental/index.html b/experimental/index.html index 0a11bfd88b2..8142cb8b422 100644 --- a/experimental/index.html +++ b/experimental/index.html @@ -21,13 +21,13 @@ - - + +

    Loading... Β 

    - - + + \ No newline at end of file diff --git a/explore/index.html b/explore/index.html index 84390a1b280..303c16d92b6 100644 --- a/explore/index.html +++ b/explore/index.html @@ -21,13 +21,13 @@ - - + +

    GitHub Data Explorer

    Explore
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ,
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ,
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ,
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    GitHub data with no SQL or plotting skills. Powered by tidb cloud logo

    FAQ

    How it works

    Input your question
    Translate the question into SQL
    Visualize and output results

    Can I use the AI-powered feature with my own dataset?

    Yes! We integrated the capabilities of Text2SQL into Chat2Query, an AI-powered SQL generator in TiDB Cloud. If you want to explore any other dataset, Chat2Query is an excellent choice.

    What are the limitations of GitHub Data Explorer?

    1. AI is still a work in progress with limitations
      Its limitations include:
      • A lack of context and knowledge of the specific database structure
      • A lack of domain knowledgestructure
      • Inability to produce the most efficient SQL statement for large and complex queries
      • Sometimes service instability

      To help AI understand your query intention, please use clear, specific phrases in your question. Check out our question optimization tips. We're constantly working on improving and optimizing it, so any feedback you have is greatly appreciated. Thanks for using!

    2. The dataset itself is a limitation for our tool
    3. All the data we use on this website is sourced from GH Archive, a non-profit project that records and archives all GitHub event data since 2011 (public data only). If a question falls outside of the scope of the available data, it may be difficult for our tool to provide a satisfactory answer.

    Why did it fail to generate an SQL query?

    Potential reasons:
    • The AI was unable to understand or misunderstood your question, resulting in an inability to generate SQL. To know more about AI's limitations, you can check out the previous question.
    • Network issues.
    • You had excessive requests. Note that you can ask up to 15 questions per hour.

    The potential solution is phrase your question which is related GitHub with short, specific words, then try again. And we strongly recommend you use our query templates near the search box to start your exploring.

    The query result is not satisfactory. How can I optimize my question?

    We use AI to translate your question to SQL. But it's still a work in progress with limitations.
    To help AI understand your query intention and get a desirable query result, you can rephrase your question using clear, specific phrases related to GitHub. We recommend:
    • Using a GitHub login account instead of a nickname. For example, change "Linus" to "torvalds."
    • Using a GitHub repository's full name. For example, change "react" to "facebook/react."
    • Using GitHub terms. For example, to find Python projects with the most forks in 2022, change your query "The most popular Python projects 2022" to "Python projects with the most forks in 2022."

    You can also get inspiration from the suggested queries near the search box.

    Why did it fail to generate a chart?

    Potential reasons:
    • The SQL query was incorrect or could not be generated, so the answer could not be found in the database, and the chart could not be generated.
    • The answer was found, but the AI did not choose the correct chart template, so the chart could not be generated.
    • The SQL query was correct, but no answer was found, so the chart could not be displayed.

    What technology is GitHub Data Explorer built on?

    Its major technologies include:
    • Data source: GH Archive and GitHub event API
      GH Archive collects and archives all GitHub data since 2011 and updates it hourly. By combining the GH Archive data and the GitHub event API, we can gain streaming, real-time data updates.
    • One database for all workloads: TiDB Cloud
      Facing continuously growing large-volume data (currently 5+ billion GitHub events), we need a database that can:
      • Store massive data
      • Handle complex analytical queries
      • Serve online traffic
      TiDB is an ideal solution. TiDB Cloud is its fully managed cloud Database as a Service. It lets users launch TiDB in seconds and offers the pay-as-you-go pricing model. Therefore, we choose TiDB Cloud as our backend database.
    • AI engine: OpenAI
    • To enable users without SQL knowledge to query with this tool, we use ChatGPT API to translate the natural language to SQL.

    Still having trouble? Contact us, we're happy to help!

    Wonder how OSS Insight works?

    logo

    How do we implement OSS Insight ?

    Blog: 10 min read

    read more
    logo

    Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

    Tutorial: 10 min read

    read more
    logo

    Join a Workshop to Setup a Mini OSS Insight

    Tutorial: 25 min

    read more

    Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
    #OSSInsightΒ #TiDBCloud

    Star
    - - + + \ No newline at end of file diff --git a/index.html b/index.html index aa128eb4f76..997a1415e12 100644 --- a/index.html +++ b/index.html @@ -21,13 +21,13 @@ - - + +
    SELECT insights FROM
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ,
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ,
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ,
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    GitHub events

    Open Source Software
    Β Insight

    ​

    Deep insight into developers and repos on GitHub
    about stars, pull requests, issues, pushes, comments, reviews...

    TiDBTiDBClaim credits for open-source heroes! ->


    Events per 5 seconds

    What is happening on GitHub NOW!Β 

      πŸ“– Hot Collections

      Insights about the monthly and historical rankings and trends in technical fields with curated repository lists.

      Wonder how OSS Insight works?

      logo

      How do we implement OSS Insight ?

      Blog: 10 min read

      read more
      logo

      Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

      Tutorial: 10 min read

      read more
      logo

      Join a Workshop to Setup a Mini OSS Insight

      Tutorial: 25 min

      read more

      Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
      #OSSInsightΒ #TiDBCloud

      Star
      - - + + \ No newline at end of file diff --git a/open-source-heroes/index.html b/open-source-heroes/index.html index 0af051517b4..8c3b343d7d7 100644 --- a/open-source-heroes/index.html +++ b/open-source-heroes/index.html @@ -3,7 +3,7 @@ -Open Source Heroes Claim FREE TiDB Serverless Credits! | OSS Insight +Open Source Heroes Claim FREE TiDB Serverless Credits! | OSS Insight @@ -21,13 +21,13 @@ - - + +
      -

      Fuel Your Next Big Idea:
      TiDB Serverless Credits for Open Source Heroes

      TiDB loves open-source. We contribute code, sponsor projects and deeply appreciate developers who actively contribute to the community.
      As a token of our appreciation, we're offering up to $1000 in free TiDB Serverless credits to fuel open-source hero's next big idea.

      Simply log in with your GitHub account to calculate and claim your credits.
      OSSInsight LogoTiDB Logo

      Free Database Credits for Open Source Heroes

      TiDB loves open-source. We contribute code, sponsor projects, and appreciate developers who do so.
      As a token of our appreciation, we're offering up to $1000 free TiDB Serverless credits to fuel open-source hero's next big idea.

      Log in with GitHub account to claim your credits.

      How it Works

      Link your Github

    • Claim your Credits

    • Start Building

      With TiDB Serverless⚑️, you can:

      TiDB Serverless is a highly scalable, vector search built-in, and cost-effective serverless database, which is dedicated to powering modern applications with simple solutions. Read more.

      With it, you can:

      • Build highly scalable applications with ease
      • Leverage advanced features like vector search
      • Enjoy seamless integration with what you use
      • Pay only for what you use, and only beyond free credits
      Try Free

      With TiDB Serverless credits πŸ’° , you can:

      • Personal Website Hosting: Create websites or blogs using WordPress or Joomla.
      • RAG Agent Prototyping: Develop RAG agents with your own knowledge base.
      • Minecraft Server: Run a personal Minecraft server, where you can play on with your friends all day.
      • Start small businesses: Power online stores, community forums, or customer feedback systems.
      • Data API Backends: Host small databases for managing small-scale workloads like API backend
      • Scale startups: Deploy SaaS applications, analytics dashboards, or e-commerce platforms with of thousands users and continuous read/write operations.
      • Data-heavy applications: Scale applications with distributed databases, handle enterprise-level systems, or power data-heavy industries like fintech or healthcare.
      • Power large-scale enterprises: Handle millions of users with high performance and reliability requirements.
      • Run mission-critical systems: Support complex applications like fintech, gaming, or healthcare solutions.

      We Build with TiDB

      • @Kaustav Chakravorty
        Senior Architect, Flipkart
        Logistics

        In the following years, we will definitely migrate more clusters from MySQL to TiDB, use TiCDC to set up multi-region clusters on AWS for failover, and try TiFlash for instant analytical queries.

      • @Henry Qin
        Software Engineer
        FinTech

        TiDB's architecture, sort of a SQL layer on top of a key value store, was more scalable and more likely to cause fewer problems down the line. With TiDB, we don't need to worry about cross-charge transactions. That's huge.

      • @Sky Dong
        Founding Engineer, Chaintool
        Web 3

        The ease and comfort of getting started are paramount for us, and the fully managed operations of TiDB Serverless allow us to focus more on our core business, ensuring that our development resources are utilized where they matter most.

      • @Eliotte
        Hackathon AI Track Winner, Quizmefy
        AI App

        We heavily utilized TiDB's serverless feature to power our backend. This allowed us to scale our backend to handle thousands of requests per second effortlessly while keeping costs low, as we only pay for what we use.

      • @Kaustav Chakravorty
        Senior Architect, Flipkart
        E-Commerce

        The NO.1 benefit is simplicity. With TiDB, our applications can retain their SQL data model and the ACID guarantees. We don't have to implement any kind of sharding logic, and the database management becomes simpler too.

      • @Thomas Yu
        Founder, KNN3 Networks
        Web 3

        TiDB Serverless is especially beneficial for experimental or early-stage features. It's cost-effective for startups, scalable, and development-friendly.

      • @Godwin
        Project Owner of AI-Mon
        AI App

        With TiDB Serverless, setting up a database is as easy as clicking a button. It handles analytics seamlessly, without the need for manual scaling.

      • @Kentaro Kitagawa
        Senior DBA, LINE Corporation
        Internet

        Scale-in and scale-out in a cluster configuration is also easy, and the ecosystem is very rich, with operation monitoring tools such as Grafana being able to be installed immediately with the installation command (TiUP).

      • @Yaohui Sun
        Data Platform Lead, Chainbase
        Web 3

        TiDB Serverless's automatic scaling capabilities allow us to swiftly scale up to meet performance demands and scale down during quieter periods for optimizing costs.

      TiDB ❀️ Open Source

      We take pride in our open-source roots.
      With the developer community, we align our product, to make sure it perfectly fits modern application developer's needs.

      -
      ✨ GitHub Stars
      -
      ✏️ Pull Requests
      873
      πŸ‘« Contributors

      FAQ

      Why would TiDB commit to the open source community?

      TiDB believes that open source fosters innovation, collaboration, and community-driven development. By actively contributing to and supporting open-source projects, TiDB aims to create a vibrant ecosystem that benefits all participants.

      How do I claim my credits?

      Once you’ve logged in with your GitHub Username and your credits have been calculated, you can redeem them by logging into your OssInsight or TiDB Cloud account. The credits will be automatically applied to your account. Make sure you use the the same Github account for both OSSInsight SSO login and TiDB Cloud SSO login.

      How can I contact support if I face issues redeeming my credits?

      You can reach out to our support team through ossinsight@pingcap.com

      Legal Statement

      General Terms

      By participating in this campaign, you agree to these terms. PingCAP can change or end the campaign at any time without notice. Follow all rules, laws, and GitHub's terms of service.

      Who Can Participate

      The campaign is open to anyone, except PingCAP employees, contractors, affiliates, and their immediate family members.

      Rewards

      TiDB Cloud credits are valid for 180 days and cannot be transferred, refunded, or exchanged for cash. The cutoff date to claim the credits is October 1, 2025. PingCAP reserves the right to end the promotion earlier or extend the cutoff date.

      Privacy

      By participating, you agree that PingCAP can use your data according to our Privacy Policy. Your data will only be used to run this campaign and won't be shared without your consent, except as required by law.

      No Guarantees

      PingCAP does not guarantee the availability or operation of the TiDB software, the TiDB Cloud platform, or the credits offered in this campaign. Use them at your own risk.

      Limitation of Liability

      PingCAP is not responsible for any losses or damages that may happen from participating in this campaign or using the TiDB Cloud credits.

      This campaign follows the laws of California. Any disputes will be resolved through arbitration in San Mateo, California, USA.

      Contact Us

      For questions or concerns, please contact us at https://www.pingcap.com/contact-us/.

      - - +

      Fuel Your Next Big Idea:
      TiDB Serverless Credits for Open Source Heroes

      TiDB loves open-source. We contribute code, sponsor projects and deeply appreciate developers who actively contribute to the community.
      As a token of our appreciation, we're offering up to $2000 in free TiDB Serverless credits to fuel open-source hero's next big idea.

      Simply log in with your GitHub account to calculate and claim your credits.
      OSSInsight LogoTiDB Logo

      Free Database Credits for Open Source Heroes

      TiDB loves open-source. We contribute code, sponsor projects, and appreciate developers who do so.
      As a token of our appreciation, we're offering up to $2000 free TiDB Serverless credits to fuel open-source hero's next big idea.

      Log in with GitHub account to claim your credits.

      How it Works

      Link your Github

    • Claim your Credits

    • Start Building

      With TiDB Serverless⚑️, you can:

      TiDB Serverless is a highly scalable, vector search built-in, and cost-effective serverless database, which is dedicated to powering modern applications with simple solutions. Read more.

      With it, you can:

      • Build highly scalable applications with ease
      • Leverage advanced features like vector search
      • Enjoy seamless integration with what you use
      • Pay only for what you use, and only beyond free credits
      Try Free

      With TiDB Serverless credits πŸ’° , you can:

      • Personal Website Hosting: Create websites or blogs using WordPress or Joomla.
      • RAG Agent Prototyping: Develop RAG agents with your own knowledge base.
      • Minecraft Server: Run a personal Minecraft server, where you can play on with your friends all day.
      • Start small businesses: Power online stores, community forums, or customer feedback systems.
      • Data API Backends: Host small databases for managing small-scale workloads like API backend
      • Scale startups: Deploy SaaS applications, analytics dashboards, or e-commerce platforms with of thousands users and continuous read/write operations.
      • Data-heavy applications: Scale applications with distributed databases, handle enterprise-level systems, or power data-heavy industries like fintech or healthcare.
      • Power large-scale enterprises: Handle millions of users with high performance and reliability requirements.
      • Run mission-critical systems: Support complex applications like fintech, gaming, or healthcare solutions.

      We Build with TiDB

      • @Kaustav Chakravorty
        Senior Architect, Flipkart
        Logistics

        In the following years, we will definitely migrate more clusters from MySQL to TiDB, use TiCDC to set up multi-region clusters on AWS for failover, and try TiFlash for instant analytical queries.

      • @Henry Qin
        Software Engineer
        FinTech

        TiDB's architecture, sort of a SQL layer on top of a key value store, was more scalable and more likely to cause fewer problems down the line. With TiDB, we don't need to worry about cross-charge transactions. That's huge.

      • @Sky Dong
        Founding Engineer, Chaintool
        Web 3

        The ease and comfort of getting started are paramount for us, and the fully managed operations of TiDB Serverless allow us to focus more on our core business, ensuring that our development resources are utilized where they matter most.

      • @Eliotte
        Hackathon AI Track Winner, Quizmefy
        AI App

        We heavily utilized TiDB's serverless feature to power our backend. This allowed us to scale our backend to handle thousands of requests per second effortlessly while keeping costs low, as we only pay for what we use.

      • @Kaustav Chakravorty
        Senior Architect, Flipkart
        E-Commerce

        The NO.1 benefit is simplicity. With TiDB, our applications can retain their SQL data model and the ACID guarantees. We don't have to implement any kind of sharding logic, and the database management becomes simpler too.

      • @Thomas Yu
        Founder, KNN3 Networks
        Web 3

        TiDB Serverless is especially beneficial for experimental or early-stage features. It's cost-effective for startups, scalable, and development-friendly.

      • @Godwin
        Project Owner of AI-Mon
        AI App

        With TiDB Serverless, setting up a database is as easy as clicking a button. It handles analytics seamlessly, without the need for manual scaling.

      • @Kentaro Kitagawa
        Senior DBA, LINE Corporation
        Internet

        Scale-in and scale-out in a cluster configuration is also easy, and the ecosystem is very rich, with operation monitoring tools such as Grafana being able to be installed immediately with the installation command (TiUP).

      • @Yaohui Sun
        Data Platform Lead, Chainbase
        Web 3

        TiDB Serverless's automatic scaling capabilities allow us to swiftly scale up to meet performance demands and scale down during quieter periods for optimizing costs.

      TiDB ❀️ Open Source

      We take pride in our open-source roots.
      With the developer community, we align our product, to make sure it perfectly fits modern application developer's needs.

      -
      ✨ GitHub Stars
      -
      ✏️ Pull Requests
      873
      πŸ‘« Contributors

      Discover TiDB on GitHub ->

      FAQ

      Why would TiDB commit to the open source community?

      TiDB believes that open source fosters innovation, collaboration, and community-driven development. By actively contributing to and supporting open-source projects, TiDB aims to create a vibrant ecosystem that benefits all participants.

      How do I claim my credits?

      Once you’ve logged in with your GitHub Username and your credits have been calculated, you can redeem them by logging into your OssInsight or TiDB Cloud account. The credits will be automatically applied to your account. Make sure you use the the same Github account for both OSSInsight SSO login and TiDB Cloud SSO login.

      How can I contact support if I face issues redeeming my credits?

      You can reach out to our support team through ossinsight@pingcap.com

      Legal Statement

      General Terms

      By participating in this campaign, you agree to these terms. PingCAP can change or end the campaign at any time without notice. Follow all rules, laws, and GitHub's terms of service.

      Who Can Participate

      The campaign is open to anyone, except PingCAP employees, contractors, affiliates, and their immediate family members.

      Rewards

      TiDB Cloud credits are valid for 180 days and cannot be transferred, refunded, or exchanged for cash. The cutoff date to claim the credits is October 1, 2025. PingCAP reserves the right to end the promotion earlier or extend the cutoff date.

      Privacy

      By participating, you agree that PingCAP can use your data according to our Privacy Policy. Your data will only be used to run this campaign and won't be shared without your consent, except as required by law.

      No Guarantees

      PingCAP does not guarantee the availability or operation of the TiDB software, the TiDB Cloud platform, or the credits offered in this campaign. Use them at your own risk.

      Limitation of Liability

      PingCAP is not responsible for any losses or damages that may happen from participating in this campaign or using the TiDB Cloud credits.

      This campaign follows the laws of California. Any disputes will be resolved through arbitration in San Mateo, California, USA.

      Contact Us

      For questions or concerns, please contact us at https://www.pingcap.com/contact-us/.

      + + \ No newline at end of file diff --git a/stats/index.html b/stats/index.html index 40a6bcfada0..1f1e2d38d02 100644 --- a/stats/index.html +++ b/stats/index.html @@ -21,13 +21,13 @@ - - + +

      Database Stats

        Wonder how OSS Insight works?

        logo

        How do we implement OSS Insight ?

        Blog: 10 min read

        read more
        logo

        Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

        Tutorial: 10 min read

        read more
        logo

        Join a Workshop to Setup a Mini OSS Insight

        Tutorial: 25 min

        read more

        Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
        #OSSInsightΒ #TiDBCloud

        Star
        - - + + \ No newline at end of file diff --git a/stats/tables/:slug/index.html b/stats/tables/:slug/index.html index 4e81ff2a76c..1b6ff3a0726 100644 --- a/stats/tables/:slug/index.html +++ b/stats/tables/:slug/index.html @@ -21,13 +21,13 @@ - - + +
        tableSchema--
        tableName--
        tableRows0
        avgRowLength0 B
        dataLength0 B
        indexLength0 B
        createTime--
        tableCollation--
        createOptions--
        rowIdShardingInfo--
        pkType--
        IndexCalls

        Wonder how OSS Insight works?

        logo

        How do we implement OSS Insight ?

        Blog: 10 min read

        read more
        logo

        Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

        Tutorial: 10 min read

        read more
        logo

        Join a Workshop to Setup a Mini OSS Insight

        Tutorial: 25 min

        read more

        Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
        #OSSInsightΒ #TiDBCloud

        Star
        - - + + \ No newline at end of file diff --git a/subscriptions/EnableEmailSwitch/index.html b/subscriptions/EnableEmailSwitch/index.html index 95a1b4c98b0..45687c68a7a 100644 --- a/subscriptions/EnableEmailSwitch/index.html +++ b/subscriptions/EnableEmailSwitch/index.html @@ -21,13 +21,13 @@ - - + +
        - - + + \ No newline at end of file diff --git a/subscriptions/index.html b/subscriptions/index.html index 6b4ac0a2a3a..11130f0003a 100644 --- a/subscriptions/index.html +++ b/subscriptions/index.html @@ -21,13 +21,13 @@ - - + +

        My Subscriptions

        Wonder how OSS Insight works?

        logo

        How do we implement OSS Insight ?

        Blog: 10 min read

        read more
        logo

        Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

        Tutorial: 10 min read

        read more
        logo

        Join a Workshop to Setup a Mini OSS Insight

        Tutorial: 25 min

        read more

        Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
        #OSSInsightΒ #TiDBCloud

        Star
        - - + + \ No newline at end of file diff --git a/try-your-own-dataset/index.html b/try-your-own-dataset/index.html index 7cc5cd937ee..ab8412287e8 100644 --- a/try-your-own-dataset/index.html +++ b/try-your-own-dataset/index.html @@ -21,13 +21,13 @@ - - + +

        Wonder how OSS Insight works?

        logo

        How do we implement OSS Insight ?

        Blog: 10 min read

        read more
        logo

        Use TiDB Cloud to Analyze GitHub Events in 10 Minutes

        Tutorial: 10 min read

        read more
        logo

        Join a Workshop to Setup a Mini OSS Insight

        Tutorial: 25 min

        read more

        Follow us atΒ @OSSInsightΒ and join the conversation using the hashtags
        #OSSInsightΒ #TiDBCloud

        Star
        - - + + \ No newline at end of file