O GitHub é um serviço gratuito para repositórios de projetos de software, porém, como é baseado em versionamento com GIT, qualquer espécie de arquivo, principalmente de texto, pode ser utilizado, e desenvolvedores sempre aproveitam estas ferramentas para torná-las em algo além do objetivo principal.

Existem diversos repositórios com listas de valiosos para desenvolvedores, designers de interface e outros profissionais de TI. Você apenas precisa saber onde procurar.

Este artigo apresenta uma série dos mais valiosos repositórios do GitHub para programadores.

Repositórios Github

Awesome Data Table References

https://github.com/nunomazer/awesome-datatable-references

Abrindo a lista apresento um repositório de minha responsabilidade, onde faço curadoria de referências para tabelas de dados abertos de instituições e órgãos brasileiros e mundiais.

Sempre que é necessário criar um campos de escolha de municípios, estados brasileiros, buscas por CEP, identificação por raça ou cor, os desenvolvedores se vêem construindo estes dados manualmente, muitas vezes com códigos diversos de tabelas cadastrais base.

Atualmente o repositório fornece os arquivos de dados para baixar em versões originais CSV, XLS, ODS, XML ou JSON.

O repositório é constantemente atualizado com melhorias, sendo que um dos itens de roadmap é a organização em modelos de dados prontos, com dump em SQL para facilmente serem incorporados em bases MySQL, PostgresSQL, SQLite, MongoDB, etc.

Organizações com dados disponíveis: IBGE, INEP, Governo Brasileiro.

Awesome

https://github.com/sindresorhus/awesome

Awesome - Demais, Espetacular .

Se você é um programador, provavelmente já ouviu falar das listas Awesome.

Cada repositório Awesome é uma lista selecionada de tecnologias, plug-ins e outros recursos para uma tecnologia específica.

O repositório referenciado aqui é uma lista organizada de todos os repositórios Awesome no GitHub. Quer uma lista para PHP ou Laravel? Para Dart ou Flutter? Para Git? O Awesome tem.

Wow, this is awesome !!

Awesome Design Patterns

https://github.com/DovAmir/awesome-design-patterns

Um repositório que organiza uma lista awesome com fontes de estudo para padrões de “projeto” (design) em software e arquitetura, em diversas áreas da Engenharia de Software e desenvolvimento de aplicações.

Se você é iniciante em tecnologia da informação, deveria se aprofundar nestes conceitos, teorias e técnicas. Se você é especialista e exepriente, por que não rever ou aprofundar conceitos que não aplica diariamente.

Alguns dos tópicos cobertos pela lista:

  • Padrões de projeto em linguagens de programação
  • Arquitetura geral
  • Arquitetura em Nuvem
  • Arquitetura Serverless
  • Micro serviços & Sistemas Distribuídos
  • Internet das coisas (IoT)
  • Big Data
  • Bancos de dados e Armazenamento (storage)
  • DevOps & containers
  • Mobile
  • Desenvolvimento Front End
  • Segurança

App Ideas

https://github.com/florinpop17/app-ideas

Não há melhor maneira de aprender a codificar do que construindo algo.

Segue uma linha similar a do repositório Project Based Lerning, mas foca em apresentar ideias de projetos, o que nem sempre é fácil de definir.

Desta maneira o repositório do App Ideas traz uma lista de ideias de aplicativos que você pode usar para melhorar suas habilidades de programação.

Big List of Naughty Strings

https://github.com/minimaxir/big-list-of-naughty-strings

Big List of Naughty Strings é uma lista de strings que têm uma alta probabilidade de causar problemas quando o usuário as insere. Útil para testar seu software e potencialmente descobrir problemas subjacentes.

Coding Interview University

https://github.com/jwasham/coding-interview-university

O repositório é um plano passo a passo para desenvolvedores da Web que desejam se tornar engenheiros de software completos. É uma lista com curadoria de recursos que ensina ciência da computação e prepara você para entrevistas de tecnologia.

Os itens listados irão prepará-lo bem para uma entrevista técnica em praticamente qualquer empresa de software, incluindo os gigantes: Amazon, Facebook, Google e Microsoft.

No próprio repositório é possível encontrar link para tradução em diversas línguas como Português e Espanhol.

Free For Dev

https://github.com/ripienaar/free-for-dev

O próximo da lista é o Free For Dev é uma lista - Grátis para desenvolvedores, de softwares SaaS - Software as a Service, PaaS - Platform as a Service e IaaS - Infrastructure as a Service, que possuem planos gratuitos para desenvolvedores.

Para entrar na lista, o nível gratuito do serviço não pode ser um teste e, se for limitado no tempo, deve durar pelo menos um ano. A lista tem um índice útil para encontrar rapidamente o que você está procurando.

Free Programming Books

https://github.com/EbookFoundation/free-programming-books

A Free Programming Books - Livros de Programação Gratuitos, faz exatamente o que diz seu nome. É uma lista de e-books gratuitos em um grande número de tecnologias e uma ampla variedade de idiomas.

Quer saber mais sobre o Elasticsearch? Existe um livro grátis para isso. Markdown? Existe um livro grátis para isso. Neo4j? Sim, existe um livro grátis para isso. Logicamente, uma série de livros gratuitos sobre linguagens de programação estão disponíveis

