Olá Habr!
Eu gostaria de apresentar o gerador de site estático de código aberto escrito em Node.JS baseado no Webpack para o pessoal de Habrovsk .
O projeto é inspirado no mesmo Jekyll , mas basicamente usa uma pilha tecnológica moderna. Por exemplo, ele fornece a capacidade de "carregar a quente" (sem recarregar a página) scripts e estilos modificados.

O projeto é destinado a uma audiência internacional, portanto o site oficial, a documentação e os vídeos estão em inglês.
Funcionalidades
- Pilha de tecnologia moderna
Crie sites modernos com scripts e estilos bem compactados (compactados, compactados, incluindo gzip).
Você pode desenvolver rapidamente um protótipo de site e implantá-lo no servidor.
Use qualquer estrutura moderna de front - end (Webpack interno) - Vue.JS , React , Angular , Ember , etc. - Super rápido e confiável
Ele processa ~ 1000 páginas por segundo (dependendo do conteúdo da página e da potência do processador).
É claro que o processo de renderização de HTML estático é muitas vezes mais rápido que qualquer linguagem interpretada. - Qualquer hospedagem fará
Ele não requer um banco de dados (as informações são armazenadas em arquivos) e funciona em qualquer hospedagem (já que a saída são arquivos e ativos html estáticos ). - Implantação incorporada
Crie uma predefinição e implante o site no servidor via FTP, SFTP ou até rsync
.
Recentemente, foi lançado material sobre como implantar um site gratuitamente now.sh. - Seguro. Sem atualizações
Você pode esquecer a necessidade de atualizações regulares, como, por exemplo, no mesmo WordPress.
Segurança no nível de 100%, porque ninguém ainda conseguiu decifrar o HTML estático (recurso). - Grátis. Código aberto
Use na saúde. Não pague um centavo.
Para que fins é adequado:
- Prototipagem rápida (criou um modelo, mostrou um protótipo funcional e, em seguida, puxou-o para o motor)
- Portfólio
- Site da empresa
- Site do produto
- Blog pessoal
Adequado para qualquer site em que não haja conteúdo gerado pelo usuário.
Você pode criar um blog coletivo usando Pull Requests no Github .
Usando o Firebase ou qualquer outra API escrita em qualquer idioma (PHP, Ruby, Python, Node.JS) ou mesmo usando o WordPress (JSON-API), e uma estrutura moderna de front - end como o Vue.JS ou React , você pode criar um site dinâmico para tarefas mais complexas: loja online, catálogo de produtos e assim por diante.
Por que não é adequado:
- Fórum
- Rede social
- Bate-papo
Em geral, para um projeto em que existe muito conteúdo gerado pelo usuário, em que muitos trabalhos e páginas do banco de dados são gerados em tempo real.
Exigências
Você deve ter instalado o Node.JS (9.x ou superior) e o NPM (geralmente andam juntos).
Baixe e instale (se você ainda não o fez).
O último é recomendado (v10.12.0) Node.JS.
Ele não funciona com o Node.JS <v9.x, porque o SASS, Less, Stylus é compilado imediatamente e o node-sass requer a versão 9.
Você também pode usar o Yarn em vez do NPM .
O Cogear.JS roda em:
Agora você pode usar o VSCode na moda para desenvolvimento.
Instalação
Simples, sem truques:
$ npm install cogear -g
Isso é tudo. A instalação foi bem sucedida.
O Cogear.JS após a instalação está disponível através do comando cogear
console.
Agora você pode gerar o primeiro site.
Use
Vá para o diretório em que seus sites estão armazenados.
$ cd ~/Sites
Ligue para a equipe para gerar um novo site:
$ cogear new site.io

Em seguida, prossiga para este diretório:
$ cd ~/Sites/site.io
Inicie o Cogear.JS no modo de development
ou modo de production
(preparação para produção) ( mais sobre modos operacionais ).
$ cogear
Opções
Você pode ver uma lista de opções de linha de comando adicionando o sinalizador --help
.

Links úteis
Se o tópico despertar o interesse dos cidadãos de Habrovsk, posso fazer uma série de tutoriais, o que e como.
PS eu não publiquei em código aberto.
Faça perguntas, tente responder.