Halo, Habr!
Saya ingin memperkenalkan generator situs statis open source yang ditulis dalam Node.JS , berdasarkan Webpack , kepada orang- orang Habrovsk .
Proyek ini terinspirasi oleh Jekyll yang sama, tetapi pada dasarnya menggunakan tumpukan teknologi modern. Sebagai contoh, ini menyediakan kemampuan untuk "hot load" (tanpa memuat ulang halaman) skrip dan gaya yang dimodifikasi.

Proyek ini ditujukan untuk audiens internasional, sehingga situs web resmi, dokumentasi dan video dalam bahasa Inggris.
Fitur
- Tumpukan teknologi modern
Buat situs modern dengan skrip dan gaya yang dikemas dengan baik (diperkecil, dikompresi, termasuk gzip).
Anda dapat dengan cepat mengembangkan prototipe situs dan menyebarkannya ke server.
Gunakan kerangka front - end modern (Webpack di dalam) - Vue.JS , React , Angular , Ember , dll. - Sangat cepat dan dapat diandalkan
Ini memproses ~ 1000 halaman per detik (tergantung pada konten halaman, serta daya prosesor).
Jelas bahwa proses rendering HTML statis jauh lebih cepat daripada bahasa yang ditafsirkan. - Hosting apa pun akan dilakukan
Itu tidak memerlukan database (informasi disimpan dalam file) dan berfungsi pada hosting apa pun (karena hasilnya adalah file dan aset html statis ). - Penempatan Tertanam
Buat preset dan sebarkan situs ke server melalui FTP, SFTP atau bahkan rsync
.
Baru-baru ini, materi telah dirilis tentang cara menyebarkan situs gratis now.sh. - Aman Tidak ada pembaruan
Anda dapat melupakan perlunya pembaruan rutin, seperti, misalnya, di WordPress yang sama.
Keamanan di level 100%, karena belum ada yang berhasil memecahkan HTML statis (fitur). - Gratis. Sumber terbuka
Gunakan untuk kesehatan. Jangan membayar sepeser pun.
Untuk tujuan apa itu cocok:
- Pembuatan prototipe cepat (membuat templat, menunjukkan prototipe yang berfungsi, dan kemudian menariknya ke mesin)
- Portofolio
- Situs web perusahaan
- Situs produk
- Blog pribadi
Cocok untuk situs mana pun yang tidak ada konten buatan pengguna.
Anda bahkan dapat membuat blog kolektif menggunakan Tarik Permintaan di Github .
Menggunakan Firebase atau API lain yang ditulis dalam bahasa apa pun (PHP, Ruby, Python, Node.JS) atau bahkan menggunakan WordPress (JSON-API), dan kerangka kerja front - end modern seperti Vue.JS atau React , Anda dapat membuat situs web dinamis untuk tugas yang lebih kompleks: toko online, katalog produk, dan sebagainya.
Mengapa itu tidak cocok:
- Forum
- Jejaring sosial
- Obrolan
Secara umum, untuk proyek di mana ada banyak konten yang dibuat pengguna, di mana banyak basis data bekerja dan halaman dihasilkan dengan cepat.
Persyaratan
Anda harus menginstal Node.JS (9.x atau lebih tinggi) dan NPM (biasanya berjalan bersama).
Unduh dan pasang (jika Anda belum melakukannya).
Yang terakhir direkomendasikan (v10.12.0) Node.JS.
Ini tidak bekerja dengan Node.JS <v9.x, karena SASS, Less, Stylus dikompilasi di luar kotak, dan node-sass memerlukan versi 9.
Anda juga dapat menggunakan Benang sebagai ganti NPM .
Cogear.JS berjalan pada:
Anda dapat menggunakan VSCode yang modis untuk pengembangan.
Instalasi
Sederhana, tanpa trik:
$ npm install cogear -g
Itu saja. Instalasi berhasil.
Cogear.JS setelah instalasi tersedia melalui perintah konsol cogear
.
Sekarang Anda dapat menghasilkan situs pertama.
Gunakan
Pergi ke direktori tempat situs web Anda disimpan.
$ cd ~/Sites
Panggil tim untuk menghasilkan situs baru:
$ cogear new site.io

Kemudian lanjutkan ke direktori ini:
$ cd ~/Sites/site.io
Luncurkan Cogear.JS dalam mode development
atau mode production
(persiapan untuk produksi) ( lebih lanjut tentang mode operasi ).
$ cogear
Opsi
Anda dapat melihat daftar opsi baris perintah dengan menambahkan flag --help
.

Tautan yang bermanfaat
Jika topik tersebut membangkitkan minat warga Habrovsk, saya dapat membuat serangkaian tutorial, apa dan bagaimana.
PS saya tidak memposting ke open source.
Ajukan pertanyaan, coba jawab.