Roman KlimenkoBlogPhotography

May the Core be with you

February 20, 2016

pet-projectsitecore

Build Status

The Core is a proof of concept of Sitecore cross platform desktop application. It runs on Mac, Windows and Linux:

Mac OS X:

screenshot mac

Windows:

screenshot win

Under the hood

Here are main technologies on which Core is based on:

But I didn't intend to use as many buzzwords as possible. I take simplicity, ease of adding new features and supportability at the first place. This is why there is no TypeScript, JSX and Babel traspilers at the current stage of the project.

Setting up Sitecore

Connection and configuration management are not implemented. It is expected that Sitecore instance is available at http://sitecore.api/ and Sitecore Item Web API has setup like this:

In Sitecore.ItemWebApi.config, enable Sitecore Item Web API and allow anonymous access:

<site name="website"> <patch:attribute name="itemwebapi.mode">StandardSecurity</patch:attribute> <patch:attribute name="itemwebapi.access">ReadOnly</patch:attribute> <patch:attribute name="itemwebapi.allowanonymousaccess">true</patch:attribute> </site>

In Web.config, enable CORS:

<system.webServer> <httpProtocol> <customHeaders> <add name="Access-Control-Allow-Origin" value="*" /> <add name="Access-Control-Allow-Headers" value="Content-Type" /> <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" /> </customHeaders> </httpProtocol>

Build, test and run

There are only two global npm dependencies:

npm i -g gulp npm i -g browserify

When you have gulp and browserify installed globally, install all the development dependencies:

npm i

Build:

node_modules/gulp/bin/gulp.js

or, if you have gulp installed globally:

gulp

Run tests:

npm test

Run application:

npm run