Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

pubpascal-app

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

PubPascal Apps

The native (Delphi) side of PubPascal — the apps that run on a developer's machine, talking to the portal (https://www.pubpascal.devv and the developer's own git. The web portal lives separately (pubpascal-dev).

Layout

  • cli/ — the engine, boss.exe. It is not a separate codebase: the source is Boss (HashLoad/boss), pulled in as a git submodule at cli/.modules/boss and compiled by cli/scripts/build.ps1. Workspace operations (workspace clone / status / update / push), package operations (pkg spec, sbom) and compliance (cra) all live there, alongside Boss's own dependency management (install, update, new, ...).

    Because it is a submodule, clone with --recursive, or run git submodule update --init --recursive in an existing clone. Fixing the engine means opening a PR on HashLoad/boss — never editing files under cli/.modules/, which are a checkout, not a copy.

  • studio/ — the GUI apps, built around one shared WebView2 frame. See studio/README.md. Two products from one core:

    • studio/core/ — the shared frame (workspace graph + bridge + CLI driving).
    • studio/desktop/ — the standalone Windows app (today's shipping exe).
    • studio/ota/ — the RAD Studio plugin (docks the same frame via OTA).
    • studio/installer/ — Inno Setup (bundles the CLI + the desktop app).

Why a monorepo

The studio apps run the CLI, and everything reads the same pubpascal.json manifest — they share concepts and code (the studio/core/ frame is reused by both the desktop and the OTA hosts). One repo keeps the native apps together, separate from the web portal (pubpascal-dev).