Giter Club home page Giter Club logo

site's Introduction

What’s it?

A Jekyll based site for RSJUG site, access it here: http://www.rsjug.org/

Features

  • Responsive layout

  • Mobile 'friendly'

  • Disqus integration

  • Based on github pages

  • Promotes contribution (as it is hosted on github)

  • Automatically build on git push

  • Posts based on Asciidoc (via Asciidoctor and Markdown (focus on content instead of markup)

  • Client side search

Running it locally

  1. Fist you will need to install Ruby

    ℹ️
    Use Ruby 2.1 or superior
  2. Install Bundler gem:

    gem install bundler
    💡
    You can skip this step if you want to install gems individually, see required gems here
  3. Clone the project:

    git clone https://github.com/rsjug/site rsjug-site
    cd rsjug-site
  4. Run

    bundle install
    ℹ️
    It will install gems declared in Gemfile. You can skip this step if gems are already installed
    If you receive the error can’t find header files for ruby at /usr/share/include/ruby.h you need to install ruby development kit in your operating system:
    //fedora
    sudo dnf install -y gcc ruby-devel build-essential rubygems libxml2 libxml2-devel libxslt libxslt-devel
    //ubuntu
    sudo apt-get install ruby-dev build-essential
    //or
    sudo apt-get install ruby2.0-dev
    //or
    sudo apt-get install ruby2.2-dev
    if you get ERROR: Failed to build gem native extension., you need to install native extensions:
    //ubuntu
    sudo apt-get install libgmp-dev libgmp3-dev
    //fedora
    sudo dnf install rpm-build
    ℹ️
    output should be:
    Bundle complete! 7 Gemfile dependencies, 28 gems now installed.
    Use `bundle show [gemname]` to see where a bundled gem is installed.
  5. Then run Jekyll

    jekyll serve
  6. And finally access http://localhost:4000/site/

💡
Every file change is automatically published locally by Jekyll.

Site Anatomy

   SITE
    |
    ├──_data
    │   ├── global.yml (1)
    │   ├── nav.yml (2)
    ├──_includes (3)
    │   ├── disqus-comments.html (4)
    │   ├── tile.html (5)
    │   ├── title-group.html (6)
    ├──_layout
    │   ├── default.html (7)
    │   ├── inner.html (8)
    │   │
    ├──_pages (9)
    │
    ├──_posts (10)
    │
    ├──_site (11)
    │
    ├── RakeFile (12)
    └── _config.yml (13)
  1. Global settings variables

  2. Navigation menu bar labels and navigation urls.

  3. Page includes of html fragments

  4. Disqus integration

  5. Layout of posts rendered in initial page (mainly a excerpt of the post with a link to read the full post)

  6. Post detail layout

  7. Main site layout (/site)

  8. Inner pages layout like posts, menus and internal pages

  9. Every page (except posts) that have an url, eg: /sobre, /busca etc…​

  10. Site posts

  11. Generated site after jekyll serve or jekyll build

  12. Build and deploy rake task (executed by travisci after git push)

  13. Global Jekyll configuration like serving settings, plugins, includes/excludes etc…​

Publishing

Every git push triggers travisci which will run the deploy Rake task (see RakeFile) which will deploy the site to github pages.

ℹ️
Travis and the rake task is only needed because jekyll-asciidoctor gem is not installed in github pages, see details here.

Work done

  1. Forked this Jekyll with bootstrap theme;

  2. Added Asciidoc integration;

  3. Played a bit with webfonts;

  4. Added tags page;

  5. Added client side search using lunr.js;

  6. Added archive to list pages by year/month;

  7. Disqus integration

  8. Played a bit with performance analysis sites like google-speed-test, webpagetest.org and pingdom.

site's People

Contributors

rmpestano avatar brunomaomeh avatar jonaathansouzaa avatar jonaathansouzaatw avatar gelias avatar

Watchers

James Cloos 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.