Este repositório contém a página e o blog Openfaas - https://www.openfaas.com, criado usando Jekyll e um garfo modificado do modelo CloudCannon Frisco e construído/hospedado usando páginas do Github.
As seções a seguir fornecem um guia básico para algumas alterações comuns que serão feitas no site, adicionando postagens, autores etc.
Todas as postagens do blog devem ter um título e descrição, isso ajuda no SEO. O nome do autor pode ser mencionado na descrição.
Formatar:
Introdução/visão geral curta (150 palavras)
Série de etapas lógicas ou pontos / tópicos
Incorporar diagrama conceitual, vídeo ou imagem para ajudar a apresentar o caso.
Aponte para documentos/github ou outra coisa.
Se necessário, mostre reconhecimentos a outras pessoas que colaboraram ou deram feedback que você usou. Ao trabalhar no Github, isso está disponível na história pública, então use com moderação.
Ao usar as etapas, use a voz ativa/imperativa para títulos.
Bom:
Ruim:
O inglês é amplamente falado, mas não é a primeira língua de todos os leitores. Esta publicação também abrange muitos tópicos técnicos, você pode ser um especialista, mas é improvável que seus leitores sejam, então considere esses dois quando escrever seu artigo.
Escreva em inglês simples o tempo todo, quando existir uma palavra mais simples usá -la, evite palavras derivadas do latim quando possível, evite gerúndios onde um verbo ativo pode substituí -lo.
Se você está escrevendo um artigo, sua voz deve encontrar e sua experiência. É por isso que você está escrevendo a postagem - tente evitar o uso passivo de tempo ou declarações, onde você pode usar uma frase que começa com I .
Antes:
Depois:
Use frases curtas:
Antes:
Depois:
Para algumas recomendações adicionais, consulte:
Este post, de Raphael A. Finkel, Universidade de Kentucky.
E [antes e depois] http://www.plainenglish.co.uk/campaigning/examples/before-and-after.html] de plainenglish.co.uk
Embora usar termos divertidos como "boom!", "Fun e lucro" e fazer piadas no texto, pode funcionar bem em um blog pessoal. O blog e a documentação do Openfaas devem ter um uso mínimo desse tipo de termos "divertidos" ou "fofos".
As opiniões devem ser apresentadas como seu próprio ponto de vista. Se você tiver dados para fazer backup de sua posição, isso ajudará a tornar seu ponto credível. Se você não tem dados, verifique se o leitor entende isso se relacionando com si mesmo I believe that .. , I found it easier to ..
Se você está declarando dados de fato / objetivo, também deve fazer backup com cotações, links etc.
Cuidado com as leis de direitos autorais. Se você usar um diagrama ou incorporar uma cotação de algum lugar, certifique -se de fornecer uma atribuição adequada.
Coloque todas as imagens em um sub-dobrador ./images/<post-name>
Cada postagem deve ter uma foto de fundo escolhida na fotografia gratuita de imagens ou fornecida com uma licença Creative Commons. Não puxe as imagens do Google sem verificar se o uso / licença é válido primeiro. Corte o fundo para uma largura de 1600 pixels. Use JPEG e mira em tamanho de 200kb-280kb ao exportar (aumentar a compressão)
Você pode diminuir ainda mais o tamanho, limitando a "qualidade" do JPEG de 100% para algo menor como 70-75%.
Pexels
Unsplash
Imagens e capturas de tela no post
Cada post do blog deve ter pelo menos um diagrama conceitual. Isso deve mostrar o fluxo lógico ou a visão abstrata do recurso, notícias ou design. Um tweet ou vídeo incorporado também pode servir a esse propósito.
As imagens são importantes para cada postagem, mas tente comprimir / cortar as imagens o máximo que é razoável e possível. Isso ajudará a mitigar o tamanho enorme que um repositório do GitHub pode crescer, que está cheio de imagens.
O conteúdo transversal afeta negativamente as pontuações de SEO, portanto, não deve ser feita, a menos que sejam feitos cuidados e atenção adicionais para incluir os cabeçalhos "OG" necessários. Verifique se todo o conteúdo do blog da comunidade OpenFaas é original.
Um arquivo de composição do docker é fornecido para simplificar o desenvolvimento/contribuição para o site e o blog, foi verificado para funcionar no OSX e no Windows 10 (ao desenvolver/escrever no Windows, use finais de linha do Unix em seu editor).
Execute o site localmente com:
docker compose up
Isso disponibilizará o site localmente em - http: // localhost: 4000.
Starting openfaas-www_openfaas-jekyll_1 ... done
Attaching to openfaas-www_openfaas-jekyll_1
openfaas-jekyll_1 | ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux-musl]
openfaas-jekyll_1 | Configuration file: /srv/jekyll/_config.yml
openfaas-jekyll_1 | Source: /srv/jekyll
openfaas-jekyll_1 | Destination: /srv/jekyll/_site
openfaas-jekyll_1 | Incremental build: disabled. Enable with --incremental
openfaas-jekyll_1 | Generating...
openfaas-jekyll_1 | Remote Theme: Using theme cloudcannon/frisco-jekyll-template
openfaas-jekyll_1 | done in 3.074 seconds.
openfaas-jekyll_1 | Auto-regeneration: enabled for '/srv/jekyll'
openfaas-jekyll_1 | Server address: http://0.0.0.0:4000
openfaas-jekyll_1 | Server running... press ctrl-c to stop.
Quaisquer alterações feitas no site do seu editor serão retiradas dentro do contêiner e o site será regenerado ( observe que isso não inclui alterações no _config.yml , você deve reiniciar o contêiner do docker para pegar essas alterações).
Por exemplo, se você adicionar sua própria postagem em _posts/2018-07-31-my-post.md verá Jekyll detectando a alteração e regenerará o site, a atualização do navegador receberá quaisquer alterações.
openfaas-jekyll_1 | Regenerating: 1 file(s) changed at 2018-07-31 21:28:36
openfaas-jekyll_1 | _posts/2018-08-22-my-post.md
openfaas-jekyll_1 | Remote Theme: Using theme cloudcannon/frisco-jekyll-template
openfaas-jekyll_1 | ...done in 2.0199265 seconds.
_data/users.ymlimages/users-logos/ A seção Contribuintes na página de destino está sendo gerada usando um pequeno script node localizado no arquivo generate-stats.js . Recomenda -se que você execute este script antes de abrir um PR. Isso garantirá que a seção dos colaboradores esteja atualizada:
node generate-stats.js
Nota: Requer que o Node.js seja instalado no seu sistema.
Para ter uma postagem no blog atribuída corretamente a um autor, eles devem ser adicionados à equipe criando um arquivo <author_name>.md no diretório _staff_members .
A exibição do membro da equipe na página da equipe é baseada na posição no arquivo data/membros.yml.
A atribuição em uma postagem no blog é baseada no nome do arquivo.
Por exemplo, _staff_members/alex.md pode ser usado para atribuição, definindo os seguintes metadados uma postagem:
author_staff_member: alex
Que resulta em uma caixa de autor sendo exibida com cada postagem atribuída:

