Welcome to the Umbraco Community!

The Umbraco Community is at the heart of the Umbraco ecosystem. It’s built on people coming together to share ideas, help each other, and make Umbraco better every day.

Come see how the Community stays connected, what makes it such a great place to be, and how you can join in and get involved. We always have room for more people to join!

MVP Summit audience.jpg 54610954933_1fd227623f_o (1).jpg Panel speaking in mics at umbraco event Person looking at laptop 52993341606_3b3a6a6991_o.jpg 2025 Group picture 1740139582170.jpg IMG_4217.jpg IMG20251030182101.jpg 2025 Community Teams day at Umbraco HQ DSC04687.jpg DSC05663.jpg MVP getting high five on stage MVPs speaking at MVP Summit 2 MVP waving at MVP Summit MVPs showing off awards IMG20251106141733.jpg 20251204_173423.jpg b6f67a24-17ea-4a21-bc55-65eca97d86ac.jpeg Codegarden 2023 Business Summit - people talking.jpg People high five'ing at Codegarden.jpg Boat ride 2025 Codegarden runners running

Get involved in the community

There's so many ways to get involved in the Umbraco community. 

A person looking into his laptop surrounded by people and light

New here? Welcome! We have a complete newcomer's guide to Umbraco and the Umbraco Community waiting for you.

A woman concentrating and looking down

No matter your interests, skills and time availability, there’s a way for you to participate in the Umbraco community. 

Two people high five'ing

Umbraco Meetups are a great way to engage with the Umbraco community and meet other like-minded people.

See what's happening

Join a meetup or an event near you - see all upcoming Umbraco events here

Blog posts from the Umbraco Community

Explore the latest blog posts from our community. Want to add your future blog posts to the list? Submit it here!

Umbraco testiesimerkit nyt Umbraco 18:lle

ℹ️ Opin suomea Tämä on mulle harjoitus oppimaan suomea. Voit myös lukea englanniksi. Olen päivittänyt testiesimerkkirepositorion Umbraco 18:ksi. Tässä on muutokset: Tärkeämmin muutos: end-to-end testiesimerkit ovat muuttuneet typescriptiin Ensin, testit olivat dotnetiksi, mutta olen muutanut niiden typscriptiin. Olen päätänyt sitä koska C#:n generated clientin päivittämisen Umbraco 18:lle oli tosi vaikea. Mun piti käyttää ruma work-aroundia tai muuttaa sen manuaaliseen toteutukseen. Molemmat tuntuivat pahalta. Lisäksi, dotnetissa Playwrightilla on kovat haitat, jotka Node:ssa Playwrightilla ei ole. Kerron lisää uudesta end-to-end testista typescriptissa toisessa blogissa. Published content on muuttunut Umbraco on siirtänyt muutamaa ominaisuusta IPublishedContent:sta IPublishedElement:iin. Olen päivittänyt unit-testing esimerkien niin että ne toimivat Umbraco 18:ssa. Nämä muutoksilla ei ole vaikutusta unit-testiin. Lisähuomautus Umbraco oli muutanut Umbraco 17:ssa miten indexit ovat alustaneet. Muutokset yksinkertaistavat in-memory sovelluksen ja se tulee helpompi tarkistaa onko sovellus käynistänyt integration testissä. Repositorio ei ole vielä ajan tasalla noiden muutoksien suhteen. Kohta päivitän integration testiä. Siinä on kaikki päivitys oli lyhyt. Vain end-to-end testit ovat paljon muutuneet. Jos et ole vielä katsonut, menee repositorioon nyt. Se on oppiopas aloittamaan testata Umbracossa.

by Dennis Heutinck

Umbraco testing examples now also for Umbraco 18

