hyde

Version, currently master branch1 version
  • master branchlatestJan 6, 2020

github.com/hydecr/hyde

Hyde is a pluggable static site generator written in Crystal

11 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  hyde:
    github: hydecr/hyde
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
0.28.0
License
MIT
Author
Chris Watson <chris@watzon.me>
Target
  • hyde from src/cli.cr
Executable
  • hyde

Dependencies

Runtime Dependencies

  • clim0.9.0github: at-grandpa/clim
  • liquid*github: TechMagister/liquid.cr

README

# Hyde

Hyde is a Crystal's answer to gems like Jekyll and Middleman; a static site generator built around pluggability, ease of use, and speed. WIth Hyde everything is based around plugins including the HTML generation, allowing you to pick and choose what pieces you want for *your* site. What a concept, right? Hyde comes in two parts; the core and the CLI.

### Hyde Core

The core does all the behind the scenes work. It is the unsung hero of your Hyde install. You are only really going to worry about the Hyde Core if you're building a Hyde extension. Extension developers will hook into the `Hyde::Extensions` module to register their extension and then extend the `Hyde::Extension` class in order to hook into the build pipeline.

### Hyde CLI

The Hyde CLI is what most people will be interacting with, as it provides an easy way to generate and interact with your site. The CLI comes with these commands, but others may be added by extensions:

- `hyde new` - generates a new Hyde static site using the defaut template located [here](https://github.com/hydecr/hyde-site-template)
- `hyde build` - build your static site
- `hyde deploy` - use your [deployment config](#) to deploy your Hyde site
- `hyde serve` - use the built in development server to run your Hyde site locally

## Installation

**Note:** To install Hyde you will need to have Crystal installed. See the install instructions [here](https://crystal-lang.org/reference/installation/) for information on how to do that.

To install hyde just make sure you have crystal and shards installed then run

```bash
shards install watzon/hyde
```

You can also always clone this repo and install it like that

```bash
git clone https://github.com/watzon/hyde.git
cd hyde
shards install
crystal build ./src/hyde.cr
```

## Roadmap

TODO: Put a roadmap here

## Extensions Needed

- sass (probably using libsass)
- il8n
- webpack
- cache buster
- image optimization
- feed generation
- seo
- sitemap generation
- blog
- emojis

## Contributing

1. Fork it (<https://github.com/watzon/hyde/fork>)
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request

## Contributors

- [Chris Watson](https://github.com/watzon) - creator and maintainer