<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Development on Ilscipio - Enterprise Commerce Experts</title>
    <link>https://www.ilscipio.com/en/categories/development/</link>
    <description>Recent content in Development on Ilscipio - Enterprise Commerce Experts</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    <lastBuildDate>Tue, 15 Sep 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://www.ilscipio.com/en/categories/development/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Freemarker vs Thymeleaf - Which Template Engine in 2026</title>
      <link>https://www.ilscipio.com/en/blog/freemarker-vs-thymeleaf-2026/</link>
      <pubDate>Tue, 15 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://www.ilscipio.com/en/blog/freemarker-vs-thymeleaf-2026/</guid>
      <description>&lt;p&gt;If you are choosing a template engine for a Java web project in 2026, it comes down to Freemarker or Thymeleaf. I built IDE plugins for both, so I have opinions and they are informed ones.&lt;/p&gt;&#xA;&lt;p&gt;The short version: Thymeleaf is the better default for Spring Boot projects. Freemarker is more flexible when you need to render things that are not HTML. Both are mature, maintained, and production-ready. The choice depends on your project, not on which one is &amp;ldquo;better.&amp;rdquo;&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to Add a Custom Language to Your JetBrains IDE</title>
      <link>https://www.ilscipio.com/en/blog/add-custom-language-jetbrains/</link>
      <pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://www.ilscipio.com/en/blog/add-custom-language-jetbrains/</guid>
      <description>&lt;p&gt;I needed Freemarker support in IntelliJ and it did not exist. The built-in highlighting was wrong half the time, there was no completion, and navigating between templates was guessing. So I wrote a plugin. That was plugin number one. Twenty-one more followed.&lt;/p&gt;&#xA;&lt;p&gt;To add a custom language to a JetBrains IDE you need four things: a lexer, a parser, a PSI tree, and at least one useful feature on top. Everything else is optional but makes the plugin worth paying for.&lt;/p&gt;</description>
    </item>
    <item>
      <title>So I Accidentally Built 22 JetBrains Plugins</title>
      <link>https://www.ilscipio.com/en/blog/jetbrains-plugins-lessons/</link>
      <pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://www.ilscipio.com/en/blog/jetbrains-plugins-lessons/</guid>
      <description>&lt;p&gt;It started with a Freemarker plugin. We were using Freemarker templates in ScipioERP and the IDE support was limited - no completion, no navigation, no syntax highlighting worth mentioning. I thought, how hard can it be.&lt;/p&gt;&#xA;&lt;p&gt;Turns out: not that hard, actually. The JetBrains platform is powerful. The documentation just does not tell you that.&lt;/p&gt;&#xA;&lt;h2 id=&#34;one-plugin-became-a-pattern&#34;&gt;One plugin became a pattern&lt;/h2&gt;&lt;p&gt;The Freemarker plugin worked. People downloaded it. I got emails. And I noticed something: the core infrastructure I had built - the PSI tree builder, the completion engine, the settings framework - was reusable. Adding support for a new language meant implementing the grammar and a few custom inspections. Everything else was shared.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
