DEV Community

Cover image for 7 Amazing GitHub Repositories Every Developer Should Follow
Tapajyoti Bose
Tapajyoti Bose

Posted on

7 Amazing GitHub Repositories Every Developer Should Follow

GitHub is the dominant player in hosting Software Projects on the web. With 200 M+ public repositories, GitHub offers a plethora of knowledge for the developers, including Open Source Projects, libraries, learning platforms, interview preparation, CV writing tips, and many more. But with so many repositories out there, finding useful ones can easily turn overwhelming.

This article will provide you 7 great GitHub repositories that you absolutely must follow if you learning to code!

1. FreeCodeCamp

FreeCodeCamp

For many beginner Software Engineers, the path to learning Software Development can be challenging and uncertain, especially if you are not studying in Computer Science or not living in developed countries, the road to software development can be tricky.

To lower the barrier to Software Development, Quincy Larson founded FreeCodeCamp in 2014. It offers a Virtual Code Camp so enrolled students can learn Software Development by working on projects on an interactive platform. The best part of FreeCodeCamp is, as its names suggest: that it is 100% free.

⭐ GitHub stars: 384k+

GitHub logo freeCodeCamp / freeCodeCamp

freeCodeCamp.org's open-source codebase and curriculum. Learn to code for free.

2. Developer Roadmap

Developer Roadmap

Feeling lost seeing the vast topics that you need to cover combined with the ever-changing landscape of the tech world? Developer Roadmap got your back!

If you plan to start a career in Software Development or upgrade your Software Development skill, this GitHub repository will give you a concise roadmap, regardless of the niche you want to break into!

⭐ GitHub stars: 199k+

GitHub logo kamranahmedse / developer-roadmap

Roadmap to becoming a developer in 2022

3. Awesome

Awesome

If you want to know about a Software Engineering related topic, the easiest way would be to search on Google and spend hours finding the correct link or collection of links. But the smart way is to be awesome and use “Awesome”!

This GitHub repository contains all the relevant content of a particular topic. In one sense, it is like an “Index” page for any Software Engineering topic.

⭐ GitHub stars: 207k+

GitHub logo sindresorhus / awesome

😎 Awesome lists about all kinds of interesting topics

4. Build Your Own X

Build Your Own X

One of the most effective ways of learning Software Engineering topics is to create them hands-on. Now creating a Database, Operating System, or Chatbot is quite a daunting task.

This GitHub repository contains a list of tutorials that will guide you to build almost everything in Software Engineering. If you want to deep dive into a topic by creating it yourself, you now know where to look for it!

⭐ GitHub stars: 147k+

GitHub logo codecrafters-io / build-your-own-x

Master programming by recreating your favorite technologies from scratch.

5. Git Ignore

Git Ignore

Git is the de facto version control system in modern software development. If you work with Git, it often becomes a nuisance that Git will ask you to add your generated folders (eg: build) to add in Git.

One way to avoid this is by adding a .gitignore file to your project. An even more smart way would be to add a .gitignore file specific to your project. This GitHub repository offers a standard .gitignore template for almost all use cases.

⭐ GitHub stars: 135k+

GitHub logo github / gitignore

A collection of useful .gitignore templates

6. System Design Primer

System Design Primer

Designing a Scalable end-to-end Software System (Frontend to Database) is an extremely challenging task. A System Designer needs to know a particular topic deeply and should know a wide range of topics. This GitHub repository contains all the resources specially focused on end-to-end system design.

It explains all the components of an end-to-end system: CDN, Load Balancer, Web Server, API, SQL/NoSQL Databases, and many more topics. It also contains many interview preparation materials and exercises (including solutions) for System Design.

⭐ GitHub stars: 187k+

GitHub logo donnemartin / system-design-primer

Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.

7. Coding Interview University

Coding Interview University

After learning everything, you would most likely try to land a job as a Software Engineer. Cracking a coding interview can be a challenging feat. Success or failure in a coding interview often comes down to preparation for the interview.

In this GitHub repository, the author John Washam listed down almost everything you need to know to prepare for an interview. It contains a study plan, topics, and how to find a job. It includes online materials, books, videos, lectures about the different Software Engineering topics, CV writing tips, Job application tips, and much more.

⭐ GitHub stars: 223k+

GitHub logo jwasham / coding-interview-university

A complete computer science study plan to become a software engineer.

Research says, writing down your goals on pen & paper makes you 21% to 39% more likely to achieve them. Check out these notebooks and journals to make the journey of achieving your dreams easier: https://www.amazon.com/Tapajyoti-Bose/e/B09VGDDHRR

Thanks for reading

Need a Top Rated Front-End Development Freelancer to chop away your development woes? Contact me on Upwork

Want to see what I am working on? Check out my Personal Website and GitHub

Want to connect? Reach out to me on LinkedIn

Follow me on Instagram to check out what I am up to recently.

Follow my blogs for Weekly new Tidbits on Dev

FAQ

These are a few commonly asked questions I get. So, I hope this FAQ section solves your issues.

  1. I am a beginner, how should I learn Front-End Web Dev?
    Look into the following articles:

    1. Front End Development Roadmap
    2. Front End Project Ideas
  2. Would you mentor me?

    Sorry, I am already under a lot of workload and would not have the time to mentor anyone.

Discussion (6)

Collapse
eljayadobe profile image
Eljay-Adobe

I recently read a fantastic book on software engineering, Software Engineering at Google: Lessons Learned from Programming Over Time by Hyrum Wright, Titus Winters, and Tom Manshreck.

For years I was a bit fuzzy on the difference between a programmer and a software engineer. This book put the salient difference into context for me. (It's also a fantastic book for other good reasons.)

Collapse
adriens profile image
adriens

Thanks for pointing the

GitHub logo github / gitignore

A collection of useful .gitignore templates

A collection of .gitignore templates

This is GitHub’s collection of .gitignore file templates We use this list to populate the .gitignore template choosers available in the GitHub.com interface when creating new repositories and files.

For more information about how .gitignore files work, and how to use them the following resources are a great place to start:

Folder structure

We support a collection of templates, organized in this way:

  • The root folder contains templates in common use, to help people get started with popular programming languages and technologies. These define a meaningful set of rules to help get started, and ensure you are not committing unimportant files into your repository.
  • Global contains templates for various editors, tools and operating systems that can be used in different situations. It is…




project !
Collapse
pdfreviewer profile image
pdfreviewer

IntelliJ IDEA has a ignore plugin that can help generate a .gitignore file (or other ignore files like .dockerignore) in a few mouse clicks.

Collapse
ajshivali profile image
Shivali Pandey

Great!!

Collapse
pb profile image
Pawel

Do checkout github.com/pawelborkar/awesome-repos as well 😊

Collapse
devsimc profile image
simc dev CSM®

Wrote on it long back check it out by clicking on below link
10-github-repositories-every-devel...