Giter VIP home page Giter VIP logo

sitecore.demo.headless's Introduction

Sitecore.Demo.Headless

This repository is used to share Sitecore Headless (Content Hub + Sitecore XM + Boxever + OrderCloud) demo and related assets.

Documentation

The setup/installation documentation is available in the docs folder.

Version Support

Sitecore 10.1.

Demo Parts

Server

To run in integrated mode, the server project is required to provide APIs and sychronize Unicorn items.

The server-side part is located under \fitness\server.

Kiosk

A website meant to be displayed on a tablet in a physical sport shop. It allows shoppers to register for upcoming events with their email address. An email is then sent to them with a link to the Fitness app personalized from their kiosk personalization actions and registrations. This is the entry point of the user journey.

The sources for the app are located under \fitness\kiosk.

Fitness

A progressive web app (PWA) that can be installed on devices. It allows people to browse events, favorite them, and register to them. It allows registration to the system and personalization. It allows to browse a shop categories and products.

The sources for the app are located under \fitness\app.

Node-SSR

Project to demonstrate a way to server-side render the apps with node.js / Express outside of a Sitecore instance.

The sources for the app are located under \fitness\node-ssr.

Boxever Proxy

A .Net Core project that aims to protect the Boxever API key. It provides a proxy to get a guest information and get/set a guest data extensions. This project must be run from Visual Studio when running one of the JSS app in disconnected or connected mode.

The sources for the proxy are located under \docker\images\demo-boxever,

Content Hub PCM to OrderCloud Integration

A .Net Core project that sends Content Hub PCM products to OrderCloud by using a mapping object.

The sources for the integration are located under \integrations\OrderCloud.

Init Container

A .Net Core project that initializes the Sitecore instance just after the contaiers are started. It runs jobs like publishing to the web database, populating the solr managed schema, rebuilding the solr indexes, rebuilding the link database, and warming up the CM and the CD instances.

The sources for the init container are located under \docker\images\demo-init.

sitecore.demo.headless's People

Contributors

adoprog avatar jammykam avatar jeanfrancoislarente avatar sc-ivanlieckens avatar scottmulligan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sitecore.demo.headless's Issues

Error occurred when executing task 'Start-XConnect-Service' in build.ps1

When running the build.ps1, the build is not completed successfully and displayed the below error message.

After that, even when I manually tried to start the service "FitAppxconnect.dev.local-MarketingAutomationService", the service is not getting started.

The MarketingAutomationService was running without any issue before executing the build.ps1.
Version: Sitecore 9.3 XP0

Error while executing build.ps1

Publish-XConnect

========================================
Start-XConnect-Service

