Skip to content

Commit 3a063db

Browse files
committed
Update Getting Started, Overview & Setup Sections
1 parent c2e9776 commit 3a063db

8 files changed

Lines changed: 98 additions & 82 deletions

File tree

_sass/custom/custom.scss

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,20 @@
169169
background: rgba(107, 114, 128, 0.08);
170170
}
171171

172+
.main-content ul,
173+
.main-content ol {
174+
padding-left: 1.5rem;
175+
}
176+
177+
.main-content ul {
178+
list-style: disc;
179+
}
180+
181+
.main-content li > ul,
182+
.main-content li > ol {
183+
margin-top: 0.35rem;
184+
}
185+
172186
.card-grid {
173187
display: grid;
174188
gap: 1rem;

getting-started/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,18 @@ nav_order: 1
44
has_children: true
55
has_toc: false
66
permalink: /getting-started/
7-
description: Start with the LiquidJava basics, from overview to installation and a first verification run.
7+
description: Start with the LiquidJava basics, from overview to setup and a first verification run.
88
cards:
99
- title: Overview
1010
url: /getting-started/overview/
1111
description: Learn what LiquidJava adds to Java.
12-
- title: Installation
13-
url: /getting-started/installation/
14-
description: Set up the API, verifier, and editor tooling needed to start checking Java code.
12+
- title: Setup
13+
url: /getting-started/setup/
14+
description: Set up the dependency, verifier, and VS Code extension to start using LiquidJava.
1515
---
1616

1717
# Getting Started
1818

19-
Start here if you are new to LiquidJava.
19+
Start here to learn about LiquidJava, set up your environment, and run your first verification.
2020

2121
{% include card_grid.html cards=page.cards %}

getting-started/installation.md

Lines changed: 0 additions & 69 deletions
This file was deleted.

getting-started/overview.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Overview
33
parent: Getting Started
44
nav_order: 1
5-
description: Learn what LiquidJava adds to Java, which problems it solves, and where to go next in the docs.
5+
description: Learn what LiquidJava adds to Java.
66
---
77

88
# Overview
@@ -13,7 +13,7 @@ LiquidJava is an additional type checker for Java. It extends Java with three ma
1313
- **Typestates** to describe valid object protocols across method calls.
1414
- **Ghost variables** to track extra state when typestates aren't enough.
1515

16-
At a high level, LiquidJava helps catch mistakes that the standard Java type system cannot, including:
16+
These make it possible to catch bugs that the standard Java type system cannot, including:
1717

1818
- Division by zero
1919
- Array index out-of-bounds

getting-started/setup.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
title: Setup
3+
parent: Getting Started
4+
nav_order: 2
5+
description: Set up the dependency, verifier, and VS Code extension to start using LiquidJava.
6+
---
7+
8+
# Setup
9+
10+
## API Dependency
11+
12+
To use the LiquidJava annotations, add the `liquidjava-api` dependency to your Java project:
13+
14+
### Maven
15+
16+
```xml
17+
<dependency>
18+
<groupId>io.github.liquid-java</groupId>
19+
<artifactId>liquidjava-api</artifactId>
20+
<version>{{ site.liquidjava_api_version }}</version>
21+
</dependency>
22+
```
23+
24+
### Gradle
25+
26+
```groovy
27+
repositories {
28+
mavenCentral()
29+
}
30+
dependencies {
31+
implementation 'io.github.liquid-java:liquidjava-api:{{ site.liquidjava_api_version }}'
32+
}
33+
```
34+
35+
## VS Code Extension
36+
37+
### Requirements
38+
39+
- Visual Studio Code with the [Language Support for Java by Red Hat](https://marketplace.visualstudio.com/items?itemName=redhat.java) extension
40+
- A Java project with the `liquidjava-api` dependency
41+
42+
### Steps
43+
44+
- Install the [LiquidJava VS Code extension](https://marketplace.visualstudio.com/items?itemName=AlcidesFonseca.liquid-java)
45+
- Open a Java project with the `liquidjava-api` dependency
46+
47+
The extension then provides real-time diagnostics, syntax highlighting for refinements, and more.
48+
49+
> You can find more about the extension [here]({{ '/tooling/vscode-extension/' | relative_url }}).
50+
51+
## Command-Line Interface
52+
53+
If you prefer to run the verifier directly from the terminal, you can use the command-line interface.
54+
55+
### Requirements
56+
- Java 20+
57+
- Maven 3.6+
58+
- A Java project with the `liquidjava-api` dependency
59+
60+
### Steps
61+
62+
```bash
63+
git clone {{ site.liquidjava_repo_url }}
64+
cd liquidjava
65+
mvn clean install
66+
./liquidjava /path/to/your/project
67+
```
68+
69+
This runs the verifier on your project and prints any errors to the console.
70+
71+
> You can find more about the command-line interface [here]({{ '/tooling/cli/' | relative_url }}).

index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: LiquidJava Docs
33
layout: default
44
nav_exclude: true
55
has_toc: false
6-
description: Start with installation, runnable examples, and reference material for LiquidJava.
6+
description: Start with setup, runnable examples, and reference material for LiquidJava.
77
cards:
88
- title: VS Code Extension
99
url: /tooling/vscode-extension/
@@ -27,7 +27,7 @@ cards:
2727
<p>LiquidJava is an additional type system with liquid types for Java that allows expressing constraints that the program must follow to catch more bugs before executing the program.</p>
2828

2929
<div class="home-actions">
30-
<a class="home-button primary" href="{{ '/getting-started/installation/' | relative_url }}">Install LiquidJava</a>
30+
<a class="home-button primary" href="{{ '/getting-started/setup/' | relative_url }}">Install LiquidJava</a>
3131
<a class="home-button secondary" href="{{ '/getting-started/overview/' | relative_url }}">Learn More</a>
3232
</div>
3333

reference/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,6 @@ cards:
2525

2626
# LiquidJava Reference
2727

28-
LiquidJava extends Java with logical refinements and object protocol specifications. This section covers the core annotation model:
28+
LiquidJava extends Java with logical refinements and object protocol specifications. This section covers the core annotation model.
2929

3030
{% include card_grid.html cards=page.cards %}

tooling/vscode-extension.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ The VS Code extension is the smoothest way to work with LiquidJava day to day.
1717

1818
## Install
1919

20-
1. Install [LiquidJava on the VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=AlcidesFonseca.liquid-java) or [Open VSX](https://open-vsx.org/extension/AlcidesFonseca/liquid-java).
21-
2. Install [Language Support for Java by Red Hat](https://marketplace.visualstudio.com/items?itemName=redhat.java).
22-
3. Open a Java project that includes the `liquidjava-api` dependency.
20+
- Install [LiquidJava on the VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=AlcidesFonseca.liquid-java) or [Open VSX](https://open-vsx.org/extension/AlcidesFonseca/liquid-java).
21+
- Install [Language Support for Java by Red Hat](https://marketplace.visualstudio.com/items?itemName=redhat.java).
22+
- Open a Java project that includes the `liquidjava-api` dependency.
2323

2424
## Example Dependency
2525

0 commit comments

Comments
 (0)