-
Notifications
You must be signed in to change notification settings - Fork 857
Add Devcontainer Setup for Local Development #2120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Devcontainer Setup for Local Development #2120
Conversation
jorgemanrubia
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't use devcontainers so I am not sure about this one. What do you think @kevinmcconnell @flavorjones?
|
Thanks for the feedback @jorgemanrubia! Totally understand that devcontainers aren’t part of your current workflow. The intention behind this PR isn’t to change how the project is developed or require anyone to use devcontainers, but to provide an optional setup for contributors who want it. Rails offers devcontainer support as an option, and many people in the Rails community use it to get an application running quickly without having to install or align local dependencies. For open source projects especially, this can lower the barrier to entry for first-time contributors: clone the repo, open it in a compatible editor, and the app is ready to run. This setup doesn’t affect existing workflows, CI, or production in any way—it’s purely additive. If someone doesn’t use devcontainers, they can simply ignore the files. From my perspective, this is mainly about improving onboarding and making the project more accessible to the wider Rails community. Of course, I’m happy to adjust or remove it if you feel it doesn’t align with the project’s goals. Thanks for considering it! 🙂 |
|
I'm pretty sure Docker and mise is all that's required and then bin/setup takes care of the rest - is there a scenario where those wouldn't be available? |
|
@northeastprince You’re right: with Docker, mise, and bin/setup, the project works well already. The devcontainer doesn’t replace that flow — it just wraps it in an optional, fully preconfigured environment. For some contributors, especially first-timers, it means “open the repo and start coding” without installing or aligning local tools first. If you already have everything set up, there’s no added benefit and it can be safely ignored. Since this repo is a great resource for learning, making the first step as easy and frictionless as possible really matters — similar to how Laravel emphasizes “it just works” onboarding — while keeping the existing setup unchanged. |
|
This project has some system dependencies that I don't see being installed in the minimal devcontainer Dockerfile. Does this actually run for you? |
|
@flavorjones It does run for me locally, but so far I’ve mostly been checking the code as a developer, not really using the app end-to-end as a normal user 😬. Because of that, I might not be hitting the parts that require those system dependencies yet. So yes, the minimal devcontainer Dockerfile is probably incomplete for full usage. Do you know which system dependencies could be missing or which part should I check? Thanks |
|
@elalemanyo If you look at the existing Many of these dependencies are surely already in the rails base container, and I'm totally not even sure the OSS Probably not showstoppers for basic development, so maybe it's OK! But also it feels very weird to have the set of system libraries being declared differently in multiple places. |
|
Closing this one for now |
This pull request adds a complete Devcontainer setup to streamline onboarding and ensure a consistent development environment across machines.