JuLC Documentation
Welcome to the JuLC documentation. JuLC compiles a safe subset of Java to Plutus V3 UPLC for Cardano smart contracts.
New to JuLC?
Section titled “New to JuLC?” Write Your First Contract Scaffold a project with the julc CLI, write a validator, compile, and test — in under 10 minutes
Getting Started Comprehensive guide: all language features, data modeling, collections, deployment
Guides
Section titled “Guides” Advanced Guide Low-level patterns, raw Data access, PlutusData manipulation
For-Loop Patterns For-each, while loops, accumulators, nested loops
Testing Guide Unit tests, property-based fuzzing, budget analysis, integration tests
Source Maps Runtime error location, trace diagnostics
Standard Library
Section titled “Standard Library” Library Reference All 13 stdlib libraries: Lists, Maps, Values, Math, Crypto, Bitwise, and more
Reference
Section titled “Reference” API Reference All supported types, operators, methods, and ledger access
Library Developer Guide Write and publish @OnchainLibrary modules
Examples 12 example validators with source code
Troubleshooting Every compiler error mapped with causes and solutions
Internals
Section titled “Internals”For compiler contributors:
Compiler Design Architecture, compilation pipeline, PIR generation
Compiler Developer Guide Development setup, debugging, extending the compiler
Example Repositories
Section titled “Example Repositories”- julc-helloworld — Simple vesting contract with tests
- julc-examples — Advanced validators and patterns