/devopera

Repository for Dev.Opera source code

Primary LanguageHTMLApache License 2.0Apache-2.0

Dev.Opera

We’ve rebuilt Dev.Opera as a static site, powered by Jekyll, Sass and Grunt. In this repository, you find all the source files and content to build the site, make improvements, and submit new articles.

Environment setup

  1. Install Jekyll, Sass and all needed gems by running sudo gem install jekyll stringex sass on the command line.
  2. Download and install Node.js with the default installer options.
  3. Clone the project by running git clone git@github.com:operasoftware/devopera.git.
  4. Run npm install inside the devopera folder.
  5. Run npm install grunt-cli -g to install Grunt globally.

Please install EditorConfig plugin for your editor to keep code style declared in the .editorconfig file.

Environment update

If you’ve set up all the above at some point in the past, and want to update your installation, these are the steps to follow:

  1. Run sudo gem update to install the latest Ruby gems.
  2. Run npm install inside the devopera folder.

Opening

To open Dev.Opera locally, simply run grunt. It will take up to 1 minute to:

  1. Build the site in “limited mode” with only the latest 150 posts.
  2. Start local server at http://0.0.0.0:33310 address.
  3. Open it in your default browser.

Development

To start developing Dev.Opera run grunt dev, it would take up to 1 minute to:

  1. Build site in a limited mode with only latest 150 posts.
  2. Start local server on http://0.0.0.0:33310 address.
  3. Open it in your default browser.
  4. Launch a watch task for all files.

So now every time you change project files, Dev.Opera will be rebuilt and you browser will update. For HTML and MD files it will still take up to 1 minute, for CSS it will be much faster (please request the same fast track for JS or anything else if needed).

Full build and deploy

To build a complete Dev.Opera, run grunt build: it will take a while to build the full site with all posts included in the _site folder. To deploy (sync build with remote server), run grunt deploy.

Notes

  • All instructions are for Unix (OS X, Linux, etc.) because Jekyll is not compatible with Windows.
  • You may require write access for all commands mentioned above. Type sudo, space and command if needed.