Skip to content

Introduce pkl project init to create a project aka PklProject #1406

@StefMa

Description

@StefMa

Go has something similar with go mod init.

Creating a PklProject by hand is possible, but I think it would be a nice convenient function to inrtoduce pkl project init.
It will create a PklProject and PklProject.deps.json with some base setup?!

amends "pkl:Project"

package {
  name = "some.name" // Maybe we can support here pkl project init --name "my.awesome.project"
  baseUri = "package://pkg.pkl-lang.org/github.com/[owner/name]/\(name)"
  version = "0.1.0"
  packageZipUrl = "https://github.com/[repo/name]/releases/download/\(name)@\(version)/\(name)@\(version).zip"
  description = "TODO"
  authors {
    "PlaceHolder <author@email.com>"
  }
  website = "https://github.com/[owner/name]"
  sourceCode = "https://github.com/[owner/name]"
  license = "TODO"
  issueTracker = "https://github.com/[owner/name]/issues"
}

dependencies {
  // Add dependencies here
}
{
  "schemaVersion": 1,
  "resolvedDependencies": {}
}

The placeholders and waht we put in should be discussed of course.
But maybe this gives especially new comes a better onboarding to pkl.
No need to find out that it is possible to create a PklProject and how to set it up etc.

We should also discuss if what cli options we support.
name is a good candidate I guess.
website etc. might be a bit too mucy?! 🤔 🤷

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions