# How to Setup ChromeOS for Web Development

Starting anything at all can be daunting; there’s just a lot to worry about. Say I needed to start a provision store, I’d be worried about how much it would cost to get a shop, what security technology to implement, whether or not I’d have workers, how many workers, would they be short or tall workers, fat or thin….the list is endless.

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128226789.png align="left")

---

So I had just gotten the Samsung Chromebook XE303C12 some months back and asked myself the same question you probably are asking yourself;

> ***“How on earth do I code on this thing??”****.*

I found some materials online alright, but they seemed to be all over the place, so I decided to put it all together how I would have wanted them.

We’ll go through these major steps:

1. Enable Developer Mode
    
2. Before we get our hands dirty (Caret, CodePad, Quantum, Zed)
    
3. Chromebrew (Crew)
    
4. Install Linux with Crouton
    
5. How about an IDE?
    
6. Specific Stack?
    

---

## Enable Developer Mode

In developer mode, you have more control over your Chromebook and can mess around with it (as well as mess up your Chromebook). This process will completely wipe every data on your pc, so you might need to back up.

To put your Chromebook in Developer Mode:

1. Press and hold the **Esc** and **Refresh keys** together, then press the **Power button** (while holding the other two keys). This will reboot your Chromebook into Recovery Mode.
    
2. As soon as Recovery Mode pops up (the screen with the yellow exclamation point ), press **Ctrl+D**. This will release a prompt asking if you want to turn on Developer Mode.
    
3. Press **Enter** to continue, then give it some time. It’ll pop up with a new screen for a few moments, then reboot and go through the process of enabling Developer Mode. This may take a little while (about 15 minutes or so) and will wipe your local information.
    
4. When done, it will return to the screen with the red exclamation point. Leave it alone until it reboots into Chrome OS.
    

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128341727.png align="left")

> Note: after switching developer mode, you might see this on every boot (ignore the message). You can skip this by pressing **Ctrl+D**.

---

## Before we get our hands dirty

> (Caret, CodePad, Quantum, Zed)

It would be worth stating that there are actually some great text editors you can download from Chrome web Store. Here are some of them I’ve used and think are not so bad:

### Caret

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128380393.png align="left")

## CodePad

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128398546.png align="left")

## Quantum

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128413571.png align="left")

## Zed

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128429176.png align="left")

---

## Chromebrew (Crew) — ChromeOS Package Manager

News flash! ChromeOS currently has no package manager like Yum or Apt. To install any app, developers have to build from source for specific architectures.

Fortunately, Chromebrew helps to bridge this gap a little; with Chromebrew, we can install popular packages like Git, Nano, Curl, Node (Nodejs), MongoDB, Python, PHP, Apache, and Nginx. The full package list can be found [**here**](https://github.com/skycocker/chromebrew/tree/master/packages).

To install Chromebrew:

Press **Ctrl + Alt + T** to open Crosh, then type **shell** (to enter developer shell). then type this command:

```bash
wget -q -O - https://raw.github.com/skycocker/chromebrew/master/install.sh | bash
```

OR

```bash
curl -Ls git.io/vddgY -o install.sh && yes | bash install.sh
```

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128505649.png align="left")

That should do the trick. To check that the installation was successful, type in:

```bash
crew search
```

You should see a list of all the available packages. To install a package:

```bash
crew install package_name
```

To remove a package:

```bash
crew remove package_name
```

To update all package

```bash
crew update
```

---

## Install Linux with Crouton

1. Download Crouton from the top of [this page](https://github.com/dnschneid/crouton) (or by [clicking here](https://goo.gl/fd3zc)) and save it in your Downloads folder.
    
2. Press **Ctrl+Alt+T** to bring up a terminal on your Chromebook.
    
3. At the Terminal, run the following command to enter a Ubuntu shell:
    
    ```bash
    shell
    ```
    
4. Next, run the following command to install Crouton:
    
    ```bash
    sudo sh -e ~/Downloads/crouton -t xfce,xiwi
    ```
    
5. If you’re doing this on a Chromebook Pixel, change it to:
    
    ```bash
    sudo sh -e ~/Downloads/crouton -t touch,xfce,xiwi
    ```
    
    ![result](https://devjavu.space/uploads/1_olrtiemi4uefdr9dmaj9ra.png align="left")
    
    The installation process will take a while, so you could go see a movie while it’s at it. As the installation continues, go to the Chrome web store and install the **Crouton Integration Extension.** Once done, you can start up the Xfce desktop session with the following command:
    

```bash
sudo startxfce4
```

You should see a new tab pop up.

![](https://cdn.tealfeed.com/articles/content-images/64523e73249f62b0635d5c06/1683128757410.png align="left")

Pretend you’re on an entirely different machine and explore the possibilities. you can log out to close the xfce4 session. You can always use the apt package manager to install Linux-related packages that Chromebrew doesn’t give you.

---

## How about an IDE

At this point, you can install my favorite IDE, Visual Studio Code. However, for some Chromebook architectures, the 64-bit and 32-bit versions don’t work.

If your Chromebook architecture is amd64 or **armhf** you can head over to this awesome site [**here**](https://code.headmelted.com/) and follow the download instruction.

You should now be able to run VScode in **xfce4.**

## Specific Stack

If you build with J**avascript**, you might want to install most of the tools and packages needed for development (**Nodejs** especially).

If it’s **PHP** or **Laravel**, you can always install PHP and Apache web servers via **Apt** and every other needed tool and package for development.

In essence: If **Apt** doesn’t get you a package or tool, try Chromebrew (**crew**) from your shell. You can always switch from Chronos Session to Ubuntu:

```bash
#to start the chroot session
$ sudo enter-chroot
#to exit
$ exit
```

Cheers ☕️

---

I’d like to acknowledge these blog posts from where the above information was compiled.

%[https://medium.com/@dihuta/chromebrew-crew-chromeos-package-manager-a91e56a3d898]
