...with SSH. Otherwise, you would have to send your git credentials to the remote server every time you interact with it. Resources Read what's new to you, skim what...
...How to Write a Git Commit Message" in the resources) Push changes to the server Make a merge request from the branch to your main Accept the merge request
...and verify it by triggering an error. You can explain what an error-monitoring service like Sentry adds over plain e-mails: grouping similar errors, staying quiet until an error...
...is resolved, deduplicating across servers, and deferring notifications for flaky endpoints. Resources Read what's new to you, skim what's familiar, skip what you already master. Stop when you...
...application you often need to move data between the client (HTML, Javascript) and the server (Ruby, Rails). Step 1: Moving HTML snippets Add a find-as-you-type search to...
In this step, the rendering of the search results should happen on the server. So the client is pulling snippets of HTML from the server. For the part of...
...time to first result. You can explain what a hybrid looks like, such as a server-rendered page with an "island" built in SPA technology like React. You can explain...
...full page load, which limits how fluid the UI can feel. Progressively enhanced MPA. Still server-rendered HTML, but a small JavaScript layer swaps page fragments instead of reloading, handles...
...pnpm is fast, disk-efficient and feature-rich Deployment Kamal (containers on your own servers) Capistrano to servers run by our operations team We run our own hosting with dedicated...
...RSpec in Rails โ balanced comparison ๐ GoodJob README: comparison with other queues ๐ Rendering on the web โ server-rendered vs. client-rendered, with the vocabulary Discuss with your mentor Pick three rows...
Important Work on this lesson in advisor mode. Learning goals You can explain how server-side validation of single fields works while the user is still filling out the...
...an explanation for anything here, tailored to what you already know. Just ask. ๐ Validating forms โ server-side validation of single fields while the user types ๐ Switching form state โ showing and...
Most of MovieDB is server-rendered and enhanced with Unpoly, and that's our default. Sometimes one region of a page needs more interactivity than that model gives you comfortably...
...Then we build an island: a React component mounted into a server-rendered page. This card teaches the React basics you need for that โ components, state, effects, talking to Rails...
...to-end tests shouldn't: a component's details and edge cases, without a server or a database. You can write a unit spec for a component: create the DOM...
...delay (5 seconds in the example), the component makes a request to /foo. The server is expected to respond with HTML containing an element with the same [id] (news in...
...failing end-to-end test by pausing it and inspecting the page and the server log. You review your own changes before committing, so debugging statements never end up in...
...Debugging โ when the bug is in your stylesheet Debugging in Ruby Note Running your server as part of a single combined terminal with the bin/dev command makes Ruby debugging harder...
Learning goals You can explain what a cookie is, how browser and server exchange it, and which attributes control its lifetime and scope (expiry, domain, path, Secure, HttpOnly...
...belongs in a cookie, in the session, in the database โ or nowhere on the server at all. Learn What is a Cookie? Google it if you do not know.
...schedule a cronjob with whenever, and explain what each run costs and on which servers it should run. You can test code that enqueues and performs jobs. You can compare...
...what whenever generates for you ๐ Decide whether cronjobs should run on one or all servers โ our card Alternatives We use GoodJob, which stores jobs in PostgreSQL โ no extra service to...
...in builder mode. Learning goals You can explain why a file in a publicly served directory is not protected, even when no page links to it. You can explain the...
...two common strategies for private attachments โ an unguessable path served directly by the web server, and delivery through a controller action that checks authorization โ and their trade-offs in server...
Our workstations and servers run Linux. This lesson covers the command-line tools you need every day, from file and process handling to SSH and shell scripts. Important
...in bash and in Ruby, using a shebang line. You can connect to a server with SSH and copy files to and from it, and you can explain why you...
...instead of through global selectors. You can let a component fetch HTML from the server and update its own part of the page. You can register clean-up for a...
...MDN; how helpers like compiler() notice new elements ๐ Using the Fetch API โ MDN; loading server HTML into a component without a page load Exercises Refactor movie counter Refactor your movie...
You can explain how an uploaded file travels from the browser to the server (a multipart form post) and where a Rails app can store it.
...and the form's enctype โ how a file travels from the browser to the server ๐ MDN: Content-Disposition โ inline display vs. forced download ๐ Rails Guide: Active Storage โ the built-in...
...add the following line to your config/environments/development.rb: config.assets.compile = false config.assets.debug = false Then restart your server. This mimicks how applications work in production. Now reload your page. It will probably show...
...for, and why schema changes go through migrations instead of manual changes on a server. You can write migrations that change the schema and migrate existing data. You can explain...
...Discuss with your mentor Instead of migrations, could we simply log into the production server's SQL console and alter tables there whenever we need a change?
...reset between examples. You know what running tests in parallel and on a CI server requires from your test setup. Resources Read what's new to you, skim what's...
...synchronize method โ matchers poll, actions run once; the three processes involved (test runner, app server, browser); synchronize for coupled interactions ๐ Capybara::Node::Finders and Capybara::Node::Matchers โ the API reference...
...a very narrow scope Has no separate build process in development. Instead the Rails server directly compiles the asset whenever it renders a javascript_tag, stylesheet_tag or image_tag...
...example project and resources below: What "packs" are How to use the webpack dev server How to add and remove npm packages with yarn How import and export of relative...
...or JS file to your application (e.g. app/assets/application/navbar.sass), you need to restart your development server for it to show up in your browser. This is caused by a limitation of...
...in your application.js. Direct import statements like import 'app/assets/application/navbar.sass' would work without restarting the server. You'll learn the details of esbuild and the frontend build pipelines in a later...
...HTML code injection Boot up a second Rails application on another port (e.g. rails server -p 4000 to boot it on http://localhost:4000). Assume this is a second domain...
...element, with what it means and what may go inside it ๐ฎ W3C Markup Validation Service โ paste a document and have it list what is wrong with it Exercises
...directory for each exercise, inside the exercises repository. These are plain .html files โ no server, no Rails yet. Open them in your browser with file://. Mark up a document
...staging: How to write custom email interceptors, check if you have a local mail server listening, and letter_opener to open mails in the browser instead ๐ Reaching the inbox: E...
Just like we use gems on the server, we use third party JavaScript libraries in the browser. These typically provide functionality like: General support libraries like Lodash Frontend Frameworks like...
...Look at The cost of JavaScript (2019, 2023) to figure this out. Understand the service Bundlephobia Try to add lodash to MovieDB Use yarn add lodash, then import it in...