<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Juliana Amorim</title>
    <description>The latest articles on DEV Community by Juliana Amorim (@amorimjuliana).</description>
    <link>https://dev.to/amorimjuliana</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1209988%2F66ac1d3d-e19a-4c48-9110-67048eebbc01.png</url>
      <title>DEV Community: Juliana Amorim</title>
      <link>https://dev.to/amorimjuliana</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/amorimjuliana"/>
    <language>en</language>
    <item>
      <title>Strapi CMS + AB testing</title>
      <dc:creator>Juliana Amorim</dc:creator>
      <pubDate>Mon, 23 Jun 2025 16:42:30 +0000</pubDate>
      <link>https://dev.to/amorimjuliana/strapi-cms-ab-testing-5b2i</link>
      <guid>https://dev.to/amorimjuliana/strapi-cms-ab-testing-5b2i</guid>
      <description>&lt;p&gt;When we created our blog, using &lt;a class="mentioned-user" href="https://dev.to/strapijs"&gt;@strapijs&lt;/a&gt; was a no-brainer decision for us. Everybody knows it is THE leading open-source headless CMS, loved by developers for its flexibility, scalability, and robust ecosystem.&lt;/p&gt;

&lt;p&gt;But we all miss native support for AB testing and real-time personalization 😔&lt;/p&gt;

&lt;p&gt;So, deciding to create an integration was also a snap. We needed something simple, fast to implement, and compatible with Strapi dynamic zones.&lt;/p&gt;

&lt;p&gt;Boom 💥 Here it is: &lt;a href="https://youtu.be/RKXpQzKRQgQ" rel="noopener noreferrer"&gt;https://youtu.be/RKXpQzKRQgQ&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx croct@latest use croct://integration/strapi
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Happy experimenting, Strapi fellows ✨&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>strapi</category>
      <category>cms</category>
      <category>abtesting</category>
    </item>
    <item>
      <title>Sanity integration for AB testing and content personalization</title>
      <dc:creator>Juliana Amorim</dc:creator>
      <pubDate>Mon, 09 Jun 2025 17:00:26 +0000</pubDate>
      <link>https://dev.to/amorimjuliana/sanity-integration-for-ab-testing-and-content-personalization-da1</link>
      <guid>https://dev.to/amorimjuliana/sanity-integration-for-ab-testing-and-content-personalization-da1</guid>
      <description>&lt;p&gt;We've always been fans of &lt;a href="https://www.sanity.io/" rel="noopener noreferrer"&gt;Sanity CMS&lt;/a&gt;, and we've seen some folks struggling to integrate it with AB testing and content personalization tools.&lt;/p&gt;

&lt;p&gt;Got us thinking: since Croct is also headless, why not make that kind of plug-and-play? 💡&lt;/p&gt;

&lt;p&gt;We decided to start with Next.js templates, so now you can get all those features working with any Next.js + Sanity website in just one command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx croct@latest use croct://integration/sanity
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Or, if you want a fully configured example for each use case:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx croct@latest use croct://integration/sanity-ab-testing
npx croct@latest use croct://integration/sanity-personalization
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you're a developer working on Sanity projects, we'd really appreciate your thoughts on this! Let us know if this is helpful or if you'd like anything changed or added.&lt;/p&gt;

&lt;p&gt;More about Croct templates: &lt;a href="https://croct.com/templates" rel="noopener noreferrer"&gt;https://croct.com/templates&lt;/a&gt;&lt;/p&gt;

</description>
      <category>sanity</category>
      <category>personalization</category>
      <category>webtesting</category>
    </item>
    <item>
      <title>Introducing Croct, a personalization infrastructure for the web ✨</title>
      <dc:creator>Juliana Amorim</dc:creator>
      <pubDate>Mon, 27 Nov 2023 21:47:48 +0000</pubDate>
      <link>https://dev.to/amorimjuliana/introducing-croct-a-personalization-infrastructure-for-the-web-4pj</link>
      <guid>https://dev.to/amorimjuliana/introducing-croct-a-personalization-infrastructure-for-the-web-4pj</guid>
      <description>&lt;p&gt;Hi everyone! I'm new here, and I loved this community right away. I'd love to hear your feedback about what we're building since it has a lot of focus on the developer experience :)&lt;/p&gt;

&lt;p&gt;As mentioned in the title, Croct is a &lt;strong&gt;personalization infrastructure&lt;/strong&gt; that provides everything you need to address the personalization challenge in a single API.&lt;/p&gt;

