DEV Community

Cover image for 📢 Announcing New Local Dev Setup Options for Contributing to Forem!
Mac Siri for The DEV Team

Posted on

📢 Announcing New Local Dev Setup Options for Contributing to Forem!

It's almost that time of the year again: Hacktoberfest! The month-long celebration of supporting open-source. If you were ever on the fence or just curious about Forem but lacked the time to properly set up a local development environment, I'm excited to share with you all a few new expedited ways that we cooked up ahead of this event.

Here are a few ways to quickly get started with contributing to DEV:

Github CodeSpace & Gitpod: The absolute fastest way

Both of these tools are cloud development environments. They are good for quickly poking around the codebase and the go-to daily driver tool. Because they are web-based, they have the added benefit of being able to run on any computer, tablet, or even your phone if you want the extra challenge. Both tools are similar and come with free plan hours, so you are free to choose. Our cloud environment comes with all the dependencies installed and the database seeded. Click on one of the options below to get started!

Open in GitHub Codespaces

Open in Gitpod

VS Code with Dev Containers

Forem now supports dev containers! This means you can have a flexible containerized development environment with all the required dependencies set up in under 15 minutes on most modern machines. All you need is:

Open up your VS Code and use the command in the command palette, Dev Containers: Rebuild and Reopen in Container, and you're ready to go!

image

Containerized setup with dip gem

Want the convenience of containerized setup without having to deal with learning and running Docker commands? dip gem is here to help. The folks at Evil Martians devised this CLI tool that provides a native-like interaction. Once you have Docker installed and our repository cloned:

  1. gem install dip
  2. dip provision to build images and download dependencies
  3. dip rails s to start the server!

Image description

The one downside to this method is that it will still rely on your system's Ruby, but the benefits truly outweigh the cons. To see more commands, run dip ls. You are free to use any Code Editor if you go this route (vs being tied to VS Code).

DIY setup aka bare metal

Setting up manually is always an option! If you have a preference or want additional flexibility in the tools for your craft, you are free to set up however you want. Forem does not use dependencies that stray too far off the beaten path, but it won't exactly be trivial if this is your very first Rails app setup. We are revamping this documentation to make this process even more straightforward, so stayed tuned!

We hope that offering these options will smoothen the path of your coding journey. Please let us know if you encounter any issues by opening up a bug issue in our issue queue.

Happy Coding and Happy Hacktoberfest!

Top comments (6)

Collapse
 
nickytonline profile image
Nick Taylor

Woohoo! Awesome!

A basketball player with cool sunglasses rotating left and right with the caption FABULOSO

Collapse
 
nathan_tarbert profile image
Nathan Tarbert

This is great!

Collapse
 
thomasbnt profile image
Thomas Bnt ☕

Awesome!

Collapse
 
leob profile image
leob

Great job Forem with these options - and good that "bare metal" wasn't forgotten!

Collapse
 
dinozavrix profile image
dinozavrix

Thank you! Does it work on Apple M1? There was a problem with installing forem docker containers on M1 before.

Collapse
 
maestromac profile image
Mac Siri • Edited

Yes, Apple M1 is support. If it's not working, please try enabling Docker's Rosetta 2 support in the beta features.