Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions content/development/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
+++
title = "Development"
description = "Development documentation for the Cockpit Control Station Software."
template = "docs/section.html"
sort_by = "weight"
weight = 2
draft = false
insert_anchor_links = "left"

redirect_to = "development/overview"
+++
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
423 changes: 423 additions & 0 deletions content/development/external-integrations/index.md

Large diffs are not rendered by default.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
21 changes: 21 additions & 0 deletions content/development/overview/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
+++
title = "Overview"
description = "Cockpit development overview."
date = 2026-05-07T16:29:59+02:00
template = "docs/page.html"
sort_by = "weight"
weight = 0
draft = false

[extra]
lead = 'The development documentation describes how to expand Cockpit with your own features.'
toc = true
top = false
+++

## Contributing
Cockpit is an open source project that welcomes contributions. Check out the the GitHub repository [here](https://github.com/bluerobotics/cockpit). You can contribute to Cockpit in different ways:
- 🐛 Bug Reports: Help us improve by reporting issues
- 💡 Feature Requests: Suggest new capabilities
- 🔧 Code Contributions: Submit pull requests
- 📝 Documentation: Improve our [docs](https://blueos.cloud/cockpit/docs) and examples
Binary file removed content/usage/advanced/external-widget-example.png
Binary file not shown.
40 changes: 1 addition & 39 deletions content/usage/advanced/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -624,45 +624,7 @@ Configuration determines the URL to fetch the page from, as well as the overall

###### Automatic External IFrames

As of BlueOS 1.4, HTTP Servers that provide a `register_service` endpoint (e.g.
[BlueOS Extensions](https://blueos.cloud/docs/latest/development/extensions/#web-interface-http-server))
can provide one or more URLs for Cockpit to automatically detect and present as External IFrame widgets:

{{ easy_image(src="external-widget-example", width=200) }}

The `register_service` endpoint should include a `"cockpit"` key in its `"extras"` dictionary, pointing to
an endpoint listing the available widgets:

`/register_service`
```json
{
...
"extras":{
"cockpit":"/cockpit_extras.json"
}
}
```

The Cockpit-focused endpoint should including a name, version, iframe URL, and an optional URL for
configuration of each widget:

`cockpit_extras.json`
```json
{
"target_system":"Cockpit",
"target_cockpit_api_version":"1.0.0",
"widgets":[
{
"name":"ExternalWidgetName",
"config_iframe_url":null,
"iframe_url":"/path/to/widget/page",
"version":"1.3.8"
}
]
}
```

If no configuration URL is provided, the standard [IFrame Widget](#iframe) configuration options apply.
External services can [automatically share](@/development/external-integrations/index.md) web interface URLs for Cockpit to turn into IFrame widgets, along with other features.

##### Image Viewer

Expand Down
Loading