an open forum for geeks to connect, discuss & learn latest ideas, technologies and trends in software development
Using nanoc for static site generation. Jekyll/Octopress are hard-coded for blogging, while Nanoc is much simpler, doesn't take any assumptions and allows to build whatever type of content (not just blogs).
To start developing,
- Clone this repository
- Forget about whatever present in the root folder
- Worry only about the
content
folder - Run
bundle install
. You'll need RVM + Ruby 2.0 - Make changes (see below folder structure and steps to add a new event). Mostly you'll be dealing with
content
- Run
bundle exec nanoc
to compile the website - Run
bundle exec nanoc view
to start a server and browse tolocalhost:3000
For ease, there is a Guardfile. You can run bundle exec guard
, it will keep watching for changes and re-compile the site whenever any file is changed.
content
- this is the main source code, rest are all generated source code that can be ignoredcontent/assets
- contains all assetscontent/assets/app.sass
- contains the main stylesheetcontent/assets/img/speakers
- contains speaker imagescontent/index.html
- content for current geek nightlayouts
- layouts for default and archive versionsRules
- routing rules
- Rename the current
index.html
(in content folder) file to the year-month format for the last event. Eg, if the event happened in August 2021, rename the index.html to2021-08.html
- Create a new index.html file with the new event details. For format/fields refer to the previous html file. Update the edition, date/time, registration link and the talk details.
- Run
bundle exec nanoc
to compile the website - Run
bundle exec nanoc view
to start a server and browse tolocalhost:3000
- Pure HTML/CSS/Javascript website. No JQuery.
- Used HTML5 Boilerplate to generate the skeleton.
- Used colourlovers.com for the color swatches.
- Using SASS and Foundation for all the Styling.
- Icon fonts were generated and downloaded from Fontello. Only icons from the Modern Pictogram set were used for consistency.