Do you want to explore Sitecore JSS and don’t know where to start with. This blog is a perfect to start with creating a sitecore jss site.
Pre-requisites:
Operating system which supports Node. (I am using Windows 10)Install Node. Recommended to use latest LTS release.
If node is already installed, you can check the version using powershell.
Let’s now start!!
Install JSS CLI using command below.
Open powershell and run the below command
npm install -g @sitecore-jss/sitecore-jss-cli
You can validate your installation by running the below command
jss –help
Create the application based on the templates
I will be using react template in this demo. (There are other types of templates as well like angular, vue etc..)
Open powershell and run the below command
Firstly set the path of the folder where you want to create the app
cd C:\SitecoreJssDemo
and then run below command
jss create nav-graphql-connected-demo react
where
nav-graphql-connected-demo is the name of your application,
react is the app-template
You will see a folder with all the artefacts are created.
Open the app folder in Visual Studio Code.Now to run the application in
disconnected mode, open a terminal in VS Code and run the below command
jss start
The app will be built and a local development server will be started. Your jss app will now rendered on http://localhost:3000/ (will automatically open in default browser. If it doesn’t open try to hit this url on browser)
To run the app in connected mode, run the below command
jss start:connected
When I try to run the above command, I get the below error.
Before trying to run in connected mode, please install the Sitecore Javascript Services or Sitecore Headless Rendering package to your sitecore instance based on your version of Sitecore. (if not already completed)
and follow below steps to link and deploy app to a running sitecore instance. Below are the steps to do it.
Create a Sitecore Api Key1. Login to sitecore and open content editor. Navigate to path /sitecore/system/Settings/Services/API Keys 2. Create an API Key and provide a name 3. Set the properties as below of the API Key created. (These values are for local development setup) 4. Keep the API Key item id. In my case it is {3F9C5109-1785-4578-856D-A57209D883A8}Now when you ran jss start:connected command for first time you see below error
Put the values of these as per below snapshot and press enter
If you do not have SSL then put host name without SSL like http://jssapp.dev.local
Run below command to deploy the config files to your sitecore instance.
Check your config details. (If you need to do any change in config do it now)
jss deploy config
jss deploy app -c -d
I got the below error while running this command
Sending package sitecore\package\nav-graphql-connected-demo.1619475767488.manifest.zip to https://jssapp.dev.local/sitecore/api/jss/import… Unexpected response from import service: connect ETIMEDOUT
To resolve this issue, add an entry in hosts file located at C:\Windows\System32\drivers\etc
use the host name which was provided during the setup
and add the same host name in sitecore instance binding on IIS (I am putting non-SSL binding so please ensure your jss import url and hostname in scjssconfig.json should be non-SSL)
now try to run the deploy command
jss deploy app -c -d
Publish the siteTo run the app in
connected mode, use below command
jss start:connected
To run the app in
integrated mode, hit the url http://jssapp.dev.local
References- https://jss.sitecore.com/docs/client-frameworks/getting-started/quick-start
Happy Sitecoreing !! Thanks Sitecore