mirror of
https://github.com/apple/pkl.git
synced 2026-03-26 11:01:14 +01:00
Initial commit
This commit is contained in:
8
docs/modules/ROOT/pages/community.adoc
Normal file
8
docs/modules/ROOT/pages/community.adoc
Normal file
@@ -0,0 +1,8 @@
|
||||
= Community
|
||||
:uri-github-issue: https://github.com/apple/pkl/issues
|
||||
:uri-github-discussions: https://github.com/apple/pkl/discussions
|
||||
|
||||
We'd love to hear from you!
|
||||
|
||||
* Create an {uri-github-issue}[issue]
|
||||
* Ask questions on {uri-github-discussions}[GitHub Discussions]
|
||||
14
docs/modules/ROOT/pages/examples.adoc
Normal file
14
docs/modules/ROOT/pages/examples.adoc
Normal file
@@ -0,0 +1,14 @@
|
||||
= Examples
|
||||
|
||||
:uri-github-apple: https://github.com/apple
|
||||
:uri-jvm-examples: {uri-github-apple}/pkl-jvm-examples
|
||||
:uri-go-examples: {uri-github-apple}/pkl-go-examples
|
||||
:uri-swift-examples: {uri-github-apple}/pkl-swift-examples
|
||||
:uri-k8s-examples: {uri-github-apple}/pkl-k8s-examples
|
||||
|
||||
For ready-to-go examples with full source code, see the various repositories that are available for you.
|
||||
|
||||
* {uri-jvm-examples}[pkl-jvm-examples] -- for using Pkl within the JVM
|
||||
* {uri-swift-examples}[pkl-swift-examples] -- for using Pkl with Swift
|
||||
* {uri-go-examples}[pkl-go-examples] -- for using Pkl with Go
|
||||
* {uri-k8s-examples}[pkl-k8s-examples] -- for using Pkl with Kubernetes
|
||||
15
docs/modules/ROOT/pages/index.adoc
Normal file
15
docs/modules/ROOT/pages/index.adoc
Normal file
@@ -0,0 +1,15 @@
|
||||
= User Manual
|
||||
include::../partials/component-attributes.adoc[]
|
||||
|
||||
Quick Links: xref:pkl-cli:index.adoc#installation[Installation] | xref:language-reference:index.adoc[Language Reference]
|
||||
|
||||
Pkl -- pronounced _Pickle_ -- is an embeddable configuration language which provides rich support for data templating and validation.
|
||||
It can be used from the command line, integrated in a build pipeline, or embedded in a program.
|
||||
Pkl scales from small to large, simple to complex, ad-hoc to repetitive configuration tasks.
|
||||
|
||||
xref:introduction:index.adoc[Introduction]:: Why we created Pkl and what it can do for you.
|
||||
xref:language.adoc[Language]:: Get to know the language and standard library.
|
||||
xref:language-bindings.adoc[Bindings]:: Libraries for embedding Pkl into general-purpose languages.
|
||||
xref:tools.adoc[Tools]:: CLI, Gradle plugin, code generators, and other tools.
|
||||
link:{uri-pkl-examples-repo}[Examples]:: Ready-to-go examples with full source code.
|
||||
xref:release-notes:index.adoc[Release Notes]:: What's new in each release.
|
||||
3
docs/modules/ROOT/pages/integrations.adoc
Normal file
3
docs/modules/ROOT/pages/integrations.adoc
Normal file
@@ -0,0 +1,3 @@
|
||||
= Framework Integrations
|
||||
|
||||
* xref:spring:ROOT:index.adoc[Spring (Boot) Integration]
|
||||
6
docs/modules/ROOT/pages/language-bindings.adoc
Normal file
6
docs/modules/ROOT/pages/language-bindings.adoc
Normal file
@@ -0,0 +1,6 @@
|
||||
= Language Bindings
|
||||
|
||||
* xref:java-binding:index.adoc[Java]
|
||||
* xref:kotlin-binding:index.adoc[Kotlin]
|
||||
* xref:swift:ROOT:index.adoc[Swift]
|
||||
* xref:go:ROOT:index.adoc[Go]
|
||||
5
docs/modules/ROOT/pages/language.adoc
Normal file
5
docs/modules/ROOT/pages/language.adoc
Normal file
@@ -0,0 +1,5 @@
|
||||
= Language
|
||||
|
||||
* xref:language-tutorial:index.adoc[Tutorial]
|
||||
* xref:language-reference:index.adoc[Language Reference]
|
||||
* xref:standard-library.adoc[Standard Library]
|
||||
7
docs/modules/ROOT/pages/resources.adoc
Normal file
7
docs/modules/ROOT/pages/resources.adoc
Normal file
@@ -0,0 +1,7 @@
|
||||
= Resources
|
||||
include::../partials/component-attributes.adoc[]
|
||||
|
||||
There's more to explore!
|
||||
|
||||
* Visit Pkl's repositories on https://github.com/apple?q=pkl[GitHub]
|
||||
* Browse the standard library's https://pkl-lang.org/package-docs/pkl/{pkl-version}/[API Docs]
|
||||
13
docs/modules/ROOT/pages/standard-library.adoc
Normal file
13
docs/modules/ROOT/pages/standard-library.adoc
Normal file
@@ -0,0 +1,13 @@
|
||||
= Standard Library
|
||||
include::../partials/component-attributes.adoc[]
|
||||
|
||||
The standard library is a set of Pkl modules, versioned and distributed together with the language.
|
||||
It is documented in the link:{uri-pkl-stdlib-docs-index}[API Docs].
|
||||
|
||||
To import a standard library module, use `import "pkl:<identifier>"`.
|
||||
For example, `import "pkl:json"` imports the `pkl.json` module.
|
||||
|
||||
The `pkl.base` module defines the most fundamental properties, methods, and classes for using Pkl.
|
||||
Its members are automatically available in every module and hence, it does not need to be imported.
|
||||
|
||||
The default module allowlist (`--allowed-modules`) grants access to all standard library modules.
|
||||
10
docs/modules/ROOT/pages/tools.adoc
Normal file
10
docs/modules/ROOT/pages/tools.adoc
Normal file
@@ -0,0 +1,10 @@
|
||||
= Tools
|
||||
include::ROOT:partial$component-attributes.adoc[]
|
||||
|
||||
* xref:pkl-cli:index.adoc[CLI]
|
||||
* xref:pkl-doc:index.adoc[Pkldoc]
|
||||
* xref:pkl-gradle:index.adoc[Gradle Plugin]
|
||||
* Editor support
|
||||
** xref:intellij:ROOT:index.adoc[IntelliJ]
|
||||
** xref:vscode:ROOT:index.adoc[VSCode]
|
||||
** xref:neovim:ROOT:index.adoc[Neovim]
|
||||
64
docs/modules/ROOT/partials/component-attributes.adoc
Normal file
64
docs/modules/ROOT/partials/component-attributes.adoc
Normal file
@@ -0,0 +1,64 @@
|
||||
// TODO: move to antora.yml once supported
|
||||
|
||||
// the following attributes must be updated immediately before a release
|
||||
|
||||
// pkl version corresponding to current git commit without -dev suffix or git hash
|
||||
:pkl-version-no-suffix: 0.25.0
|
||||
// tells whether pkl version corresponding to current git commit
|
||||
// is a release version (:is-release-version: '') or dev version (:!is-release-version:)
|
||||
:!is-release-version:
|
||||
|
||||
// the remaining attributes do not need to be updated regularly
|
||||
|
||||
:pkl-version: {pkl-version-no-suffix}-dev
|
||||
ifdef::is-release-version[]
|
||||
:pkl-version: {pkl-version-no-suffix}
|
||||
endif::[]
|
||||
|
||||
// use non-unique snapshot version because we have no way to determine unique snapshot version here
|
||||
:pkl-artifact-version: {pkl-version-no-suffix}-SNAPSHOT
|
||||
ifdef::is-release-version[]
|
||||
:pkl-artifact-version: {pkl-version}
|
||||
endif::[]
|
||||
|
||||
:uri-maven-docsite: https://central.sonatype.com/
|
||||
|
||||
:uri-sonatype: https://s01.oss.sonatype.org/service/local/repositories/snapshots/content/
|
||||
|
||||
:symbolic-version-name: latest
|
||||
ifdef::is-release-version[]
|
||||
:symbolic-version-name: current
|
||||
endif::[]
|
||||
:uri-pkl-docs-base: https://pkl-lang.org/package-docs
|
||||
:uri-pkl-stdlib-docs-base: {uri-pkl-docs-base}/pkl
|
||||
:uri-pkl-stdlib-docs: {uri-pkl-stdlib-docs-base}/{pkl-version}
|
||||
:uri-pkl-stdlib-docs-index: {uri-pkl-stdlib-docs}/
|
||||
|
||||
// TODO(oss): check these links when we have tags
|
||||
:github-branch: main
|
||||
ifdef::is-release-version[]
|
||||
:github-branch: v{pkl-version-no-suffix}
|
||||
endif::[]
|
||||
:uri-github-tree: https://github.com/apple/pkl/tree/{github-branch}
|
||||
:uri-pkl-stdlib-sources: {uri-github-tree}/stdlib
|
||||
|
||||
:github-releases-base: https://github.com/apple/pkl/releases
|
||||
:github-releases: {github-releases-base}/download/{pkl-artifact-version}
|
||||
|
||||
:uri-pkl-core-main-sources: {uri-github-tree}/pkl-core/src/main/java/org/pkl/core
|
||||
:uri-pkl-cli-main-sources: {uri-github-tree}/pkl-cli/src/main/kotlin/org/pkl/cli
|
||||
:uri-pkl-doc-main-sources: {uri-github-tree}/pkl-doc/src/main/kotlin/org/pkl/doc
|
||||
|
||||
// This attribute is used as language for Pkl code blocks.
|
||||
// It can then be mapped to different languages in different environments (e.g., IntelliJ vs. Antora).
|
||||
:pkl: pkl
|
||||
:pkl-expr: pkl expression
|
||||
|
||||
:uri-pkl-examples-repo: https://github.com/apple/pkl-jvm-examples
|
||||
:uri-pkl-examples-tree: {uri-pkl-examples-repo}/tree/main
|
||||
:uri-build-eval-example: {uri-pkl-examples-tree}/build-eval
|
||||
:uri-codegen-java-example: {uri-pkl-examples-tree}/codegen-java
|
||||
:uri-codegen-kotlin-example: {uri-pkl-examples-tree}/codegen-kotlin
|
||||
:uri-config-java-example: {uri-pkl-examples-tree}/config-java
|
||||
:uri-config-kotlin-example: {uri-pkl-examples-tree}/config-kotlin
|
||||
:uri-pkldoc-example: {uri-pkl-examples-tree}/pkldoc
|
||||
Reference in New Issue
Block a user