&lt;p&gt;Personalization has always been too complex because integrating all moving parts takes a lot of time and resources. You usually need a personalization engine, a CDP for segmentation, a headless CMS for managing the content, an AB testing mechanism to validate hypotheses, and analytics to measure your KPIs. It's overwhelming.&lt;/p&gt;

&lt;p&gt;To solve that, we created an end-to-end solution called Personalization Management System. It does most of the work for you: it collects, processes, enriches, and turns data actionable so you can focus on what matters: the personalization strategy.&lt;/p&gt;

&lt;p&gt;At the end of the day, we allow you to implement personalization in a matter of hours instead of months.&lt;/p&gt;

&lt;p&gt;Check out &lt;a href="https://youtu.be/3vSaJxpdxqQ"&gt;this video&lt;/a&gt; for a quick technical demo (example with Next.js), and join us on this exciting journey!&lt;/p&gt;

&lt;p&gt;Share it with your dev friends and help us receive feedback ❤️&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;👋 Get in Touch!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Have thoughts or suggestions? I'd love to hear from you! Email me at &lt;a href="mailto:juliana@croct.com"&gt;juliana@croct.com&lt;/a&gt;, connect via WhatsApp at +55 (19) 98203-1734, or join our &lt;a href="https://croct.link/community"&gt;Slack Community&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>cms</category>
      <category>personalization</category>
      <category>react</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>How to interpret sessions in real-time?</title>
      <dc:creator>Juliana Amorim</dc:creator>
      <pubDate>Tue, 14 Nov 2023 23:40:57 +0000</pubDate>
      <link>https://dev.to/amorimjuliana/how-to-interpret-sessions-in-real-time-30ib</link>
      <guid>https://dev.to/amorimjuliana/how-to-interpret-sessions-in-real-time-30ib</guid>
      <description>&lt;p&gt;The word 'session' carries varied implications across different fields, from a therapist's appointment to a movie marathon. For those in the digital domain, such as developers and marketers, 'session' and its derivative, 'sessionization,' have become integral in understanding and optimizing user experiences.&lt;/p&gt;

&lt;p&gt;Over recent years, 'session' and 'sessionization' have become buzzwords in analyzing user journeys. Sessionization involves clustering activities within a session, providing vital insights into how users interact with digital platforms. This process is crucial for tailoring user experiences in real time.&lt;/p&gt;

&lt;h2&gt;
  
  
  What exactly is a session?
&lt;/h2&gt;

&lt;p&gt;Imagine each interaction with a website or app as a new chapter in the book "The User's Journey." A session represents these chapters, with the end of a session marking the conclusion of a specific set of interactions. This concept isn't as straightforward in the digital world as in physical interactions, like shopping in a store. The challenge lies in defining the end of a session.&lt;/p&gt;

&lt;p&gt;For instance, consider a user who visits an e-commerce site, browses a product, and later completes a purchase. The determination of whether these actions form a single session or multiple ones depends on various factors, including the time elapsed between interactions.&lt;/p&gt;

&lt;h2&gt;
  
  
  The challenge of real-time decision-making
&lt;/h2&gt;

&lt;p&gt;Clustering activities into sessions retrospectively might seem straightforward. However, making these decisions in real time, especially when considering offline interactions, adds complexity. For example, a user might use an app in flight mode and reconnect to the internet later. This scenario requires a strategy for late-arriving events.&lt;/p&gt;

&lt;p&gt;Sessionization simplifies decision-making. It helps focus on essential aspects like user experience by providing insights into user behavior, such as the frequency of visits, session duration, and activities performed. These insights enable businesses to create personalized experiences more effectively.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to consider when doing that?
&lt;/h2&gt;

&lt;p&gt;Implementing session-based personalization requires identifying users, defining session parameters, and tracking user interactions. You can either fully build that in-house, integrate an analytics tool like &lt;a href="https://mixpanel.com/"&gt;Mixpanel&lt;/a&gt; and &lt;a href="https://amplitude.com/"&gt;Amplitude&lt;/a&gt; with a CDP like &lt;a href="https://segment.com/"&gt;Segment&lt;/a&gt;, or rely on a platform that handles that for you, like &lt;a href="https://croct.com/"&gt;Croct&lt;/a&gt;. The decision depends on how far you want to go and how much time and resources you have on your team.&lt;/p&gt;

&lt;p&gt;I'm trying to understand how people usually solve this problem today. Would you share your strategy with me?&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>development</category>
      <category>analytics</category>
    </item>
  </channel>
</rss>
