In Teil 1 dieser Reihe haben wir einige der bekanntesten Open-Source-Projekte der Java-Community vorgestellt. Jetzt präsentieren wir Ihnen weitere herausragende Projekte, die Builds beschleunigen, Tests verbessern und die Arbeit mit modernen Web-Stacks vereinfachen. Wie immer hilft IntelliJ IDEA Entwickler*innen dabei, schneller und sicherer voranzukommen und dabei die Qualität in den Mittelpunkt zu stellen.
🌿 jsoup
Eine Java-Bibliothek für HTML-Code aus der realen Welt.
Mit einem Namen, der an die chaotische „Tag-Suppe“ der frühen Webinhalte erinnerte, entstand jsoup im Jahr 2009, nachdem sich das Regex-basierte HTML-Parsing als zu anfällig erwiesen hatte, als Antwort auf die bestehenden Java-HTML-Bibliotheken, die als umständlich und eingeschränkt empfunden wurden. Inspiriert von der Einfachheit von jQuery wurde jsoup entwickelt, um ein intuitives und angenehmes HTML-Parsing in Java zu ermöglichen. Heute bietet die Bibliothek benutzerfreundliche Tools zum Parsen, Bereinigen und Bearbeiten von HTML, mit Unterstützung für HTML5, XML, Sanitization, W3C-APIs und mehr.
IntelliJ IDEA ist meine bevorzugte IDE – intuitiv, leistungsstark und hervorragend geeignet für die Navigation in Code, Datenströmen und Tests. Durch die Inspektionen werden Probleme frühzeitig erkannt, während integrierte Tools für Tests, Profiling und Abhängigkeitsmanagement die Entwicklung von jsoup unmittelbar verbessert haben.
— Jonathan Hedley, Schöpfer von jsoup
Obwohl jsoup inzwischen ziemlich ausgereift ist, geht die Entwicklung weiter. Zu den jüngsten Ergänzungen gehören die native Unterstützung von HTTP/2-Anfragen für effiziente Verbindungen und ein schneller neuer hybrider DOM+SAX-StreamParser. Die Zukunftspläne umfassen die Unterstützung benutzerdefinierter Tags, einen verbesserten Pretty Printer und einen erweiterten HTML-Bereiniger. Wenn Sie uns unterstützen möchten oder weitere Ideen haben, besuchen Sie die jsoup-Website und machen Sie mit!
🚀 http4k
Ein leichtgewichtiges, funktionales Toolkit zum Erstellen von HTTP-Services in Kotlin.
Inspiriert durch das Twitter-Paper Your Server as a Function begann http4k als 40-zeiliges Skript, aus dem inzwischen 180 Module entstanden sind. Es basiert auf reinen Funktionen ohne Abhängigkeiten oder Reflection, ist schnell und hochgradig portabel und kann im Arbeitsspeicher, auf 14 Server-Backends, 6 serverlosen Plattformen oder als GraalVM-Binärdatei ausgeführt werden. Mit einem Fokus auf radikaler Einfachheit und extremer Testbarkeit wurde http4k mit dem Ziel entwickelt, das aktuell am besten testbare Web-Toolkit zu sein.
Als erfahrene IntelliJ-IDEA-Benutzer*innen halten wir große Stücke auf die Produkte von JetBrains. Wir nutzen nicht nur die Refactoring-Funktionen der IDE, um Code zuverlässig zu bearbeiten und umzugestalten, sondern können mit denselben Tastenkombinationen unkompliziert in mehreren Sprachen entwickeln.
— David Denton und Ivan Sanchez, Schöpfer von http4k
http4k wird kontinuierlich erweitert. Zu den jüngsten Ergänzungen gehören ein MCP-SDK (Model Context Protocol) für das zustandslose, serverlose Deployment, eine Datastar-Integration, das TracerBullet-Modul, das durch Ausführen von Tests Sequenzdiagramme des Codeverhaltens generiert, sowie demnächst ein transaktionales Outbox-Modul. Wie immer wird alles mit kombinierbaren Funktionen und einem starken Fokus auf Testbarkeit entwickelt.
🧞 Selenide
Eine kompakte Testbibliothek für stabile, lesbare und schnelle UI-Tests.
Selenide entstand aus der Not heraus. Zum damaligen Zeitpunkt gab es keine ausgereiften UI-Test-Bibliotheken für Java, und Selenium WebDriver erforderte umfangreichen Boilerplate-Code, der die Lesbarkeit der Tests erschwerte und die Entwicklung verlangsamte. Also fasste Andrei Solntsev seine eigenen internen Automatisierungstools zu einer kompakten, ausdrucksstarken Bibliothek zusammen, die das Schreiben von Browsertests vereinfachte.
IntelliJ IDEA ist in jeder Hinsicht meine bevorzugte IDE – sie hat sogar die Konzeption von Selenide beeinflusst. Ich habe die Bibliothek so gestaltet, dass IntelliJ IDEA automatisch verfügbare Methoden vorschlagen kann, damit Entwickler*innen die Funktionalitäten leicht finden können, ohne erst lange in der Dokumentation lesen zu müssen. Man gibt einfach einen Punkt ein und lässt sich von der IDE Vorschläge machen.
— Andrei Solntsev, Schöpfer von Selenide
Auch heute konzentriert sich das Selenide-Team weiterhin auf stabile und lesbare Tests, eine schnelle Ausführung und eine reibungslose Entwicklungserfahrung. Das Team arbeitet aktiv an der Unterstützung des BiDi-Protokolls, einer besseren Dokumentation und einer stärkeren Integration mit den weiterentwickelten Selenium-Standards.
🧠 Flix
Eine effektorientierte Programmiersprache mit einer soliden theoretischen Grundlage.
Flix wurde an der Universität Aarhus entwickelt und vereint funktionale, imperative und logische Programmierparadigmen. Das Herzstück von Flix ist sein leistungsstarkes Effektsystem, das mit algebraischen Effekten und Handlern verbesserte Modularität und Code-Klarheit bietet, mit lokalen Mutationen Nebeneffekte in reinen Funktionen einschließt und mit „Purity-Reflection“ eine sichere automatische Parallelisierung und verzögerte Auswertung („lazy evaluation“) ermöglicht.
Trotz seiner akademischen Wurzeln wird Flix in realen Anwendungen eingesetzt, mit einem Fokus auf Performance, Zuverlässigkeit und Entwicklungserfahrung.
Der Flix-Compiler ist hauptsächlich in Scala geschrieben, und unser Entwicklungsteam arbeitet fast ausschließlich in IntelliJ IDEA, dessen integrierter Profiler maßgeblich zur Entwicklung einer effizienten Typinferenz-Implementierung beigetragen hat. Auch die Debugging-Funktionalität wird täglich eingesetzt, um versteckte Fehler im Quellcode aufzuspüren.
— Magnus Madsen, Core Developer von Flix
Das Team arbeitet aktiv an Version 1.0, die das Effektsystem und die Entwicklungserfahrung weiter verbessern und ein präziseres und aktionsrelevantes Feedback an Fehlerstellen bereitstellen wird.
🌐 Kobweb
Ein modernes Framework für die Entwicklung von Webanwendungen in Kotlin.
Kobweb entstand aus dem Wunsch heraus, die Leistungsfähigkeit von Compose für die Webentwicklung mit Kotlin bereitzustellen. Zu jener Zeit konzentrierten sich die meisten Web-Frameworks auf JavaScript und TypeScript, sodass Kotlin-Entwickler*innen nur eingeschränkte Möglichkeiten hatten. Compose HTML zeigte vielversprechende Ansätze, das Ökosystem jedoch befand sich noch in einem frühen Stadium. Kobweb entstand als Antwort auf diese Lücke – ein mutiger Schritt hin zu einer modernen, deklarativen Webentwicklung in Kotlin unter Verwendung bekannter Tools wie IntelliJ IDEA und Compose.
Kobweb empfiehlt Entwickler*innen die Verwendung von IntelliJ IDEA – insbesondere für Kotlin gibt es nichts Besseres. Es verfügt über leistungsstarke Features, die es sich zu erlernen lohnt, zum Beispiel klassenführende Refactoring-Tools, Codeanalyse und Navigation sowie erweiterte Editorfunktionen wie etwa die Mehrfachcursor-Bearbeitung. Wenn Sie täglich eine IDE verwenden, nehmen Sie sich die Zeit, sich gründlich in Ihre Tools einzuarbeiten – Sie werden dadurch schneller und besser.
— David Herman, Schöpfer von Kobweb
Kobweb nähert sich der Veröffentlichung von Version 1.0; die Pläne umfassen das Schließen der verbleibenden API-Lücken, die Einführung neuer UI-Widgets, die Verbesserung des IntelliJ-IDEA-Plugins und die Erstellung kurzer Video-Tutorials für die Community. Sie können den Fortschritt auf der öffentlichen Roadmap des Projekts verfolgen. Wenn Sie beitragen möchten und über Fähigkeiten in einem dieser Bereiche verfügen, würde sich das Team sehr freuen, von Ihnen zu hören!
Ganz gleich, ob Sie Frameworks, Compiler oder Bibliotheken entwickeln – diese OSS-Projekte zeigen, was möglich ist, wenn Entwickler*innen die richtigen Werkzeuge zur Verfügung stehen. JetBrains ist stolz darauf, diese Initiativen, die zum Wachstum der Community beitragen, unterstützen zu dürfen.
Weitere Inhalte aus dieser Reihe
CLion und die Open-Source-Community: Wir wachsen zusammen
CLion wurde von Anfang an von den Bedürfnissen der C- und C++-Entwickler*innen aus aller Welt geprägt. Unsere plattformübergreifende IDE wurde erstellt, um die Entwicklung zu vereinfachen, die Produktivität zu steigern und die Arbeit mit C++ angenehmer zu gestalten.
Wir freuen uns, den nächsten Schritt in unserer Kooperation mit der Community zu…
So hilft PhpStorm bei der Wartung von PHP-Open-Source-Projekten: Interviews und Beispiele aus der Praxis
Das PHP-Ökosystem wird von leidenschaftlichen Entwickler*innen vorangetrieben, deren Tools bei allen Arten von Software zum Einsatz kommen – von Content-Management-Systemen bis hin zu Testbibliotheken und Datenbankschichten. Hinter jedem Projekt steht ein engagiertes Team, das sich dafür einsetzt, den Code zu modernisieren, die Performance zu verbessern und das Ökosystem weiter…
So wird IntelliJ IDEA in Java-Open-Source-Projekten genutzt: Reale Einsatzfälle – Teil 1
Bei JetBrains entwickeln wir Tools, die konzentriertes und produktives Arbeiten ermöglichen. Besonders stolz sind wir, wenn diese Tools Open-Source-Projekte voranbringen, auf die sich Entwickler*innen weltweit täglich verlassen. Diese Projekte prägen die Richtung der Java-Entwicklung und tragen wesentlich zum blühenden…
Open Source im Fokus: Projekte, die wir gerne unterstützen
Bei JetBrains freut es uns sehr, wenn die Entwicklungscommunity wächst und gedeiht. Aus diesem Grund unterstützen wir Open-Source-Entwicklungen, die etwas bewegen – Projekte, die Entwickler*innen dabei helfen, zu lernen, zu programmieren und gemeinsam bessere Software zu erstellen. Wir sind stolz darauf, Open-Source-Maintainer*innen mit kostenlosen Lizenzen zu unterstützen und…