Best GitHub repositories for web developers

A programmer spends many hours developing a certain functionality and ensuring that the code complies with the best practices adopted in a particular environment. This watch should not include regular writing of template designs. A programmer can greatly help himself in the proper organization of work, saving himself from unnecessary things and investing time in learning the right tools. A good help can also be knowledge of valuable resources, a list of which is always useful to keep at hand. The author of the material, the translation of which we publish today, offers to consider several GitHub repositories, which, if you look at them sometimes, will allow web developers to improve their knowledge and skills, will assist in writing better code, and will help you work faster.





Node.js Best Practices



133 programmers contributed to the Node.js Best Practices repository , it has more than 40 thousand stars on GitHub. It is updated almost daily. This is a wonderful resource that allows everyone to keep abreast of what is happening in the world of Node.js, and at the same time learn the best practical development methods.

This repository not only contains information on the most useful development techniques for Node.js, it also provides information on the integration of Node.js with other platforms - such as, for example, Docker and Kubernetes. Now there are more than 80 “best practices”, style guides, and application architecture tips.

Here are some of the development areas covered in it:

  • Structuring projects.
  • Error processing.
  • Code Style
  • Testing and ensuring high quality code.
  • Preparation of projects for output in production.

HTML5 Boilerplate



HTML5 Boilerplate is a professional front-end template for creating fast, reliable and flexible web applications and sites.

This project is the result of many years of iterative development, it has accumulated a large amount of knowledge from the web programmer community. He does not impose on anyone who uses it a specific development philosophy, does not prescribe the use of a certain framework. Using this project, everyone can design their code as they see fit.

Here are the features presented in the template:

  • Support for Normalize.css.
  • JQuery support with CDN.
  • Apache server settings.
  • Useful helper CSS classes.
  • Standard print styles, performance optimization mechanisms, and more.

Depending on exactly what features of this template are planned to be used, and on how exactly it is planned to work with it, it may be necessary to copy certain of its materials into your project. The use of such materials means that the developer has a pre-configured basic template. This speeds up the development of web projects.

Real world



Thanks to the RealWorld repository, you can, without unnecessary difficulties, master the basic concepts and ideology of a new framework.

Usually, while learning something new, the programmer reads the documentation, runs examples torn from practice in something like CodePen, parses these examples, then collects them, installs command-line tools ... In general, it spends a lot of time and effort. In addition, the situation may be complicated by the fact that the programmer did not very well grasp the essence of the tools that he is trying to learn.

The repository under consideration allows you to choose any of the technologies it supports for client development (React, Angular 2, and many others), any server platform (among them, for example, Node.js and Django) and, integrating them with each other, see a real example application.

Since the implementations of the examples use the entire stack of technologies necessary for developing a web project, it will not be possible to completely combine their parts, but despite the use of various technologies in them, they demonstrate comparable functionality and similar UX specifications.

Here are some popular technology integration examples from this repository:

  • Angular + ngrx + nx
  • ClojureScript + re-frame
  • React / MobX
  • Go + gin
  • NestJS + TypeORM / Prisma

This is just a small part of what can be found in the RealWorld repository. I think you will be interested in exploring it.

And by the way, there are not only examples designed for web development. Something based on NativeScript can be found here by those who create projects designed for mobile devices.

The repository is working on preparing examples focused on the following technologies: React Native, Jasonette, Swift, C # and Xamarin, Kotlin / Android, Onymos, Quasar framework, Swift Perfect and Flutter.

You Don't Know JS Yet



The You Don’t Know JS Yet repository is where you can find a series of books on in-depth study of the basic JavaScript mechanisms.

All books are available for free, you can read them directly in the repository.

Here is the order in which these books are recommended:

  1. Get Started.
  2. Scope & Closures.
  3. Objects & Classes.
  4. Types & Grammar.
  5. Sync & Async.
  6. ES.Next & Beyond.

Books No. 1 and 2 can already be read, books 3-4 are not ready yet. It should be noted that the second edition of these books is presented in this repository. And here you can find six books of the first edition.

Airbnb JavaScript Style Guide



The Airbnb JavaScript Style Guide , which can be found in the Airbnb JavaScript Style Guide repository , is a detailed and professionally written document.

This manual is able to help the programmer understand the internal mechanisms of the language, having examined in detail its basic mechanisms. Here you can find useful demo code snippets.

Here are some popular topics that are reflected in this guide:

  • Arrow functions.
  • Raising variables.
  • Work with types and type conversion.
  • Styles designed for ECMAScript 6+ (ES 2015+).
  • Testing.
  • Performance.

Storybook



In the Storybook repository, you can find the code of the development environment of the same name, designed to create user interface components. This environment allows you to work with component libraries, explore components in various states, and develop and test components in an interactive mode.

The Storybook environment runs outside the application. This allows you to develop interface components in isolation, which can improve the reusability of components, improve their testability, and increase development speed. You can create components in the Storybook very quickly, without worrying about the dependencies specific to a particular application.

Storybook includes a command-line tool and code samples to quickly learn this environment.

Front-end checklist



In the Front-End Checklist repository you can find a comprehensive list of what should be in the project before its release in production, or what should be checked before the project can be considered ready for real work.

This repository targets the web development client side. It addresses issues such as productivity, security, SEO. The requirements presented in this repository should be met by most projects. But some of these requirements, under certain conditions, may not be fulfilled. Some may be less important than others. Recommendations may include reading additional documentation, using various tools, watching videos with explanations of some difficult issues.

Summary


Thanks to everyone who read to this place. The repositories I talked about here are far from the only resources of this kind. I am sure that there are a huge number of other similar resources. But those repositories that I shared here bring me real benefit. I hope they come in handy for you too.

Which repositories (intended for web developers) do you find useful?


All Articles