chido
Hybrid static site generator based on react
Last updated 7 months ago by martiuh .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install chido 
SYNC missed versions from official npm registry.

Chido

Build hybrid, fast and cool React based apps

current: alpha

Installation

#npm
npm install chido react

#yarn
yarn add chido react

## for now react-dom is included in the chido package

package.json

"scripts":{
  "start": "chido start",
  "build": "chido build"
}

How does it work?

chido reads all the .js files in the ./src/pages directory (a very common pattern in static site generators) and builds a static site from them, if you want you can also export a @reach/router component from and chido will build an .html file for each Router or React component and since it supports code-splitting for .js and .css (incluidng .sass and .scss) the first print is really fast.

How will my app look like?

// .src/pages/movies.js
import React from 'react'
import { Router, Link } from 'chido'

const MoviesList = () => (
  <main>
    <h1>Cool movies!!!</h1>
    <ul>
      <Link to='/movies/the-two-towers'>The Two Towers</Link>
      <Link to='/movies/pirates-of-silicon-valley'>Pirates of Silicon Valley</Link>
      <Link to='/the-wolf-of-wall-street'>The Wolf of Wall Street!!!</Link>
    </ul>
  </main>
)

const CoolMovie = ({ movieName }) => (
  <div>
    <h1>{`${movieName} is a really cool movie!!!`}</h1>
    <Link to='/movies'>Back to movies</Link>
  </div>
)

export default function MoviesRouter() {
  return (
    <Router>
      <MoviesList path='/' />
      <CoolMovie path=':movieName' />
    </Router>
  )
}
file in ./src/pages outputs in ./public
index.js index.html
movies.js // MoviesList movies/index.html // It's static
movies.js // CoolMovie movies/movieName/index.html // It's dynamic

How do I access an hybrid site?

To make sure this works, you need to setup a router in your server, but not be afraid, I've done succesful tests with .htaccess (and chido comes with an automatic .htaccess router builder) in shared hosting and it's really fast (as you'd expect any static generatedd site to be). The trick is in redirecting all the dynamic looking requests to the static server location:

Examples

requested url served fiile and directory
/movies/episode-iv/ /movies/movieName/index.html
/movies/pulp-fiction/ the same as above
/movies/the-ring/ the same as above

Features

  • Code spliting (also valid for .css)
  • Fast HMR with newest react-hot-loader (getting ready for hooks!!!)
  • Chunk prefetching thanks to ``chido-link
  • Service worker

chido-link

As any other React based site generator, chido comes with it's own Link to move across chido's pages. it allows us to make a chunk prefetching which starts when the user hovers or clicks over it.

import React from 'react'
import { Link } from 'chido'

export default function About() {
  return (
    <main>
      <p>espaƱol: React es chido</p>
      <p>english: React is cool</p>
    </main>
  )
}

Current Tags

  • 0.5.881                                ...           debug (9 months ago)
  • 0.5.87-deubg.4                                ...           experimental (10 months ago)
  • 0.5.882                                ...           latest (7 months ago)

37 Versions

  • 0.5.882                                ...           7 months ago
  • 0.5.881                                ...           9 months ago
  • 0.5.88-debug.1                                ...           9 months ago
  • 0.5.88                                ...           9 months ago
  • 0.5.87-debug.8                                ...           9 months ago
  • 0.5.85-patch.4                                ...           9 months ago
  • 0.5.85-patch.3                                ...           9 months ago
  • 0.5.85-patch.2                                ...           9 months ago
  • 0.5.85-patch.1                                ...           9 months ago
  • 0.5.87-deubg.7                                ...           10 months ago
  • 0.5.87-debug.6                                ...           10 months ago
  • 0.5.87-debug.5                                ...           10 months ago
  • 0.5.87-deubg.4                                ...           10 months ago
  • 0.5.87-debug.3                                ...           10 months ago
  • 0.5.87-debug.2                                ...           10 months ago
  • 0.5.87-debug.1                                ...           10 months ago
  • 0.5.87                                ...           10 months ago
  • 0.5.85                                ...           10 months ago
  • 0.5.84                                ...           10 months ago
  • 0.5.83                                ...           10 months ago
  • 0.5.82                                ...           10 months ago
  • 0.5.81                                ...           10 months ago
  • 0.5.80                                ...           10 months ago
  • 0.5.79                                ...           10 months ago
  • 0.5.78                                ...           10 months ago
  • 0.5.77                                ...           10 months ago
  • 0.5.76                                ...           10 months ago
  • 0.5.75                                ...           10 months ago
  • 0.5.73                                ...           10 months ago
  • 0.5.72                                ...           10 months ago
  • 0.5.7                                ...           10 months ago
  • 0.5.6                                ...           10 months ago
  • 0.5.5                                ...           10 months ago
  • 0.5.4                                ...           10 months ago
  • 0.5.3                                ...           10 months ago
  • 0.5.2                                ...           10 months ago
  • 0.5.1                                ...           10 months ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 41
Dev Dependencies (12)
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |