It’s probably seems like Sitecore’s JavaScript SDK
(JSS) has been on the back burner since the last release. And yes, you read that right, JavaScript SDK (formerly known as JavaScript Services) got a little naming update to align better with its new .NET Core SDK
cousin.
Before I go any further, I want to acknowledge our wonderful community, who definitely has not taken any breaks. They have kept up blogging, making videos, presenting at virtual user groups, doing demos for us (🥰), and lighting Slack on 🔥🔥 - keeping the knowledge sharing and innovation going strong. The JSS team and I want you all to know how much we appreciate the collaboration.
Now, on to business. There have actually been big things happening in JSS behind the scenes.
At this point in my career, I’m fortunate enough to be able to say that I have experience speaking at different types of conferences and events. Developer-only conferences like Microsoft Build
and SUGCON
(Sitecore User Group Conference), business-focused events, and the mega-conference that blends the two worlds together - Sitecore Symposium
.
This post is part of a series - Sitecore JavaScript Services (JSS) Sandbox
Component reuse is an important subject for developers. As I was building structural grid components for my JSS app, I thought, “all projects need grid components, so is it possible to package these up for reuse?” So I set out to create a POC of the idea. This post shares how I published JSS components as an npm package that can be imported into other JSS projects.
Similar to disconnected mode, connected development mode also runs your JSS app on a local server (http://localhost:3000). The difference is that in disconnected mode the app is hydrated with content from yaml/json files, but in connected mode the app is hydrated with content from Sitecore.
To run connected mode, I needed to deploy my app to Sitecore, which did not go smoothly. This post covers the errors I experienced and how I solved them.
This post is part of a series - Sitecore JavaScript Services (JSS) Sandbox
My "jss-sandbox" site is going to showcase upcoming Sitecore community events. But before I could start the fun part of building components, I needed to create some mock content.
This post is part of a series - Sitecore JavaScript Services (JSS) Sandbox
The manifest API is important for modeling Sitecore data in disconnected, code-first workflow. If you are using a Sitecore-first workflow, then you do not need to worry about the manifest.
This post is part of a series - Sitecore JavaScript Services (JSS) Sandbox
This post explores customizing the jss scaffold
command. This post is part of a series on learning to work with Sitecore JavaScript Services (JSS).
When I followed the “Getting Started” guide from JSS Documentation to learn how to create new components, there was one section in the docs that caught my eye: Your First Component | Sitecore JSS Documentation
Visual Studio solutions for Sitecore projects are quite complex, as there are multiple integration points to manage. Automating the solution setup process accelerates project kick-off and enforces consistency across the development team.
This post demonstrates how to use Yeoman to create a custom Sitecore project generator. With Yeoman, we can create a Sitecore solution template that's source controlled and collectively managed.
Thank you so much to the 200+ people who attended my session - I'm thrilled that so many people got something out of it. Feedback/questions are always welcome, you can contact me on Twitter @AnastasiyaFlynn.
After having a hand in four Coveo for Sitecore projects just this year, I think there is value in creating an open source project for reusable Coveo components. This project has two goals:
One of the most important factors in authoring a successful Sitecore Marketplace module is maintaining compatibility with new Sitecore versions.
This post goes over how to utilize .NET Core's simplified csproj footprint and implicit package dependency resolution to build your project against multiple Sitecore versions in one step. Automate the dev-ops part of maintaining modules so you can just have fun and focus on the code.
Building upon the Placeholder Overrides functionality described in the last post, this post describes a small customization that enables any page template to bind multiple placeholder settings items to the same placeholder key. This is very useful in multi-site implementations.
A multi-site Sitecore implementation is when multiple different websites are deployed into the same Sitecore instance. Each site has its own unique set of renderings and templates. However, even sites that look and function completely different may still share a common set of generic renderings, like grid structures or an image carousel.
This post is part of a series
- Project Organization - Beyond Helix
- "Sitecore Flow" - The benefits of versioning your Sitecore environments
Put aside everything you know about using git because this post explores a completely untraditional method. This method enables you to roll back failed deployments in seconds. Additionally, it automates the clean up of obsolete files.
This post is part of a series
- Project Organization - Beyond Helix
- "Sitecore Flow" - The benefits of versioning your Sitecore environments
This post covers recommendations on how to structure your Sitecore solution to support synchronized environments and quick spin-up of new instances.
Today we will finish building a custom Coveo slider facet that filters based on whether the numeric range of a Sitecore item overlaps with the numeric range specified by the user. In Part 1 we extended an out-of-the-box Hive slider facet with extra fields and validation by creating Sitecore items and code-behind classes for the new rendering and settings. Today we will focus on my favorite part of the customization process - the JavaSript portion.
Today we will build a custom Coveo slider facet that filters based on whether the numeric range of a Sitecore item overlaps with the numeric range specified by the user. We will extend an out-of-the-box Hive rendering with extra fields and validation. This tutorial assumes you know the basics of working with the Coveo for Sitecore Hive framework.
You know how it's super easy to change how a rendering is rendered based on Sitecore.Context.PageMode
? If you've ever wished there was a similar check available for PageMode.IsIndexCrawlerCrawling
, then read on.
This blog post covers how to inject extra metadata text into Experience Editor. One of the great uses of this metadata text it to help content authors see a visual difference between renderings that use local datasources and renderings that use shared datasources.
This tutorial is aimed at Sitecore/.NET developers who are new to the node universe. In the previous post we set up a Sitecore project with 2 renderings that utilized ES6 JavaScript modules. We compiled and bundled the JavaScript modules and their 3rd party dependencies using npm and rollup. Today we will improve our setup by adding automation. We will utilize the following frameworks:
This tutorial is aimed at Sitecore/.NET developers who are new to JavaScript compilation. We will build Sitecore renderings that use JavaScript modules, and learn how to bundle those modules with rollup.
Sitecore allows us to delete all language versions from an item, so it's possible for items to end up in an invalid state.