Skip to content

feat: support local brick#283

Open
dido18 wants to merge 37 commits intomainfrom
local-bricks
Open

feat: support local brick#283
dido18 wants to merge 37 commits intomainfrom
local-bricks

Conversation

@dido18
Copy link
Contributor

@dido18 dido18 commented Mar 4, 2026

Motivation

Support a local bricks inside the app folder.

Change description

Added a brick Manager that has a list of Brick sources. A brick source is any sruct that implement the following api

  • GetByID(id string) (*Brick, bool)
  • ListBricks() ([]Brick, bool)
  • GetReadme(id string) (string, error)`
  • GetComposePath(id string) (*paths.Path, bool)
  • GetApiDocPath(id string) (*paths.Path, error)
    -GetExamplesPath(id string) (paths.PathList, error)

Added two brick sources

  • builtin that loads the bricks index in the asset folder
  • applocal that loads the bricks index from an app

The applocal index is added to the manager only when an app is present.
NOTE: the WithBrickSource create a copy of the manager.

Additional Notes

TODO

  • remove hardcoded "Arduino" from the /app/:id/bricks response
  • suppor the requirements.txt

Reviewer checklist

  • PR addresses a single concern.
  • PR title and description are properly filled.
  • Changes will be merged in main.
  • Changes are covered by tests.
  • Logging is meaningful in case of troubleshooting.

@per1234 per1234 added the enhancement New feature or request label Mar 4, 2026
@Xayton Xayton linked an issue Mar 5, 2026 that may be closed by this pull request
dido18 added 17 commits March 9, 2026 12:11
…hods for consistency

feat: add new bricks for image classification, object detection, video processing, and anomaly detection
@dido18 dido18 linked an issue Mar 10, 2026 that may be closed by this pull request
@dido18 dido18 marked this pull request as ready for review March 10, 2026 14:37
rjtokenring and others added 10 commits March 11, 2026 14:29
* wip

* better document the requirements

* remove hardcoded /home/arduino

* fix e2e in ci

* add sysupgrade requirement

* use uid instead of group

* Update docs/user-documentation.md

Co-authored-by: Davide <davideneri18@gmail.com>

---------

Co-authored-by: Davide <davideneri18@gmail.com>
* fix: create .cache only if needed

* fixup! fix: create .cache only if needed

* trigger ci️
* Download libraries used in examples during system init

* Implemented a basic progress for download of libraries

* Set data dir according to env var if specified

* Detect automatically default profile

* Download also the zephyr platform

* Slightly improve readability of code

---------

Co-authored-by: lucarin91 <lucarin@protonmail.com>
…n is not present in app.yaml (#265)

* add description md parser

* update load test

* add test e2e

* fix test e2e

* fix code review

* replace goldmark parser with manual parser

* fix removed goldmark

* code review fix

* code review fix
* chore: bump bricks, runner and examples to 0.8.0rc3

* fix: bump runnerVersion in config
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Local bricks: aupport app-local inside arduino-app-cli ☔️ Custom bricks

10 participants