FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

feat(learn): plugin skeleton and xmake learn init · Issue #620 · EngineSquared/EngineSquared · GitHub

feat(learn): plugin skeleton and xmake learn init #620

Description

Part of #617.

What to build

The plugin skeleton and the command that creates a learner workspace.

plugins/l/learn/
  xmake.lua              package("learn") set_kind("plugin")
  src/
    xmake.lua            task("learn") + set_menu
    main.lua             entry point
    modules/             (added by later issues)
    workspace/xmake.lua  copied into the learner's workspace

xmake learn init [dir] creates:

<dir>/
  xmake.lua        add_repositories(...) + add_requires("enginesquared", {configs = {core_only = true}})
  exercises/       copied from the plugin payload
  .progress/       state, gitignored
  .learn-mode      "tutor"

The generated xmake.lua derives one target per exercise directory from the numeric folder prefixes, each set_default(false) so nothing broken ever builds by accident. No git anywhere in the flow.

Done when

  • xmake plugin --install of this repository registers a working xmake learn
  • xmake learn init dir produces a workspace that configures and builds a placeholder exercise on Linux, macOS and Windows
  • the workspace needs no xrepo add-repo from the learner

Depends on

EngineSquared/xrepo#1, #618, #619

Metadata

Metadata

Assignees

No one assigned

    Labels

    buildEverything related to the build systemenhancementNew feature or requestlearning-trackProgressive learning track for the engine core

    Type

    No type

    Projects

    Status
    Not planned

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


    Back | FazBrowse Home | New Git URL