A definição do autor leva o seguinte formato:
---
name: Alex Ellis
position: Founder
image_path: /images/author/ellis.jpg
twitter_username: alexellisuk
blurb: Founder of <a href="https://twitter.com/openfaas">@openfaas</a>. Open Source <a href="https://twitter.com/vmware">@vmware</a>.
---
| Chave | Detalhes |
|---|---|
| nome | Nome completo do autor contribuinte |
| posição | Descrição do texto livre de seu relacionamento com o projeto |
| image_path | Caminho para o retrato dos autores, este deve ser uma imagem de 154px * 154px |
| twitter_username | Autores Twitter Handle (sem @ ) |
| Blurb | Informações de texto gratuitas sobre o usuário, isso deve ser muito curto |
### contribuindo com uma postagem
Contribuir com uma postagem é tão direto quanto levantar um PR que contém sua postagem no formato de Markdown, juntamente com quaisquer imagens incorporadas.
Seu pós -marcação deve ser criado no diretório _posts e o arquivo deve tomar a seguinte estrutura.
yyyy-mm-dd-short-description-of-post.md
Se você estiver em dúvida, dê uma olhada nas postagens existentes em busca de idéias sobre o que é aceitável.
A postagem consiste em duas partes, um cabeçalho de matéria frontal YAML que descreve a postagem e fornece a Jekyll pistas para renderizar/atribuir etc. e o corpo postal, que é apenas uma marcação padrão.
Os metadados post assumem o seguinte formulário:
---
title: Introducing the OpenFaaS Operator for Serverless on Kubernetes
date: 2018-07-14
image: /images/kubernetes-operator-crd/pexels-asphalt-blue-sky-clouds-490411.jpg
categories:
- kubernetes
author_staff_member: alex
canonical_url: https://blog.alexellis.io/introducing-the-openfaas-operator/
---
| Chave | Detalhes |
|---|---|
| título | Título da postagem do blog |
| data | Publicar data da postagem do blog em formato yyyy-mm-dd |
| imagem | Caminho para imagem que será exibida por trás do título, isso deve ser adicionado em um diretório com o mesmo nome da postagem do blog no diretório images . |
| categorias | Uma lista opcional de categorias em que o post se enquadra, você deve sempre reutilizar categorias existentes de postagens anteriores onde viável |
| autor_staff_member | Nome do arquivo Autores no diretório _staff_members , usado para atribuição (consulte a seção anterior) |
| canonical_url | Você deve definir este campo se a postagem do blog já tiver sido publicada em outro URL. A preferência é dada ao conteúdo original. |
Enquanto o Jekyll suporta vários formatos, você deve enviar sua postagem no formato de Markdown.
O guia a seguir descreve a sintaxe:
Também é muito útil comparar as postagens existentes com os arquivos de marcação subjacentes quando você deseja aprender como formatar sua postagem.
A adição de imagens usa o formato normal de marcação e, embora as imagens externas sejam possíveis, é preferido que você inclua qualquer imagens no seu PR, elas devem entrar em um diretório com o mesmo nome que a postagem no diretório images , por exemplo, images/kubernetes-operator-crd/ .
Nota Tome cuidado para incluir apenas tamanhos de imagem sensíveis, você deve garantir que você redimensione/processou qualquer imagens antes de adicioná -las ao seu PR.
O site usa o idioma da folha de estilo SASS, quaisquer alterações nos sites parecem ser feitas usando SASS, não contribua com arquivos .css Raw.
Também estamos usando o Bulma como nossa estrutura CSS. Antes de fazer alterações / adições de estilo, considere:
O NavBar e o rodapé do site são configurados via YAML nos seguintes arquivos:
_data/footer.yml_data/navigation.ymlAdicionar entradas a qualquer um deve ser como último recurso, pois não devem ficar confusas.
Para uma compreensão mais detalhada de como o site é construído, consulte a documentação de páginas Jekyll e Github:
O site também usa os seguintes plugins:
Consulte a documentação acima para obter detalhes sobre como cada plug -in pode ser usado e configurado.
rm -rf outg/ * ; ffmpeg -i videoplayback.mp4 -vf " select='not(mod(n,2000))',setpts='N/(30*TB)' " -f image2 -y outg/out%03d.jpg
ffmpeg -f image2 -framerate 1 -i outg/out%003d.jpg -vf " scale=width=-2:height=ih/2 " out.gif