I updated the testing reference repository to support Umbraco 18! Here are the changes: Most important: End-to-end testing examples have been migrated to typescript. It used to be in dotnet, but I changed it into typescript. I made this decision because updating the generated C# client for the Management API to Umbraco 18 was very difficult. I would have had to either use ugly work-arounds or replace the generated client with a manual client. Neither option seemed right to me. In addition to that, I had already noticed that Playwright in dotnet had significant downsides compared to Playwright in node. I will share more about how the new tests work in a separate blog. Published Content has changed Umbraco has moved several properties from IPublishedContent down to IPublishedElement. Those changes have been mirrored in the unit testing examples in the FakePublishedElement and FakePublishedContent types. These changes have no effect on existing unit tests. Additional note Umbraco has already made changes in Umbraco 17 to how indexes are initialized on boot. The changes reduce the complexity of the in-memory website and make it easier to detect when Umbraco has fully started in integration tests. The repository does not reflect those changes accurately quite yet. I have the code ready for it and I will update the examples soon. That's all It was a short update. Apart from the end-to-end testing examples, not much has changed, everything is still relevant. If you haven't yet, please check out the repository, it is made as a learning resource so you can also get started with testing in Umbraco.

by Dennis Heutinck

Articulate 7 and 8 are out for Umbraco 17 and 18

Articulate 7.0.0 and 8.0.0 are now on NuGet. Articulate 7 is for Umbraco 17 and Articulate 8 is for Umbraco 18. They're both built from the same source, the only reason there's two of them is that Umbraco 17 and 18 aren't binary compatible, so each package is compiled against its own Umbraco version. dotnet add package Articulate --version 7.0.0 # Umbraco 17.7.1 - 17.x dotnet add package Articulate --version 8.0.0 # Umbraco 18.2.1 - 18.x This blog is now running Umbraco 18.2.1 and Articulate 8.0.2. Before this it was on Umbraco 12.3.10 and Articulate 5.2.2, so it skipped quite a few versions in one go. In this case, the upgrade path was easy! Just exported the BlobMl from the old site with images embedded, then created a new v18 site, installed Articulate, imported the file and adjusted my root Blog Articulate node, and ta-da 🎉 It works 😊 What's new Giscus comments - You can now use Giscus instead of Disqus, which stores comments in GitHub Discussions. Configure it globally in appsettings.json under Articulate:Comments:Giscus or per blog with the new giscus* properties. Themes can ship a giscus.css so the comments match the theme, and all the built-in themes do. Markdown editor - The responsive Markdown editor for posting from your phone or browser now signs in with Umbraco's Back Office OAuth/PKCE flow and uses the Management API, so if you have 2FA configured it just works. Rich text - Coming from TinyMCE, the upgrade switches posts over to TipTap with Articulate's default settings, and any custom TipTap config you already have is kept. New backoffice - The Articulate backoffice extensions are rebuilt for both Umbraco 17 and 18. BlogML - Import size limits are configurable, and exports use the post's published date. Performance and security - Lots of allocation and hot path fixes in routing, and CI now fails the build if any NuGet dependency has a high or critical advisory. Things to know before you upgrade Back up first - your site, database and media. MetaWeblog is off by default - Open Live Writer uses direct username/password auth, which skips Umbraco's Back Office OAuth and 2FA. If you still use it, set Articulate:EnableMetaWeblog to true and restart. Want to keep TinyMCE? Install TinyMCE.Umbraco before the first run, otherwise the editor gets converted to TipTap. Coming from Articulate 5? Custom themes need updating, since the Html and Url helpers were replaced with model extension methods, e.g. @Html.MetaTags(Model) is now @Model.MetaTags(). The full table is in the 6.0.0 release notes. The Upgrading page on the wiki has the full checklist. Two packages, one codebase The bulk of this release was done by Gavin Faux, and it's a huge amount of work. Rather than keeping a separate branch per Umbraco version, everything is built from one codebase with a small compatibility layer for the bits that differ between 17 and 18. One CI build compiles, tests and packages both versions, then installs them into brand new Umbraco sites and runs the same set of end-to-end tests against each one before a release gets published. So when a fix goes in, it ships for both versions at the same time. Thanks Gavin! The full list of changes is in the GitHub release. Give it a go, and if you run into anything, raise an issue.

by Shanon Thompson (Deminick)

Get in contact with us