Friday, August 21, 2026

Sitecore Icon Search 2026: New UI, Favorites, Recent Icons + Browser Extension Updates

When I originally released Sitecore Icon Search back in 2018, the application was built around a searchable table containing thousands of Sitecore icons.

At the time, it solved the problem I was trying to fix: finding the right Sitecore icon without manually clicking through category after category in Sitecore's built-in icon selector.

Over the years, I've continued updating the app with new Sitecore icons, improved search data, JSS enum support, browser extensions, dark mode, and plenty of fixes along the way.

Last year, I gave the app a smaller visual refresh that cleaned up the styling, spacing, search bar, header, and finally added dark mode. It made the existing interface feel a lot better, but underneath it was still fundamentally the same table-based application I had originally built years earlier.

This time around, I wanted to go quite a bit further and rethink the core interface itself.

After eight years, I figured it was probably time. 😄


A Long Overdue UI Refresh

Sitecore Icon Search UI Refresh
Before
After

The most obvious change is that the table has finally been replaced.

Instead of displaying ten rows at a time and paging through search results, Sitecore Icon Search now displays icons in a responsive grid. All matching icons are available on the same page, so you can simply search and scroll through the results.

Search filtering still executes immediately as you type, but I've also made a few improvements to how searches are handled. For one, multiple search terms can now be combined to further narrow the results. For example, searching for user add will return icons matching both terms rather than treating the entire query as a single phrase.

I've also added a keyboard shortcut that I've found myself using quite a bit while testing the new UI: pressing / from anywhere on the page will automatically focus the search box.

Beyond the / shortcut, keyboard navigation is now fully in place. After searching for a keyword, you can use the arrow keys to move through the results and hit Enter to copy the selected icon's path.

In fact, Sitecore Icon Search is now hitting a 100% accessibility score:

Category filtering is also available directly alongside search, making it easier to narrow results to a specific Sitecore icon folder when needed.


Recent Icons, Favorites, and Icon Sizes

While rebuilding the grid, I ended up adding a few features that I didn't originally plan on but quickly found useful while testing the app.

The first is a new Recent filter. Every icon you copy is now added to a recent-history list stored locally in your browser.

Since the history is stored in local storage, it persists between sessions. If you copied an icon yesterday and can't remember exactly which one it was today, you don't necessarily have to search for it again.

There's also a new Favorites feature. Each icon card now has a small star in the upper-left corner that can be used to mark an icon as a favorite. Selecting the Favorites filter then brings all of those icons together in one place.

I can see this being particularly useful when planning out a set of templates. You can spend some time finding the icons you want to use, favorite them as you go, and then have that smaller collection readily available when it's time to actually apply the icons to your templates.

Both Recent and Favorites are stored locally in the browser, so there isn't any account, login, or server-side storage involved.

Finally, the new grid includes an icon-size slider for switching between 16x16, 24x24, and 32x32 previews.

This doesn't change the icon path being copied; it's purely a visual preference. The 16x16 setting lets you fit quite a few more results on the screen, while 32x32 is useful when you want a better look at some of the wonderfully pixelated artwork we've all been staring at inside Sitecore for years. 😄


Improved JSS Icon Support

Back in 2020, I added support for Sitecore JSS icon enums after a couple of colleagues pointed out how painful it was to find the corresponding SitecoreIcon enum value for an icon.

That functionality was originally implemented as an additional table column along with a JSS Icons Only filter.

With the new interface, JSS-supported icons now display a small JSS badge directly on the icon tile.

Clicking the icon itself copies the traditional Sitecore icon path, while clicking the JSS badge copies the corresponding enum value such as:

SitecoreIcon.Anchor

The JSS only filter is still available as well if you want to limit the grid exclusively to icons supported by the enum.


Copying Icons Without the Interruption

Copy confirmations are now displayed as small toast notifications at the top of the screen instead of a full overlay.

The randomly generated confirmation messages are still there. Some things don't need fixin'. 😄


Sitecore 10.5 Icons

Along with rebuilding the interface, I also updated the underlying icon dataset with the icons included with Sitecore 10.5. Admittedly, it's quite possible these newly added icons were introduced after 2022 (when I last went through the icon data extraction process), and I hadn't refreshed the datasource between XP releases, but they're in now!

After extracting and comparing the Sitecore 10.5 icon directories against the existing Sitecore Icon Search dataset, the application now contains 9,134 icons, up from 8,755.

