Skip to content

chore: add devcontainer / GitHub Codespaces support, developer documentation fixes#541

Merged
haslinghuis merged 2 commits intobetaflight:masterfrom
pfeerick:devcontainer
Apr 16, 2026
Merged

chore: add devcontainer / GitHub Codespaces support, developer documentation fixes#541
haslinghuis merged 2 commits intobetaflight:masterfrom
pfeerick:devcontainer

Conversation

@pfeerick
Copy link
Copy Markdown
Contributor

@pfeerick pfeerick commented Apr 15, 2026

For consideration

I find it much easier to start working things like the Betaflight Lua in a devcontainer since you know it has all the dependencies and is just ready to go, regardless of your OS and setup. Plus, since GitHub Codespaces uses devcontainers, it means you can even work on it from your browser, no build environment required at all!

Additionally, the documentation omitted one or two dependencies, and there was a broken link to the development docs.

Summary by CodeRabbit

Release Notes

  • New Features

    • Added Dev Container support to provide a pre-configured development environment for VS Code users with all necessary tools included.
  • Documentation

    • Added "Open in GitHub Codespaces" badge to README header.
    • Enhanced build instructions with both Dev Container workflow and detailed local build prerequisites.
    • Updated developer documentation reference in contributing guidelines.

It is much easier to start working with the betaflight lua in a devcontainer since you know it has make and lua52, and is just ready to go. Plus, since Github Codespaces uses devcontainers, it means you can even work from it from your browser, no local environment required at all!
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 15, 2026

📝 Walkthrough

Walkthrough

Development container configuration files are added to the repository alongside updated documentation. These changes introduce Docker-based development environment setup and update developer guides to reflect the new container workflow.

Changes

Cohort / File(s) Summary
Dev Container Configuration
.devcontainer/Dockerfile, .devcontainer/devcontainer.json
Introduces devcontainer setup with Ubuntu 22.04 base image, installing bash, git, lua5.2, make, and zip. VS Code configured to standardize line endings to LF.
Documentation Updates
CONTRIBUTING.md, README.md
Updated developer documentation link to external Betaflight guidelines. Enhanced build instructions with Dev Container workflow option and explicit local prerequisites (make, Lua 5.2, git, zip). Added GitHub Codespaces badge to README.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 A container is born, with tools all in place,
Lua and make in a freshly built space,
No local setup fuss—just open and go,
Dev environments blooming wherever they grow! 🌱

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Description check ❓ Inconclusive The description explains the motivation and benefits but lacks structured sections required by the template (e.g., commits, testing, related issues). While it addresses the 'why' of the changes, it does not follow the repository's PR description template format. Consider following the repository's PR description template more closely; ensure commit messages are descriptive and add issue references if applicable (e.g., 'Fixes #') to clarify resolved problems.
✅ Passed checks (2 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The title accurately captures the main changes: adding devcontainer/Codespaces support and fixing developer documentation.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@pfeerick pfeerick changed the title Devcontainer chore: add devcontainer / GitHub Codespaces support, developer documentation fixes Apr 15, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
.devcontainer/devcontainer.json (1)

6-11: Consider adding Lua language support extension.

While the minimal configuration is valid, you might want to enhance the developer experience by adding the Lua language extension to the devcontainer.

💡 Optional enhancement for Lua development
   "customizations": {
     "vscode": {
       "settings": {
         "files.eol": "\n"
-      }
+      },
+      "extensions": [
+        "sumneko.lua"
+      ]
     }
   }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.devcontainer/devcontainer.json around lines 6 - 11, Add the Lua VS Code
extension to the devcontainer by updating the existing "customizations.vscode"
block to include an "extensions" array and add the Lua extension identifier
(e.g., "sumneko.lua" or the current Lua extension id) alongside the existing
"settings" entry; update the "customizations.vscode" object (the same object
that contains "settings") to include "extensions": ["sumneko.lua"] so the Lua
language support is installed in the container.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.devcontainer/devcontainer.json:
- Around line 6-11: Add the Lua VS Code extension to the devcontainer by
updating the existing "customizations.vscode" block to include an "extensions"
array and add the Lua extension identifier (e.g., "sumneko.lua" or the current
Lua extension id) alongside the existing "settings" entry; update the
"customizations.vscode" object (the same object that contains "settings") to
include "extensions": ["sumneko.lua"] so the Lua language support is installed
in the container.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e88132bf-cafc-4d37-be0e-fd09d53b5af1

📥 Commits

Reviewing files that changed from the base of the PR and between c93054d and 1286ee4.

📒 Files selected for processing (4)
  • .devcontainer/Dockerfile
  • .devcontainer/devcontainer.json
  • CONTRIBUTING.md
  • README.md

@haslinghuis haslinghuis merged commit 46e1911 into betaflight:master Apr 16, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants