While Local Storage is great, it’s not ideal: it only stores data on the computer from which the user is accessing the page. This approach does not allow for the app to ‘remember’ anything when the same user tries to access it again from a different device. For that, you’re going to need a real backend.
OK, so … now what?
Where you go from here will depend in part on what you’ve learned so far. If you are on the full-stack Ruby on Rails path, hooray: you already have all of the tools you need to build your own full-fledged web app from scratch!
If not, never fear: you can learn how to build a back-end later using Node.js. For now, you can outsource your backend functionality to a Backend-as-a-Service (BaaS) company like Firebase or Apigee.
Building your own backend with Ruby on Rails
For those of you who are on the full-stack Ruby on Rails path, the next step is obvious: you get to build your own backend with Rails! In preparation, reread the Rails lesson on building an API to refresh how to set up a Rails backend that can handle JSON requests.
Outsourcing your backend to Firebase
If you skipped Ruby and/or Ruby on Rails or are on a different path, you’re not quite ready to build an entire web app from scratch. The good news: you don’t have to! We will provide you with resources that guide you through setting up your backend on Firebase.
With Ruby on Rails
- Refresher – how do you set up a basic Rails app?
- Why would you want to use AJAX to load large batches of data?
- Which services does Firebase offer?
- How do you set up your app to use those services from Firebase Hosting and/or from an external host (like GitHub Pages)?
- How do you get your app to communicate with and/or pass data to and from the various Firebase services?
With Ruby on Rails
content_for stuff at the bottom.
- Refresh yourself on Rails AJAX from RailsGuides (just skim the top few sections).
- Read Bootstrapping JSON data into a Rails View to learn about passing data to your front end.
- Explore the different services offered by Firebase. Pay particular attention to Cloud Firestore for now. You may or may not also want to use Firebase Hosting and/or any of the other services offered by Firebase, particularly Cloud Storage and Authentication, but you probably won’t need any of those for your first Firebase project.
- If this is your first ever encounter with Firebase, we encourage you to do this Google Codelab, which will walk you through setting up a sample app on Firebase step by step.
- If you haven’t already integrated one of your previous projects with Firebase, go back to one of them now (e.g. the library project or the to-do app), and follow this guide to prepare it for interaction with a Firebase backend. Caution: if you’re not going to be hosting your app on Firebase Hosting, but prefer to leave it where it is (e.g. on GitHub Pages), make sure to click the ‘from the CDN’ tab in step 3! Then, use what you learned in the codelab to make your own app actually interact with Firebase.
This section contains helpful links to other content. It isn’t required, so consider it supplemental for if you need to dive deeper into something.