Public account: MarkerHub, website: markerhub.com
Author: Chueh Fei
Source: juejin. Im/post / 5 e3d01c56fb9a07c91100801 # heading – 5
Many friends often have such confusion. I read a lot of technical learning documents, books, and even videos, and I want to put my hands into practice. So I opened GitHub to find an open source project, learn, and gain practical project experience. At this time, many friends will face such a problem: “I do not search ah, how should I find it?” Finally, can only give up.
In this post, you’ll learn how to accurately search for projects on GitHub.
Components of open source projects
Before we get into that, let’s look at the components of an open source project:
-
Name: project name
-
Description: Brief description of the project
-
Source code for the project
-
Readme. md: a detailed introduction to the project
In addition to these factors, the number of stars and forks of the project itself is also a criterion to judge whether an open source project is hot or not, which is also an important search criterion. Also keep an eye on the last update date of the project, because the more active the project, the more frequently it will be updated.
The above elements are some of the key points we should pay attention to when searching.
How to search
So how do we search?
Let’s say we want to search React. Most people type “React” in the search box, and then go back to the car, and you’ll see something like this:
The search results will show so many open source projects that you are overwhelmed and have no way to start. Many friends give up at this stage because there are too many projects and they cannot find out how to find the open source projects they are interested in, so this search is very inaccurate. So let’s look at a slightly more precise search method.
Search by name
Search for projects with React in their name:
in:name React
Copy the code
The results are as follows:
As you can see, these search results are all projects with the “React” keyword in the project name, but there are still a lot of projects.
Now let’s constrain it
For example, IF THE star number of the project is more than 5000+,
in:name React stars:>5000
Copy the code
The result is this:
The results were instantly more accurate, with only 114 items to choose from. Of course, we generally do not set the star number so high, generally set to 1000.
Similarly, we can search by the number of forks:
in:name React stars:>5000 forks:>3000
Copy the code
You’ll find that the results are getting more accurate!
Search by README
Search readme. md for projects that contain React:
in:readme React
Copy the code
So let’s limit the number of stars and forks:
in:readme React stars:>3000 forks:>3000
Copy the code
The search results were accurate to 90. When you go back to choosing projects, it becomes much easier.
Search by descriptin
Let’s say we’re going to learn about microservices. Let’s search for items that contain microservices in the project description:
In: micro service descriptionCopy the code
With so many results, let’s add some screening criteria:
In: Description Microservice language: PythonCopy the code
Language: Python means that we restrict the language to Python. Let’s see what happens:
Search results are much more accurate.
If we want to find items that were recently updated, meaning that they were recently updated, we can do this:
In :description microservice language: Python pushed:>2020-01-01Copy the code
Pushed :>2020-01-01 means we pushed the last update time of the item to 2020-01-01. Let’s see what the result is:
Search results only 8, these several items belong to the update of the more active items, this next no entangled.
conclusion
All right, so let’s wrap this up. When we want to do a precise search, all we do is increase the filter.
-
In :name XXX // Search by project name
-
In :readme XXX // Search by readME
-
In :description XXX // Search by description
In this case, we can add filters
-
Stars :> XXX // The number of stars exceeds XXX
-
Forks :>3000 // The number of forks is greater than XXX
-
Language: XXX // The programming language is XXX
-
Pushed :> YYYY-MM-dd // The last update time is greater than YYYY-MM-dd
These are our tips on how to pinpoint projects on GitHub. Hope they’ll help you!
Recommended reading
Great, this Java website, what projects! https://markerhub.com
This B station UP main, the Java is really good!
Too great! The latest version of Java programming ideas can be viewed online!