Ao contribuir você concorda com a LICENÇA deste repositório.
Ao contribuir você concorda em respeitar o Código de Conduta deste repositório. (traduções)
"Um link para baixar um livro facilmente" nem sempre é um link para um livro gratuito. Por favor contribua apenas com conteúdo gratuito. Certifique-se de que é grátis. Não são aceitos links para páginas que requerem um endereço de email para obter livros, mas aceitamos listas que requerem.
Não é necessário saber Git: se você encontrou algo interessante que não está presente neste repositório, por favor abra uma Issue com todas as propostas de links.
Possuimos 6 tipos de listas. Escolha a mais adequada:
Certifique-se de seguir as diretrizes abaixo e respeitar a formatação de Markdown dos arquivos.
GitHub Actions executará testes para assegurar que suas listas estão em ordem alfabética e seguem as regras de formatação. Cerfique-se de que suas alterações passaram pelos testes.
https em vez de http -- desde que estejam no mesmo domínio e sirvam o mesmo conteúdo.http://exemplo.com ao invés de http://exemplo.com/http://exemplo.com/dir/ é melhor que http://exemplo.com/dir/index.html
http://exemplo.com/dir/book/current/ é melhor que http://exemplo.com/dir/book/v1.0.0/index.htmlhttp se possível (pois aceitar exceções pode ser complicado em dispositivos móveis).http disponível, mas o link continua acessível através de https adicionando uma exceção ao browser ou ignorando o aviso.et al".in process", como descrito abaixo.archived", como descrito abaixo. As melhores versões para uso são recentes e completas.(endereço de email é *pedido*, não obrigatório)..md. Tente aprender a sintaxe de Markdown. É simples!###), e subseções são títulos de nível 4 (####).A ideia é ter:
2 linhas em branco entre o último link e a nova seção.1 linha em branco entre o título e o primeiro link da seção.0 linhas em branco entre dois links.1 linha em branco ao final de cada arquivo .md.Exemplo:
[...]
* [Um Livro Incrível](http://exemplo.com/exemplo.html)
(linha em branco)
(linha em branco)
### Exemplo
(linha em branco)
* [Outro Livro Incrível](http://exemplo.com/livro.html)
* [Outro Livro Qualquer](http://exemplo.com/outro.html)
Não coloque espaços entre ] e (:
RUIM: * [Outro Livro Incrível] (http://exemplo.com/livro.html)
BOM : * [Outro Livro Incrível](http://exemplo.com/livro.html)
Se incluir o autor, use - (um traço envolto por espaços simples):
RUIM: * [Outro Livro Incrível](http://exemplo.com/livro.html)- Fulano de Tal
BOM : * [Outro Livro Incrível](http://exemplo.com/livro.html) - Fulano de Tal
Coloque um espaço simples entre o link e seu formato:
RUIM: * [Um Livro Muito Incrível](https://exemplo.org/livro.pdf)(PDF)
BOM : * [Um Livro Muito Incrível](https://exemplo.org/livro.pdf) (PDF)
Autor vem antes do formato:
RUIM: * [Um Livro Muito Incrível](https://exemplo.org/livro.pdf)- (PDF) Fulana de Tal
BOM : * [Um Livro Muito Incrível](https://exemplo.org/livro.pdf) - Fulana de Tal (PDF)
Múltiplos formatos:
RUIM: * [Outro Livro Incrível](http://exemplo.com/)- Fulano de Tal (HTML)
RUIM: * [Outro Livro Incrível](https://downloads.exemplo.org/livro.html)- Fulano de Tal (download site)
BOM : * [Outro Livro Incrível](http://exemplo.com/) - Fulano de Tal (HTML) [(PDF, EPUB)](https://downloads.exemplo.org/livro.html)
Inclua o ano de publicação no título de livros antigos:
RUIM: * [Um Livro Muito Incrível](https://exemplo.org/livro.html) - Fulana de Tal - 1970
BOM : * [Um Livro Muito Incrível (1970)](https://exemplo.org/livro.html) - Fulana de Tal
BOM : * [Será Um Livro Incrível Em Breve](http://exemplo.com/livro2.html) - Fulano de Tal (HTML) *(:construction: em processo)*
BOM : * [A Way-backed Interesting Book](https://web.archive.org/web/20211016123456/http://example.com/) - John Doe (HTML) *(:card_file_box: archived)*
aa vem antes de ab.um dois vem antes de umdoisSe observar um link no lugar errado, verifique a mensagem de erro no linter para saber quais linhas devem ser trocadas.
As noções básicas são relativamente simples, mas há uma grande diversidade de materiais que listamos. Aqui estão algumas observações sobre como tratamos essa diversidade.
Nossas listas fornecem um conjunto mínimo de metadados: títulos, URLs, criadores, plataformas e notas de acesso.
https) sempre são preferidas no lugar de URLs não-seguras (http) quando a HTTPS estiver disponível.Para trabalhos traduzidos, o autor original deve ser creditado. Recomendamos utilizar MARC relators para creditar criadores tanto quanto autores, como no exemplo:
* [Um Livro Traduzido](http://example.com/book-pt_BR.html) - Fulano de Tal, `trl.:` Beltrano O Tradutor
aqui a marcação trl.: utiliza o código MARC ralator para "tradutor".
Use vírgula , para delimitar cada ítem na lista de autores.
Você pode encurtar a lista de autores com "et al.".
Não permitimos links para Criadores.
Para compilações ou trabalhos remixados, o "criador" pode precisar de uma descrição. Por exemplo, os livros "GoalKicker" ou "RIP Tutorial" são creditados como "Compilado da documento do StackOverflow" (em inglês: "Compiled from StackOverflow documentation").
*(Conta Leanpub ou email válido solicitado)*.A primeira regra ao decidir a qual lista um material pertence é ver como o próprio material se descreve. Se diz que é um livro, então talvez seja um livro.
Dada a vastidão da Internet, não incluimos em nossas listas:
Nossas listas de programação competitiva não são tão estritas quanto a essas exclusões. O escopo do repositório é determinado pela comunidade; se deseja sugerir uma mudança ou adição ao escopo, por favor use uma issue para fazer a sugestão.
Não somos tão exigentes quanto a definição de "livro". Aqui estão alguns atributos que significam que um material é um livro:
Há diversos livros que listamos que não possuem esses atributos; pode depender do contexto.
Algumas vezes pode ser difícil de distinguir!
Cursos normalmente possuem manuais associados, que listaríamos em nossas listas de livros. Cursos possuem aulas, exercícios, provas, anotações ou outros materiais didáticos. Uma única aula ou vídeo por si só não é um curso. Um Powerpoint não é um curso.
Se você pode capturar a tela ou imprimí-la e reter sua essência, então não é um Tutorial Interativo.
.github/workflows/fpb-lint.yml)Para ativar a validação de URL, dê push num commit que inclua uma mensagem de commit contendo check_urls=file_to_check:
check_urls=free-programming-books.md free-programming-books-pt_BR.md
Você pode especificar mais de um arquivo para checagem, usando um espaço simples para separar cada entrada.
Se você especificar mais de um arquivo, os resultados de build serão baseados no resultado do último arquivo verificado. Você deve se atentar para o fato de que pode obter um build com verde de sucesso devido a isso. Então, certifique-se de inspecionar o build log ao final de cada Pull Request clicando em "Show all checks" -> "Details".