JPlus is a modern programming language and compiler that acts as a superset of Java —
bringing the benefits of null safety, concise syntax, and powerful declarative features
while remaining fully interoperable with existing Java code and libraries.
✨ Why JPlus?
Java is a powerful and battle-tested language, but developers often face:
- Verbose boilerplate (getters/setters, constructors, etc.)
- Dangerous
NullPointerExceptions - Lack of modern language features like
?:(Elvis), smart casts, or pattern matching
JPlus solves this by introducing modern features on top of Java — without breaking compatibility.
JPlus code compiles to standard JVM bytecode, enabling full use of Java libraries and frameworks.
🔐 Null Safety & Modern Syntax Features
JPlus enforces strict null checks at compile-time and introduces Kotlin-style operators:
| Feature | Description |
|---|---|
Type vs Type?
|
Explicit non-nullable and nullable types |
?. |
Null-safe access operator |
?: |
Elvis operator for default/fallback values |
| Smart Casts | Safe type narrowing after null checks |
| Type Inference | Reduce verbosity, no need to declare obvious types |
| Pattern Matching | Clean switch/if logic with type-safe guards |
| Async Syntax (planned) | Future-ready syntax with async/await support |
🔧 NEW: apply Syntax for Replacing Lombok
JPlus introduces the new apply statement — a powerful declarative alternative to Lombok annotations.
🔁 Replace This:
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class User {
private String name;
private int age;
}
✅ With This:
apply data, builder, constructors(all, no);
public class User {
private String name;
private int age;
}
💡 Even Nested Classes:
apply data, constructor(required, all, no), builder;
apply {
User.Profile: getter, setter, equality, constructor(all);
}
public class User {
private String name;
private int age;
public class Profile {
String nickname;
}
}
All boilerplate — constructors, getters/setters, toString, equals, builder — generated as plain Java.
For full code and output, see:
Go to Example 6
🔭 Coming Soon: IntelliJ Plugin
We are actively developing an IntelliJ IDEA plugin to provide:
🔍 Syntax highlighting and autocomplete for
.jplusfiles⚠️ Real-time null-check error detection
🚀 One-click compile-to-Java and build integration
Stay tuned — the plugin will make JPlus production-ready for real-world development!
💝 Support Development
JPlus is a one-person open-source project under active development.
If you find value in this work and want to help shape the future of Java development:
👉 Support the Project via PayPal
Your contribution supports language tooling, plugin development, and community outreach.
The benefits will ripple across the entire Java community.
💬 Get Involved
⭐ Star the project on GitHub
🐛 Report bugs and suggest features
🧠 Contribute code or docs
💬 Join the community discussions (coming soon)
🔗 Learn More
License (Apache 2.0)
JPlus is here to modernize Java while respecting its legacy.
Let's build a safer, cleaner, and more expressive future — together.
Top comments (0)