Developing on a Chromebook (well, CloudReady), Part 1

November 28, 2016

I like the idea of Chrome Apps. It is (was?) a great idea; write one app and it will run on Linux, Chrome OS, Mac and Windows (yeah, the order is telling). It’s a shame Google has announced it will stop supporting Chrome Apps on Linux, Mac and Windows. So initially this started out as a log of my adventure of making a Chrome App on Chrome OS (well a Chromium OS distro called CloudReady). But now it is just developing a Chrome App on Chrome OS. I still want to develop one app on multiple platforms, but need a new perspective. It’ll be a Chrome App on Chrome OS and I’m not sure what (electron or nw.js) on other OS’s.

So, to reach that goal, and after researching a bit, I’m going to start out with making a Progressive Web App on my CloudReady Chromebook. Google has a nice CodeLab for making one, and it supports development on a Chromebook. I won’t belabor things by doing a step-by-step read-through of something that is already step-by-step. Instead, what will follow in this post (and hopefully others) are highlights and other review-type thoughts.

First things first: the development environment. I use github.com for most stuff, so I forked the codelab. The next part is how do I get that onto my Chromebook to edit? Also, commits are a part of development, so then how do we push them? I want a simple, direct way to do it (I’m thinking of low barrier of entry). The only thing I’ve found that has GUI to clone repositories locally is Chrome Dev Editor (CDE). It’s a shame its been discontinued and that it is hard to find in the Chrome App Web Store. But for editing it’s nice, for committing it works, and one can push commits.

There are a few “buts” though. One important item is that there is not a way to “fast forward” a repo. Only thing I’ve figured out is to delete and re-clone.

Another, perhaps more subtle, ChromeOS “but” is that CDE can clone to Google Drive. Then Chrome Dev Editor edits those files in Google Drive. Which sounds nice (another copy/backup). But those files are not stored offline. One could mark them offline in the “Files” app, but in large projects that would be tedious. An enhancement or an extension to manage offline files would be cool, but that along with forking and continuing CDE is another endeavor.

Besides those two “buts”, I have started doing the codelab. I’ll keep notes are post another entry as I move through the tutorial. The next post is here.