0.0.1 โ€ข Published 4 years ago

nitya v0.0.1

Weekly downloads
3
License
MIT
Repository
github
Last release
4 years ago

nitya is a static site generator that converts a Ghost site into a static site using web scraping and wget. The project was inspired by buster, which was written in Python 2 and is no longer being maintained. nitya aims to integrate into existing JavaScript projects while providing a completely automated generation and deployment process and great support for execution inside a CI/CD pipeline.

Tweet me @vasanthdevelope and share your opinion and experience with this project ๐Ÿ˜ƒ

๐Ÿ’ฟ Installation

NPM

npm install -g nitya

Or, if you are using Yarn, then

yarn global add nitya

Note: Installing on Linux or macOS requires to be run with sudo.

๐Ÿš€ Quick Start

After installing nitya using the above command(s), you can use it in two ways:

๐Ÿค– Automatic (Recommended)

For nitya to run automatically without any further user interaction, it requires a configuration file in the working directory. The config file can be a YAML, JSON or even a JavaScript file that tells nitya where the Ghost site is hosted, any processing to be done, and where to deploy the processed static site. To create a new config file in the current working directory run the command:

nitya --init

To start nitya in automated mode, simply run the command:

nitya

๐Ÿง— Manual

The manual mode gives more control over the static site that is being built. It is useful if the deployment provider you intend to use isn't supported by nitya yet.

# To convert a Ghost site into a static site, run the command:
nitya build <URL of the Ghost site>

To preview the built static site, run the command:
nitya serve

As of now, to leverage the deployment process of nitya a configuration file is required. Although, you can implement your own deployment process.

๐Ÿ“น Demo

All my Ghost theme projects (aakari, samskara and kevala)'s previews are generated using nitya.

โœ”๏ธ Todo

  • Support for Netlify deployment
  • Ability to deploy without creating a config file
  • Better logging for CI/CD systems where tty won't be interactive
  • Enable support for GZipped servers
  • Implement JavaScript minification using TerserJS

๐Ÿ”ฌ Contributions & Issues

All pull requests are welcome! If you would like to discuss more about the project, you can join my Discord server or message me directly via Telegram/Twitter.

๐ŸŽ‰ Support

I work 24x7 on projects like this, and make educational computer videos. Although I don't do this for making money. Money is required, for me to live and eat as well as buy equipment and continue to maintain projects like this. If you have a heart ๐Ÿ’– and value my efforts. Please donate me a small amount through PayPal or become my valued patron over at Patreon.

๐Ÿ“œ License

The nitya project is released under the MIT license. Developed & maintained By Vasanth Developer. Copyright 2020 ยฉ Vasanth Developer.

vasanth.tech ย ยทย  YouTube @vasanthdeveloper ย ยทย  Twitter @vasanthdevelope ย ยทย  Discord Vasanth Developer