The additions include:

  • 339 icons from the new NetworkV2 icon category
  • 40 additional icons added throughout existing categories, including document_json, checkbox_group, numbers_field, password_confirm, additional Marketing Automation icons, and several new persona avatars
  • No removed icons, so existing icon paths remain available

I've also added searchable attributes and synonyms for the new icons so they can be discovered through general keyword searches rather than requiring you to know the exact filename.


Browser Extension Updates

The browser extensions received the same UI overhaul as the web application.

I initially brought the updated experience into the Chrome extension, including the new grid layout, improved search, category filtering, dark mode, JSS badges, and the other interface improvements covered above.

I also updated both the Microsoft Edge Add-on and Firefox Add-on to match, so all three browser extensions are now aligned on the same refreshed UI and functionality.

The Sitecore integration itself hasn't changed.

When working in the Sitecore Content Editor, selecting an icon from the extension can still automatically update the item's Icon field and save the item. If you prefer to paste the copied icon path manually, that workflow still works.

One thing I'm particularly happy to finally bring into the extensions is JSS enum support. When an icon has a corresponding JSS enum, the JSS badge can be used to copy the enum directly without needing to jump over to the web application.

The latest Chrome version (v4.0.0) is available through the Chrome Web Store. Existing Chrome installations should receive the update automatically.

The updated versions are also available through the Microsoft Edge Add-ons and Firefox Add-ons stores for anyone using those browsers.

(FYI: Firefox's Addon submission review process always takes the longest.  At the time of this post, I'd already waited 10 days and it was still in Awaiting Review.  That said, the Firefox link may not yet be live yet, depending on when you read this - but I assure you, it's coming!)


A Quick Look at Usage

Before investing more time in another round of updates, I was curious about how much Sitecore Icon Search was still being used in 2026.

The answer is: it's still a small, very specific developer utility, but people are definitely still using it.

Over roughly the last 12 months, the Chrome Web Store reports 541 installs, an increase of 87.2% compared with the previous period.

During the same period, there were 118 uninstalls, which was down 18.06%.

Interestingly, the extension's Chrome Web Store listing received about 1.29K page views during that period, essentially flat at 1.76% lower than the previous period. I'm not going to pretend those numbers are enough to draw any grand conclusions, but seeing installs increase while listing traffic stayed relatively consistent was encouraging.

Traffic to sitecoreicons.com itself is a little more mixed.

So far in 2026, Google Analytics reports 961 active users, 884 new users, and about 2.6K views. Active users are down ~15%, and new users are down ~16% compared with the previous period.

More recently, though, the current quarter has been trending in the other direction with 212 active users, up ~18%, and 169 new users, up 29% over the previous period.

One metric I found particularly fitting was an average engagement time of about 38 seconds per active user.

Normally, a short engagement time might not sound all that great, but for Sitecore Icon Search, that's pretty much the goal lol. Search for an icon, copy it, and get back to whatever you were doing. You shouldn't have to spend 10 minutes on the site. 😄

The user base also continues to reach well beyond the US, with developers visiting from India, the Netherlands, the United Kingdom, Australia, China, Germany, and plenty of other locations.

To be clear, none of these numbers are the result of this UI refresh. They're the numbers leading into this release. It'll be interesting to come back to them later and see whether the new interface has any measurable impact.


Cleaning Up the Front-End

The UI wasn't the only part of Sitecore Icon Search showing its age.

The original application relied on jQuery, Bootstrap 3, and DataTables. Those dependencies made sense when I originally built the application in 2018, but after removing the table-based interface, there wasn't much reason to keep carrying them forward.

All three have now been removed.

Sitecore Icon Search is still built using plain HTML, CSS, and JavaScript with no external JavaScript framework dependencies. Aside from simplifying the codebase, this also reduced the amount of code and assets required to load the application (thx Claude).

Dark mode has also been updated with improved colors and contrasts.

On your first visit, the application now respects your operating system's preferred color scheme instead of defaulting everyone to light mode. You can still switch between light and dark mode manually afterward.

Finally, I've added a changelog to the About page to track future releases and application changes.


Eight Years Later...

Eight years after launching, I'm happy that developers are still using it. The usage numbers certainly aren't massive, but for a utility built to solve a very specific Sitecore developer problem, seeing it continue to get regular traffic and hundreds of extension installs years later is pretty cool.

I'm also happy to finally give the application the interface I've wanted for a while.

As always, if you run into an issue or have an idea that could make Sitecore Icon Search more useful, feel free to reach out.

Check out the updated Sitecore Icon Search

Happy Searching! 🔎

Wednesday, May 27, 2026

Team Sitecorepunk 2077 Wins the 2026 Sitecore Hackathon!

It happened again!!

I'm proud to say that 'Team Sitecorepunk 2077' (...it's still just me) has officially won the 2026 Sitecore Hackathon!  🏆