Attempting to start the service fitappxconnect.dev.local-MarketingAutomationService.
Cake.exe : An error occurred when executing task 'Start-XConnect-Service'.
At C:\projects\Sitecore.HabitatHome.Omni\fitness\server\build.ps1:241 char:1
&$CAKE_EXE $cakeArguments
CategoryInfo : NotSpecified: (An error occurr...nnect-Service'.:String) [], RemoteException
FullyQualifiedErrorId : NativeCommandError

Error:
One or more errors occurred.
Time out has expired and the operation has not been completed.
PS C:\projects\Sitecore.HabitatHome.Omni\fitness\server>

Error in "log xconnect-log-Sitecore92-MarketingAutomation-20200205"

2020-02-05 16:30:24.582 +00:00 [Error] Error initializing XConnect client.
System.AggregateException: One or more errors occurred. ---> Sitecore.XConnect.XdbCollectionUnavailableException: The HTTP response was not successful: InternalServerError
at Sitecore.XConnect.Client.WebApi.ConfigurationWebApiClient.d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Sitecore.XConnect.Client.XConnectClientConfiguration.d__32.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at Sitecore.XConnect.Client.Configuration.XConnect.Extensions.ServiceCollectionExtensions.InitializeXConnectClientConfiguration(IServiceProvider provider, XConnectClientConfiguration config)
---> (Inner Exception #0) Sitecore.XConnect.XdbCollectionUnavailableException: The HTTP response was not successful: InternalServerError
at Sitecore.XConnect.Client.WebApi.ConfigurationWebApiClient.d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Sitecore.XConnect.Client.XConnectClientConfiguration.d__32.MoveNext()<---

2020-02-05 16:30:24.643 +00:00 [Error] Failed to start the Marketing Automation Engine service.
System.InvalidOperationException: This configuration has not been initialized. Please call the initialize method before using it.
at Sitecore.XConnect.Client.XConnectClientConfiguration.CheckInitialized()
at Sitecore.XConnect.Client.XConnectClientConfiguration.get_CurrentModel()
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.b__0(ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.b__0(ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.b__0(ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
at Sitecore.XConnect.Configuration.Extensions.<>c__DisplayClass28_0.b__1(IServiceProvider provider)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.b__0(ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitTransient(TransientCallSite transientCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitIEnumerable(IEnumerableCallSite enumerableCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.b__0(ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.b__0(ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetService[T](IServiceProvider provider)
at Sitecore.Xdb.MarketingAutomation.Engine.App.ServiceConfiguration.get_Engine()
at Sitecore.Xdb.MarketingAutomation.Engine.App.EngineService.OnStart(String[] args)

How to fix error while deploy App

Hello All,

My application working properly on local, but when I deploy to server I am getting below error.

My Navigation component is this.

export default function(manifest) {
manifest.addComponent({
name: "Navigation",
icon: SitecoreIcon.NavigateUp_lightgrey
});
}

getting below error

Error generating manifest The component 'Navigation' used on route 'home' was not defined in the manifest. Please define this component with 'manifest.addComponent()', or change the name to an existing component name.

Thanks in advance

Make contact information and profiling info immediately available

As part of a Customer Journey, we are pushing visitors from the PWA app to the Habitat Home main site and showing that they are interested in a particular sport in the demo sidebar.

It is currently required to "End Session" in the PWA before pushing the user to the Habitat Home site to continue the journey (This is OK but usually forgotten during a demo).

Investigate how to push the contact details (name, email) and profiling info to xConnect in real time to deliver a great Customer Journey story that is a bit more "demo-proof"!

Aha! Link: https://habitathome.aha.io/features/JSS-30

Could not load Cake.XdtTransform.dll (missing DotNet.Xdt)

Encountered this error attempting to run build.ps1. See full error below. Found similar issue here:
phillipsj/Cake.XdtTransform#34

Workaround is to change #addin for Cake.XdtTransform to:

#addin nuget:?package=Cake.XdtTransform&version=0.18.0&loaddependencies=true

Full error

PS server> .\build.ps1
Preparing to run build script...
Running build script...
Could not load C:\dev\Sitecore.HabitatHome.Omni\fitness\server\tools\Addins\Cake.XdtTransform.0.18.1\lib\netstandard2.0\Cake.XdtTransform.dll (missing DotNet.Xdt, Version=2.1.1.0, Culture=neutral, PublicKeyToken=null)
(2699,12): warning CS1701: Assuming assembly reference 'Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' used by 'Cake.Json' matches identity 'Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' of 'Newtonsoft.Json', you may need to supply runtime policy
(2705,12): warning CS1701: Assuming assembly reference 'Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' used by 'Cake.Json' matches identity 'Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' of 'Newtonsoft.Json', you may need to supply runtime policy
C:/dev/Sitecore.HabitatHome.Omni/fitness/server/CakeScripts/helper-methods.cake(116,9): error CS0103: The name 'XdtTransformConfig' does not exist in the current context
Error: Error(s) occurred when compiling build script:
C:/dev/Sitecore.HabitatHome.Omni/fitness/server/CakeScripts/helper-methods.cake(116,9): error CS0103: The name 'XdtTransformConfig' does not exist in the current context

Add to Home Screen

Will this app automatic prompt for Add to Home Screen on Mobile??

I'm facing an issue. My service worker is registered successfully, static files are also cached. Icons for different devices, Theme color, name, start_url are also set in Manifest.json and the file is also imported on index.html but still it is not prompting for A2HS.

Please suggest!

Aha! Link: https://habitathome.aha.io/features/JSS-25

Modify "Load More" button on the All Events page

Load Events page on the All Events page does not allow immediate scrolling when in full screen mode. There seems to be a 5 second delay before scrolling works. Doesn't seem to be an issue in Mobile preview mode (developer tools)

Load Events desired behavior:

  • 'Load more' only appears when the user reaches the bottom of the screen
  • 'Load more' disappears when the user scrolls up and is not at the bottom of the screen
  • Load more currently seems to redraw the entire page showing the scroll bar from the top
    • nice to see if we could not refresh from top down (maybe freeze redraw) and only draw the new events
  • Change transparency (slightly) of Load more button to see the last two events on the page
    • or at least add some buffer space where Load more is not on top of the last two events.
    • currently the last two events are not clickable, and once you click on Load More they end up above the fold

Aha! Link: https://habitathome.aha.io/features/JSS-18

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.