Coder Social home page Coder Social logo

ethomasjoseph / jekyll-bootstrap-gulp Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 1017 KB

Seed project for creating Bootstrap powered Github pages - easily!

Home Page: https://ethomasjoseph.github.io/jekyll-bootstrap-gulp/

License: Other

Ruby 4.79% HTML 45.74% JavaScript 9.85% CSS 39.62%

jekyll-bootstrap-gulp's Introduction

Github + Bootstrap Powered Website

This project is the code and configuration for my personal bliki website (blog + wiki), which gives me the power to write articles that evolve over time.

This uses an interesting mix of technology - aptly to power my technology bliki:

Driving Forces

The reason for me to start a Github powered website had multiple reasons:

  1. Flexibility of a blog & wiki as described by Martin Fowler. I used Blogger since 2006 for my blog, but I always wanted more power - especially when dealing with technology topics.
  2. Power and flexibility to control the look and feel of the content published.
  3. Learning and apply some frontend technologies such as Bootstrap, Bower & Gulp.
  4. Free - as in free speech as well as free as in free beer. Being in Github does not require me to have a web hosting provider. The even better part is that it is free for anyone to see and learn.

Focus

While the primary focus of this project is to control the content of my website(s), I will also try to focus that the overall project is reusable enough, so that anyone with similar intent can simply clone this repository - make changes and get started fast.

Having a Yeoman generator is even better, but just too far away at this point of time to consider doing it myself. But this being available on Github, I would not be surprised if someone will come up with a Yeoman generator!

Setting up your local environment

1. Install latest version of ruby and devkit - from http://rubyinstaller.org/downloads/.
2. Install Jekyll and other dependencies
gem install jekyll
gem install bundler
gem install github-pages
gem install jemoji
gem install wdm
3. Delete the Gemfile.lock and rebuild it:
bundle install
4. Make changes and run Jekyll locally to confirm that the command executes properly. Do not focus on the website output yet. More information on Jekyll on its official documentation at https://jekyllrb.com/docs/home/.
bundle exec jekyll serve
5. No doubt - you will have to also setup NodeJS and its friends. Install the latest NodeJS from https://nodejs.org/.
7. Now setup initial NodeJS dependencies for this project
npm install

Building & Publishing

This is where NodeJS and friends come to play. Gulp has been used to automate most of the tasks needed for building and running the website locally.

Updating web dependencies

If you need to update the web dependencies, update the version on bower.json and run the gulp task so that the latest versions of the web dependencies are applied.

gulp updatelibs

After making these changes, you will note that there are changes in the assets folder. Ensure that these changes are committed and pushed to the repository.

Editing website content and previewing

The normal website edit - whether it is changing the code or design, or whether it is adding new content, gulp tasks have been confugured for these as well, which will also run the Jekyll, so that you can exactly see how it will look when hosted on Github pages.

gulp serve

The above command will process the JavaScript files by concatinating, uglifying and linting them; start Jekyll server; and lint the generated HTML files as well!

Simply running gulp will do all the above tasks, but without running the Jekyll server itself, and hence will not also perform the linting of HTML files. This would be useful if your changes are small and can be directly pushed into Github pages.

Commit the files and pushing it to Github will publish the files.

Contributions

Please use the issues tracker on Github to report any issues on this project.

References

jekyll-bootstrap-gulp's People

Contributors

ethomasjoseph avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.