That's now two years in a row!  It's really an unreal feeling. 

A day or two after the event, I sifted through the SitecoreHackathon GitHub to pull some stats:  34 teams registered, 20 teams submitted something before the deadline.  

A solid Sitecore community turnout 👏👏👏  

I vibed together a submission showcase to digest all of this year's entries. 
Check it out here: Sitecore Hackathon 2026 Submission Showcase.


👟 Preparation

In my hackathon prep post, I basically said 'you can practice for this'.  Taking my own advice, I spent time leading up to the event building a couple of basic Marketplace applications locally using AI-assisted tools like Claude Code, OpenAI Codex, Microsoft Copilot, Cursor, VS Code, and Perplexity. 

After a few days into this deep dive, I wound up with a pretty solid LLM-friendly knowledge base containing relevant public Sitecore Marketplace SDK/Blok documentation, examples, and code samples to give my agents the context they need to successfully build and iterate on a Marketplace app.  With these technical barriers eliminated, I could focus on building features for whatever app I'd end up building during the event.  

Day of, I'd say I felt...pretty well prepared actually.  It wasn't my first rodeo, so I knew what to expect.   My workspace was ready, and I felt confident that I had the tools to execute whatever the categories/idea requirements. 

I took the afternoon off from work and forced a short nap, enough time to reset, and have dinner with the family.  

I had my calendar blocked.  Everyone at home knew that I'd be upstairs, locked away in my office for the next 24 hours (with the occasional break in between). 



I even had my Hackerspace Hero shirt on!


It was time.  

Wednesday, April 8, 2026

SitecoreAI Content Editor: Replacing Experience Editor and Preview with Working Pages Links

While working through a SitecoreAI implementation recently, I ran into a small usability issue in the good ol' Sitecore Content Editor.

The Experience Editor and Preview buttons are still sitting there in the Publish ribbon, looking as inviting as ever.

There's just one problem:

They don't work. 😄

In the SitecoreAI environment I was working with, clicking either button resulted in the following error:

Connection to your rendering host failed with an Unauthorized error.
Ensure the JSS Editing Secret is configured.

This makes sense considering the editing experience has moved on to Sitecore Pages, but it leaves Content Editor users with two very visible buttons that don't get them where they need to go.

Rather than telling users to ignore them, I decided to repurpose them.

The goal was pretty straightforward:

  • Replace Experience Editor with a SitecoreAI Page Builder button
  • Replace the existing Preview behavior with a working SitecoreAI page preview
  • Open the correct page for the currently selected Content Editor item
  • Carry the current language and version into the request
  • Support multiple sites and environments
  • Do it without building or deploying any custom .NET code

Sounds like a job for Sitecore PowerShell Extensions.


The Existing Ribbon Buttons

The Content Editor ribbon definitions live in the Core database.

The two items we're interested in are:

/sitecore/content/Applications/Content Editor/Ribbons/Chunks/Publish/Page Editor

/sitecore/content/Applications/Content Editor/Ribbons/Chunks/Publish/Preview

Rather than creating entirely new ribbon controls, I opted to reuse these existing items and replace their behavior.

Each button's Click field can execute an SPE script using item:executescript.

For the Page Builder button:

item:executescript(
  id=$ItemID,
  script={YOUR-PAGE-BUILDER-SCRIPT-ID},
  scriptDb=master
)

And for Preview:

item:executescript(
  id=$ItemID,
  script={YOUR-PREVIEW-SCRIPT-ID},
  scriptDb=master
)

Now we just need to give those buttons something useful to execute.


Creating the SPE Scripts

I created a small module underneath the Sitecore PowerShell Script Library to keep everything together.

/sitecore/system/Modules/PowerShell/Script Library/
    SitecoreAI/
        Sitecore Pages/
            Content Editor/
                Ribbon/
                    Publish/
                        Publish/
                            Page Builder
                            Preview

