{"id":15605633,"url":"https://github.com/srinitude/rails-catalina","last_synced_at":"2026-04-06T02:32:19.978Z","repository":{"id":82872379,"uuid":"273743956","full_name":"srinitude/rails-catalina","owner":"srinitude","description":"A list of resources for anyone on macOS Catalina looking to create and deploy their own Rails application","archived":false,"fork":false,"pushed_at":"2020-06-20T16:47:32.000Z","size":4,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-03T11:27:25.377Z","etag":null,"topics":["aws","aws-elastic-beanstalk","bash","catalina","css","git","github","html","javascript","macos","rails","rails6","ruby","ruby-on-rails","sass","scss","sql","zsh"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/srinitude.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-20T16:26:48.000Z","updated_at":"2020-06-20T16:55:08.000Z","dependencies_parsed_at":"2023-03-23T04:49:29.354Z","dependency_job_id":null,"html_url":"https://github.com/srinitude/rails-catalina","commit_stats":{"total_commits":3,"total_committers":1,"mean_commits":3.0,"dds":0.0,"last_synced_commit":"86f066924153e34db998e27cf9babb0b5ace2a3a"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/srinitude/rails-catalina","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srinitude%2Frails-catalina","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srinitude%2Frails-catalina/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srinitude%2Frails-catalina/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srinitude%2Frails-catalina/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/srinitude","download_url":"https://codeload.github.com/srinitude/rails-catalina/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srinitude%2Frails-catalina/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31457585,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"online","status_checked_at":"2026-04-06T02:00:07.287Z","response_time":112,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","aws-elastic-beanstalk","bash","catalina","css","git","github","html","javascript","macos","rails","rails6","ruby","ruby-on-rails","sass","scss","sql","zsh"],"created_at":"2024-10-03T04:10:23.364Z","updated_at":"2026-04-06T02:32:19.955Z","avatar_url":"https://github.com/srinitude.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"This guide assumes no prior programming experience and is just one example of how to go about it.\n\n# Table of Contents\n\n- [Terminal and Shell Resources](#terminal-and-shell-resources)\n- [Text Editors](#text-editors)\n- [Git and Github](#git-and-github)\n- [Vagrant](#vagrant)\n- [HTML](#html)\n- [CSS and SASS](#css-and-sass)\n- [JavaScript](#javascript)\n- [SQL](#sql)\n- [Ruby](#ruby)\n- [Ruby on Rails](#ruby-on-rails)\n- [Deploying Your App](#deploying-your-app)\n\n\n## Terminal and Shell Resources\n\nWhen running Catalina, stick with the default zsh shell that the terminal comes with, instead of bash. However, it seems like a lot of the commands used in the zsh shell are similar to bash, so here are some bash resources.\n\n- https://www.makeuseof.com/tag/beginners-guide-mac-terminal/ (upto sudo section)\n- https://ss64.com/osx/ (Reference, not a tutorial)\n- http://linuxcommand.org/lc3_learning_the_shell.php (No need to look at the whole shell scripting section, as scripting is much easier in Ruby for beginners)\n- https://www.learnenough.com/command-line (This whole thing looks pretty good)\n- https://en.wikipedia.org/wiki/Man_page (Important when you don’t know how to use certain commands)\n- https://vitux.com/get-help-on-linux-shell/ (More on how to get help)\n- https://medium.com/@vietkieutie/what-happens-when-you-type-ls-c-into-your-shell-e2faf1ad2dbd (Advanced explanation as to what actually happens under the hood)\n- https://medium.com/@jalendport/what-exactly-is-your-shell-path-2f076f02deb4 ($PATH is super important)\n- https://www.digitalocean.com/community/tutorials/how-to-read-and-set-environmental-and-shell-variables-on-a-linux-vps (Good primer on environment variables)\n\n## Text Editors \n\nUse Visual Studio Code and either vi or emacs for a terminal-based text editor\n\n- https://flaviocopes.com/vscode/ (Nice VSCode tutorial)\n- https://www.cs.colostate.edu/helpdocs/vi.html (vi commands)\n- https://www.gnu.org/software/emacs/tour/ (Guided emacs tour)\n\n\n## Git and Github\n\nGit is super important for managing the state of your code\n\n- https://try.github.io/ (This looks especially good)\n- https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-readmes (READMEs are important for anyone else who’s looking at your code)\n- https://guides.github.com/activities/hello-world/ (Intro to Github)\n- https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners (Pretty solid)\n- https://git-scm.com/book/en/v2 (More in-depth dive about git concepts)\n- https://git-scm.com/docs (Reference only, not a tutorial)\n\n## Vagrant\n\nVagrant helps you create a development environment that simulates your production environment. Locally, you’re using MacOS, but a lot of servers out there to deploy your code mostly use Linux. As a result, you’ll be working within a Linux virtual machine environment most of the time.\n\n- https://www.vagrantup.com/intro (Intro to Vagrant)\n- https://www.vagrantup.com/downloads (Download Vagrant)\n- https://www.virtualbox.org/wiki/Downloads (Install Virtualbox)\n- https://www.vagrantup.com/intro/getting-started/project_setup (Project Setup)\n- https://www.vagrantup.com/docs/vagrantfile (What is a Vagrantfile?)\n- https://www.vagrantup.com/intro/getting-started/boxes (What is a Vagrant box?)\n- https://app.vagrantup.com/bento/boxes/amazonlinux-2 (Use a Vagrant box similar to your production environment)\n- https://www.vagrantup.com/intro/getting-started/up (Starting your Vagrant box)\n- https://www.vagrantup.com/intro/getting-started/synced_folders (cd into /vagrant to access the project located on your host machine)\n- https://www.vagrantup.com/intro/getting-started/networking (In your Vagrantfile, forward a specific port on your home machine to a port within the box. Common configuration for web server in Rails is host: 4000 and guest: 3000)\n\n## HTML\n\nHTML is text that the browser parses with its own code behind-the-scenes to create a webpage\n\n- https://learn.shayhowe.com/html-css/ (Super good for both HTML and CSS)\n- https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML (You’ll find out that Mozilla is one of the best when it comes to web-related resources)\n- https://developer.mozilla.org/en-US/ (Reference for all things web, no need to read it all at once)\n\n## CSS and SASS\n\nCSS is text that the browser parses with its own code behind-the-scenes to style a webpage\n\n- https://learn.shayhowe.com/html-css/ (Super good for both HTML and CSS)\n- https://learnlayout.com/ (Layout is the hardest part about CSS)\n- https://css-tricks.com/specifics-on-css-specificity/ (CSS Specificity, CSS Tricks in general is a really good CSS resource)\n- http://www.standardista.com/wp-content/uploads/2012/01/specificity3.pdf (CSS Specificity Examples)\n- https://developer.mozilla.org/en-US/docs/Learn/CSS (Mozilla CSS reference)\n- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference (CSS Properties to use as a reference)\n- https://sass-lang.com/ (SASS/SCSS is the primary CSS preprocessor in Rails)\n\n## JavaScript\n\nJavaScript is a language that was initially made for the browser, but is now commonly used in a general programming context as well.\n\n- https://javascript.info/ (Super good modern JavaScript tutorial)\n- https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/JavaScript_basics (JS basics)\n- https://developer.mozilla.org/en-US/docs/Learn/JavaScript/First_steps/Variables (Variables in JS)\n- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures (Data types in JS)\n- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence (Operator Precedence)\n- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Control_flow_and_error_handling (Control flow and error handling)\n- https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Functions (Functions)\n- https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects (Objects)\n- https://www.youtube.com/channel/UCO1cgjhGzsSYb1rsB4bFe4Q/playlists (Fun Fun Function is my favorite JavaScript Youtuber)\n- https://github.com/mbeaudru/modern-js-cheatsheet (Modern JS Cheatsheet)\n\n## SQL\n\nRails allows you to use a relational database to manage all of your data. When it comes to a particular database in question, I highly recommend using PostgreSQL.\n\n- https://www.youtube.com/watch?v=FR4QIeZaPeM (What is a database and SQL?)\n- https://web.csulb.edu/colleges/coe/cecs/dbdesign/dbdesign.php?page=sql/ddldml.php (Data definition and data manipulation)\n- https://www.codecademy.com/learn/learn-sql (Good SQL tutorial)\n- https://guides.rubyonrails.org/active_record_basics.html (Interfacing with your db in Rails through Active Record, go through all of the other ActiveRecord sections in the Rails Guides as well)\n- https://guides.rubyonrails.org/active_record_migrations.html\n- https://guides.rubyonrails.org/active_record_validations.html\n- https://guides.rubyonrails.org/active_record_callbacks.html\n- https://guides.rubyonrails.org/association_basics.html\n- https://guides.rubyonrails.org/active_record_querying.html\n- https://www.postgresqltutorial.com/ (This tutorial on Postgresql Looks pretty good)\n- https://www.postgresql.org/docs/12/index.html (Use as a reference)\n\n## Ruby\n\nRuby is a great general programming language and it’s currently most famous for being used in Ruby on Rails (or Rails for short)\n\n- https://www.codecademy.com/learn/learn-ruby (Covers all of the basic types)\n- http://www.r-5.org/files/books/computers/dev-teams/diagrams/Sandi_Metz-Practical_Object-Oriented_Design_in_Ruby-EN.pdf (How to write great Ruby code)\n- https://ruby-doc.org/core-2.7.1/ (Use as a reference and not read all at once when you want information on certain types)\n- https://en.wikipedia.org/wiki/RubyGems (What is a gem?)\n- https://guides.rubygems.org/rubygems-basics/ (RubyGems basics)\n- https://guides.rubygems.org/command-reference/ (Use as a reference)\n- https://en.wikipedia.org/wiki/Shebang_(Unix) (Applicable when you want to write your own scripting)\n\n## Ruby on Rails\n\nOne of the most popular web frameworks and most approachable in my opinion.\n\n- https://guides.rubyonrails.org/getting_started.html (Start here)\n- https://guides.rubyonrails.org/index.html (Scope out the entire site over time and you’ll eventually become a pro when it comes to concepts)\n- https://www.railstutorial.org/book (This whole thing is really good)\n- https://bundler.io/gemfile.html (What is a Gemfile?)\n\n\n## Deploying Your App\n\nMake your application available to the world! I’m going to go into AWS resources when it comes to deploying, as it is a cost-effective way to do so, albeit a little tedious.\n\n- https://portal.aws.amazon.com/billing/signup#/start (Since AWS has a 12-month free tier, only create a new AWS account only when you’re ready to deploy your code for the world to see. I made a mistake creating an AWS account a long time ago and don’t have much of my free tier left.)\n- https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ruby-rails-tutorial.html (Deploy a Rails app to AWS with Elastic Beanstalk)\n- https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/Welcome.html (Read through all of the AWS Elastic Beanstalk guides for more advanced usage)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrinitude%2Frails-catalina","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsrinitude%2Frails-catalina","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrinitude%2Frails-catalina/lists"}