Front-End Checklist

https://github.com/thedaviddias/Front-End-Checklist

Front-End Checklist é uma lista de controle para todo e qualquer desenvolvedor web.

Uma elaborada lista de verificação de todos os elementos que você precisa ter e testar antes de colocar seu site em produção. Cada elemento vem com uma tag classificando como recomendada, altamente recomendada e não pode ser omitida.

Gitignore

https://github.com/github/gitignore

Gitignore é uma coleção de modelos .gitignore úteis que funcionam bem com linguagens de programação, estruturas, ferramentas ou ambientes específicos.

O repositório é muito bem organizado, sendo categorizado em modelos de pasta raiz, modelos globais para IDEs, ferramentas e sistemas operacionais e modelos de comunidade para casos de uso mais específicos.

JavaScript Algorithms

https://github.com/trekhleb/javascript-algorithms

JavaScript Algorithms - Algoritmos em Javascript, apresenta uma lista de algoritmos e estruturas de dados populares, implementados em JavaScript.

Cada código tem seu próprio arquivo README que explica como ele funciona, bem como links para leituras futuras e de aprofundamento.

É um excelente repositório para aprendizado, não apenas de Javascript mas principalmente de estruturas lógicas de programação, como: listas encadeadas, árvores binárias, hash tables, grafos, etc.

JavaScript Questions

https://github.com/lydiahallie/javascript-questions

E se você estiver procurando recursos para a linguagem do momento, o repositório JavaScript Questions - Questões sobre Javascript, é uma lista de perguntas que testam o quão bem você conhece JavaScript.

Este é um ótimo repositório para estudar e atualizar seu conhecimento de Javascript.

As perguntas vão do básico ao avançado conforme você avança na lista.

Laravel Best Practices

https://github.com/alexeymezenin/laravel-best-practices

Laravel Best Practices - Boas Práticas em Laravel, é um repositório que organiza, em várias línguas, boas práticas de programação a serem aplicadas em aplicações desenvolvidas no framework PHP Laravel.

É um excelente local de consulta para melhorar a arquitetura, legibilidade e estabilidade do código de seus programas, ou até mesmo, para adotar como padronizações de boas práticas em equipes de desenvolvimento.

NodeJs Best Practices

https://github.com/goldbergyoni/nodebestpractices

É um resumo do conteúdo mais bem classificado sobre as melhores práticas do Node.js, bem como alguns conteúdos que os colaboradores do repositório escreveram. Este repositório apresenta uma lista crescente de mais de 80 práticas recomendadas, guias de estilo e dicas de arquitetura.

Project Based Learning

https://github.com/tuvtran/project-based-learning

Project Based Learning - Aprendizado Baseado em Projeto, é uma lista de tutoriais de programação onde o objetivo é aprender uma linguagem de programação construindo um aplicativo do zero.

A lista é organizada por linguagens de programação, escolha a sua, faça um fork do repo e comece a aprender.

Public APIs

https://github.com/public-apis/public-apis

Public APIs - APIs Públicas, eu diria que é um dos meus repositórios favoritos.

É uma coleção de APIs gratuitas em uma ampla variedade de categorias.

Na lista você encontra desde fatos de gatos a uma API que rastreia atrasos no metro de Lisboa. Muitas de dados governamentaise até uma API que serve imagens aleatórias de pratos de comida.

RealWorld

https://github.com/gothinkster/realworld

Às vezes, criar um aplicativo TODO (Tarefas) não é uma ideia de projeto.

Seguindo a mesma linha do App Ideas, entra o RealWorld.

O repositório ajuda a construir um clone exato do Medium.com com diferentes front-ends e back-ends.

Um ótimo repositório se você quiser intensificar o aprendizado com um excelente projeto.

Tech Interview Handbook

https://github.com/yangshun/tech-interview-handbook

O repositório dedica-se à entrevistas técnicas. Isto é para quem é novo em entrevistas de tecnologia, mas que quer conseguir um emprego em uma empresa de tecnologia. Diferente de outros repositórios de entrevistas técnicas, este repositório não está vinculado a outros recursos. Em vez disso, apresenta todas as informações úteis diretamente dentro do repositório.

WTFJS

https://github.com/denysdovhan/wtfjs

JavaScript é uma linguagem relativamente simples. Mas certamente tem suas peculiaridades. WTFJS, inspirado neste vídeo da dotconferences, é uma coleção dessas peculiaridades. Essas peculiaridades são ótimas para aprofundar sua compreensão do JavaScript.

You Don’t Need

https://github.com/you-dont-need/You-Dont-Need

You Don’t Need - Você não precisa, é uma lista de frameworks ou linguagens de programação ou outras ferramentas das quais você, provavelmente, não precisa como programador.

Por exemplo, você pode não precisar do jQuery se estiver visando apenas navegadores modernos. Ou pode não precisar de Javascript para algum efeito que o CSS pode realizar por você.


Espero que o post tenha auxiliado a conhecer uma nova fonte de conhecimento útil nos repositórios Github para desenvolvedores nesta lista. E como o mundo Dev é colaboração, não esqueça de comentar sugerindo novos repositórios.

Não esqueça de guardar este artigo pois ele será constantemente atualizado com novos repositórios úteis.

Referência - 19 Must-Know GitHub Repos for Programmers