Both entries are standard PowerShell Script items.

For my implementation, I used the following icons:

Page Builder
/~/icon/apps/32x32/Paint.png

Preview
/~/icon/office/32x32/eye.png

Naturally, if choosing the perfect Sitecore icon becomes too difficult, I may know of a website that can help. 😄


Opening the Current Item in Sitecore Pages

The Page Builder script starts with the current Content Editor context item and builds the corresponding Sitecore Pages editor URL.

There are a few pieces of information we need along the way:

  • Current item ID
  • Current language
  • Current version
  • Site name
  • SitecoreAI tenant
  • Organization ID

In my case, the Sitecore solution contains multiple sites, so I determine the appropriate Sitecore site name based on where the selected item exists in the content tree.

Here's a sanitized version of the script:

The result is exactly what I was looking for.

Select a page in Content Editor, click SitecoreAI Page Builder, and the corresponding item opens directly in Sitecore Pages in a new browser tab.

No more hunting for the page again after switching applications.


Fixing Preview

Preview follows the same general idea, although constructing the URL requires a little more information.

In addition to the item, language, version, and Sitecore site, the script determines the route for the current item relative to the site's Home item and generates the appropriate rendering-host request.

Here's the sanitized version:

For the obvious reasons, I've replaced all tenant IDs, hosts, organization IDs, and secrets from my implementation with placeholders in the examples above.

The environment-specific SitecoreAI values can be retrieved from your Sitecore Cloud Portal / Deploy application.



Replacing the Ribbon Buttons

With both SPE scripts created, the last step is updating the original Core database ribbon items.

You can certainly update the fields manually, but since I needed to make the same change consistently between environments...PowerShell again.

The following script updates the Click, Header, and Tooltip fields on both existing ribbon items:

After updating the Core items, I rebuilt the Content Editor ribbon using the SPE utility available under:

Sitecore → PowerShell Toolbox → Development Tools → Rebuild ribbon integration points

Refresh the Content Editor and we're back in business!

Experience Editor is now SitecoreAI Page Builder, and the Preview button now launches a working preview for the selected item.


A Small Content Editor Quality-of-Life Fix

None of this changes how Sitecore Pages itself works, and it's certainly not some massive customization.

It simply makes the existing Content Editor workflow make a little more sense for users working in SitecoreAI.

If a button says Experience Editor and clicking it takes you to an error page, users are eventually going to ask why.

If we already know where they actually need to go, we might as well send them there.

And once again, SPE makes it possible to solve the problem without a custom deployment.

I hope this helps anyone else working through a similar SitecoreAI Content Editor setup!

Happy Sitecoring! ✌️

Thursday, February 26, 2026

Sitecore Hackathon 2026 Prep: 8 Tips From a Hackathon Vet

Sitecore Hackathon season is back!   After snagging a win with my SPE module (SPExAI) last year and basking in all the glory that comes with it, I'm returning under the Sitecorepunk 2077 banner (with a refreshed logo, too!).

thx NanoBanana

I always encourage annual participation in this event, but for those who haven't experienced it, there are some things worth acknowledging...

The Hackathon is often won before the clock starts.

Putting in some prep work to ensure you're able to spend your time wisely and facilitate smooth development is just as important as the time spent during the 24 hour development marathon.

Here's how I'm prepping for the 2026 Sitecore Hackathon, plus some tips/advice I've been giving a few internal folks at my org who decided to form their own team of three this year.

The "How does it start?" part (because everyone asks)

There's no "opening ceremony" where Akshay descends from the ceiling with a pyrotechnic backdrop and announces: "YOUR CHALLENGE IS...CONTENT GOVERNANCE. GO GO GO!"

