Houndstooth UI

A Free CMS for Jekyll and Github

Houndstooth gives content editors a simple interface to publish changes to static sites hosted on Github.

Houndstooth.work

Contents

Getting Started

Requirements

  • Install NodeJS >= 8.x
  • Install NPM >= 6.x
    • npm install --global npm

Quick Start

  • Install git pre-push hook

    ln -s ../../bin/pre-push .git/hooks
    
  • Install node_modules

    npm install
    
  • Start the React App

    npm start
    
  • Visit local instance

Advanced

Bowtie Dev Usage

Requires btdev from dev-setup to work!

  • Run make setup for initial repo setup

    make setup
    
  • Run make start to start local version after setup

    make start
    
  • Run make rebuild to rebuild local version after pulling changes

    make rebuild
    
  • Local App running on https://houndstooth.bowtie.dev

  • See Advanced > Local Services for details on running against local services

Local Services

  • Create file .env.development.local, add entries to customize local dev
    • Filename is .env.btdev.local to override local dev env using btdev
    • To run against local api:
      • REACT_APP_API_ROOT_URL=http://localhost:4000
    • To run against local oauth:
      • REACT_APP_AUTHORIZE_URL=http://localhost:5000/dev/oauth/authorize
      • REACT_APP_CALLBACK_URL=http://localhost:5000/dev/oauth/callback

Testing

Linting

  • Just lint the code and show warnings
    npm run lint
    
  • Lint code and attempt to fix simple issues
    npm run lint:fix
    

Unit Tests

  • Run ReactJS test suite (interactive)
    npm test
    
  • Run ReactJS test suite (CI mode - not interactive)
    CI=true npm test
    

Code Coverage

  • Prep CodeClimate build reporter before build/tests
    bin/cc-test-reporter before-build
    
  • Format and upload coverage to CodeClimate
    bin/cc-test-reporter after-build
    
jekyll logo

Want a Jekyll website built?

Hire a Jekyll developer