In reality, it's all rather...unceremonious:

  1. On the week before or of the event, you'll receive an email from the organizers with your team's GitHub repo (and some general participation / Slack / sharing info). 
  2. About an hour before kickoff (for me that's around 6 PM CT) you'll receive the email containing the year's categories/ideas. They're intentionally open-ended.

    Here are some categories we've seen come through in last few years:
    • Best use of Headless using JSS or .NET
    • Best use of SPE to help Content authors and Marketers
    • The best enhancement to SXA
    • The best enhancement to the Sitecore Admin (XP) for Content Editors & Marketers
    • Best enhancement to SXA Headless
    • Best Enhancement to XM Cloud
    • Best use of AI
    • Best Module for XM/XP or XM Cloud
    • Best Migration Module to move from XP (traditional) to XM Cloud/Content Hub One/Headless CMS
    • Show us what you got!
  3. At 8PM STC / 7 PM CST, the clock starts.

That said, there are several ways you can prepare yourself (at least a little bit) ahead of time.

Not by writing a full submission early based on a guess of what the categories might be (absolutely 100% don't be that team), but by doing everything else that prevents you from wasting 4 of your precious 24 hours on unproductive churn.

Some Prep Philosophy

Hackathon time is for ideation, execution, and shipping. It's not the ideal time for troubleshooting why your local Sitecore installation is failing on step 4...

My practical TL;DR prep advice here is basically:

  • Pick your likely build lane (Traditional XM/XP Module vs SitecoreAI Marketplace vs Sitecore PowerShell Extensions)
  • Pre-flight your local or shared environment 
  • Understand the required deliverables (README + video + submission mechanics; see the bottom of https://sitecorehackathon.org/sitecore-hackathon-2026/
  • Stock the fridge and snack pantry...it's a long 24 hours. 
  • Rest up beforehand...again, it's a long 24 hours.

Let's dive in!


Tip 1: Decide your lane early (classic module vs Marketplace app)

Up until now, choices for Hackathon development were basically limited to a custom C#, SPEAK app, Chrome extension, CLI tool, or SPE module (I'm sure there are other creative options not listed that teams had ran with successfully, though).

The biggest differentiator in 2026, especially compared against previous years, is that the Sitecore Marketplace is now publicly available; including established development patterns and starter kits.


I expect a good chunk of teams are going to build Marketplace apps (which are often just decoupled Next.js apps that interact with Sitecore APIs) since:

  • They're easier to demo
  • Easier to package and install
  • Don't necessarily require a full local "traditional Sitecore" installation to participate.

Someone asked me, "Can I contribute without being deep in Sitecore development?"

Totally. Especially if your team goes the Marketplace route, someone without a whole lot of Sitecore expertise can absolutely contribute towards:

  • API integrations
  • UI/UX/FED
  • Build pipeline + packaging
  • Project/time management
  • Quality assurance/testing
  • Documentation
  • Video production

...all of which can be done without needing a full local XP instance.

You do still need someone on the team to understand the extension points and how the app runs in a hosted SitecoreAI context...but you're not forced into the "I must stand up XP locally or I'm useless" camp.

My likely path this year: Marketplace-first (unless the categories strongly scream for an in-platform module).


Tip 2: Machine/Workspace prep

This is where teams self-eliminate during the early stages of the event. If you prep your machine properly, you can avoid unnecessary setbacks.

GitHub readiness checklist

Personally, I've always made sure to accept the invite as soon as it comes through, clone it locally, and confirm I can push a commit before the Hackathon starts. If you need a check list:

  • Accept the repo invite
  • Clone the repo down locally
  • Confirm you can create a branch
  • Confirm you can push (a tiny "Initial setup and access verified" commit the day before should do) 
  • Confirm you can open a PR (or push directly if your team is living dangerously)
  • Confirm your teammates can do the same

Now you know the pipeline works! No surprises at hour 3 when you're trying to figure out why GitHub thinks you don't exist.

Environment readiness: pick one

You need something you can build against and demo.

Option A: Local Sitecore instance

  • Docker-based XP/XM setup, or an IIS-based instance you trust
  • Verified you can deploy, run, and debug
  • Verified you can install your final deliverable cleanly (this matters more than you think since the judges will need to follow those same steps to test your submission).

Option B: Hosted SitecoreAI org / demo instance

  • Ideal if you're doing Marketplace app work
  • No local XP required
  • You still need stable access, a clean demo space, and time to validate the "deploy, run, test, demo" loop

If your team has access to an existing SitecoreAI org, set up a demo site ASAP and make sure it's accessible to your team.  


Tip 3: Familiarize on Concepts before Hackathon weekend

If you haven't built a Sitecore Marketplace app before, ideally you aren't waiting for the categories email to start reading docs.


My recommendation here is to:

That's really all you need. You don't need to become a Marketplace wizard to be successful. There will be plenty to learn along the way 🙂

Bonus tip: Sitecore's Hackerspace workshop prerequisites from last year's Symposium might be useful in setting up your workspace with the right tools. If you can complete those ahead of time, you should be fine.

https://developers.sitecore.com/learn/getting-started/marketplace/hackerspace-workshop


Tip 4: Prep the whole entry, not just the code

Unfortunately, a good submission isn't just the code.

It's a combination of a:

  • Clean, working solution.
  • Clean, well-documented README.md.
  • Easy to follow installation instructions.
  • Strong video demo (5 minutes or less)
  • Public link(s)
  • Screenshots (optional, but usually worth it)


When you get access to your GitHub repo, carefully review the ENTRYFORM.md and SUBMISSION_REQUIREMENTS.md first and foremost.  Do as it says!

A default README.md will be present in the repo.  Make sure to include all of the necessary sections from the ENTRYFORM.md. It's up to you to make the final README.md impactful. 

Feel free to check out how I formatted my README.md last year - emojis and all 🚀:
https://github.com/Sitecore-Hackathon/2025-Sitecorepunk-2077  

Video: prep the pipeline now

Video production always takes longer than you think. Always.

My past tooling approach has been:

  • OBS Studio for recording (screen + mic) - but you can also do something like a Google Meet or Teams recording to obtain demo footage.
  • Clipchamp / CapCut / whatever for stitching (intro/outro, trimming, music)

If you want to prep similarly, work on prepping the following:

  • OBS installed and tested
  • Mic levels tested (seriously)
  • You know how to crop your capture area
  • You have a YouTube account/channel ready to upload to.
  • You've tested uploading an unlisted video

Music note: obviusly don't use random copyrighted tracks only to discover the audio on your uploaded video is muted - or your upload is flagged.  I've always used my own music to avoid the "surprise, your demo is silent" experience.  Adding music is completely optional...extra credit if anything - but if you're in need of something quick, check out Suno to generate something simple.


Tip 5: Team strategy

I've done Hackathon in a team of three, but most years I'm solo. Both are totally viable.

If you're a team, you can either be wildly effective together...or you can get in each others way for 24 hours.

If you're solo, you can move extremely fast...right up until you realize you also need to write the README, record/edit/upload the video, update X again, and remember your own name.

First tip: assign ownership

Whether you have 1 person or 3, every major deliverable needs a single "owner."

For example, if you're a team of three

  • Builder #1 (project setup, core development): core functionality (the "it works" person)
  • Builder #2 (core development,feature developement, polish): UI/UX, integration glue, edge cases
  • Producer (Ship It): README.md, screenshots, docuementation, install steps, video, final packaging

If you're solo: you'll still need "roles" (you're just time-slicing them instead)

This is my solo approach: I rotate between Builder Gabe and Producer Gabe. If I stay in Builder mode for 20 straight hours, it can easily fall apart toward the end.

Works for both

  • Keep one visible TODO list. If it isn't written down, it doesn't exist.
  • Decide how you merge before you start (PRs vs direct pushes).
  • Get a demo working early.
  • Schedule breaks.

Tip 6: Ideation

People get hung up here: "But we don't know the categories yet...how can we plan?"

While you can't pre-build the final solution, you can pre-build the engine that will help you build during the event.

What I like to do in advance

  • Keep an idea bank of category-flexible utilities
  • Prep reusable scaffolding (config handling, auth patterns, basic UI shell, logging + error display)
  • Think in "building blocks" (reporting/insights, author productivity tools, governance helpers, integrations that reduce friction)

Then when categories arrive, you're not inventing a concept from scratch.


Tip 7: Physical prep

24 hours is a long time. Having the right balance of food, drink, and comfort is crucial.

For me, that's:

  • Drinks (water, caffeine, tea, soda, etc)
  • Snacks that won't wreck you at 3 AM
  • A solid Spotify playlist ready to go
  • Comfortable chair
  • A plan for breaks

(Also, the last couple of years I had worked 10+ hours before the start of the Hackathon. 0/10 would not recommend.)

If you can take the day off and actually rest beforehand, do it. Your 24 hours will be better, your decision-making won't be trash, and your final hour won't feel like you're editing a video underwater.


Tip 8: Build in public

I like documenting my 24 hours on X as a living TODO list + progress log using the #SitecoreHackathon tag.  

I found that this approach helps keep me accountable and motivated throughout the night.  Is it one extra thing to remember to do every hour/couple of hours while trying build?  Sure, but it also serves as a good pausing point to reflect and understand what my next steps are, all with the added benefit of sharing your experience with the community in real-time.  

Plus, you'll end up with built-in material for a post-event recap 😏

Could you use LinkedIn? I guess you could...just don't expect anyone to see it on their feed for 3 weeks...


TL;DR Prep Checklist

1 week before

  • Pick your likely lane (module vs Marketplace)
  • Run the starter kit / sample app
  • Confirm your toolchain is good

48 hours before

  • Repo access confirmed
  • README template ready
  • OBS + video workflow tested
  • YouTube channel ready
  • Check that your development environment is still ready
  • Check Slack for a #hackathon channel to join

Day of

  • Rest
  • Eat
  • Do not do "one last thing" at work for 10 hours

1 hour before kickoff

  • Categories email arrives
  • Brainstorm ideas and pick one
  • Commit to a plan
  • Start building

Final thoughts

There are 32 teams participating this year, which is awesome to see!  The Hackathon is a great opportunity to learn, push yourself, and contribute something useful to the community.  It's also a great excuse to spend 24 hours building something cool and sharing it with the world.

If you're participating this year, drop your team name and which lane you're leaning toward.

Don't forget to capture some team selfies!

Good luck, hackers!

Tuesday, November 11, 2025

Sitecore Symposium 2025: In Pictures

Sitecore Symposium is always one of the highlights of my year. My very first two Symposiums were at the Walt Disney World Swan and Dolphin back in 2018 and 2019, so I was genuinely excited to be headed back to Orlando for a third round now 6 years later.

Now, a post like this is pretty atypical since I usually stick to technical recaps, but this experience and all these pictures had to go somewhere.  What better home to share with you all than here? 😉

Day 1: Monday

I was out the door early in Chicago with a carry-on and the Sitecore-tagged suitcase rolling behind me.

Tuesday, July 15, 2025

SPExAI GPT: SPE Script Generation, No Module Required

Earlier this year, I built SPExAI Report Builder during the 2025 Sitecore Hackathon, a natural language interface for generating Sitecore PowerShell Extensions (SPE) reports. The concept was simple: use plain English to get real, working scripts. The result? A winning module that turned heads and saved hours. 🙌

But what if your team loves the idea but doesn’t have the time, access, or appetite to install a custom module? Perhaps you just need a script now and then. Or maybe you're working in an environment with limited Sitecore customization privileges.

It would be great if you didn't need to rely on installing a module into your Sitecore instance to benefit from this technology. 


✨ Introducing SPExAI GPT

Introducing a new flavor of SPExAI; not as a Sitecore module, but as a custom GPT. It works entirely outside of Sitecore. No installs. No packages. No patch configs. Just a prompt box and your imagination.

Your prompt:

"Report of all templates (ID, Name, Path) and their usage count."

And SPExAI (the GPT version) responds with a fully working script.  Same quality, same intelligence, now universally accessible.



Simply copy the output, paste it into the Sitecore PowerShell ISE, and run it:


Results!



One benefit you get with the SPExAI GPT over the SPExAI module is that you can continue your chat, which isn't available in v1 of the SPExAI (it's all one-shot), allowing you to prompt beyond your initial prompt.  This is great for getting help with fixing errors you may encounter when using the initially generated script, or even for enhancing an existing script.

🧠 Under the Hood

The GPT version builds on the same core ideas as the Hackathon module:

  • 🔍 A system prompt trained to interpret natural-language Sitecore requests and produce accurate PowerShell reports.

  • 📚 A curated knowledgebase of common SPE scripting patterns tailored to tasks like item audits, rendering usage, field value searches, and more.

  • ⚙️ Designed to speak "Sitecore" fluently, not just ChatGPT syntax, but the nuances of $SitecoreContext, $item.Paths.FullPath, Get-Item, and all the other familiar constructs.

I've adapted the system prompt to better align with ChatGPT’s structure, ensuring cleaner completions, improved formatting, and fewer hallucinations.


🚀 Try It Yourself

If you're looking to generate SPE scripts without touching your Sitecore instance, this GPT-based version might be the way to go. Whether you're prototyping, documenting, or training a team, it removes friction and delivers fast results.

You can find the SPExAI GPT on the Chat GPT store by selecting GPTs in the left-hand panel of ChatGPT, then searching for `spexai`:



You can also access SPExAI GPT directly using this link:

If you use it, please take a moment to leave a rating. 
If you have suggestions for improving the GPT, I'm open to them! 😀