Skip to main content

In-depth Guide to Fetch Remote Data in JavaScript

If you're getting into JavaScript and frontend development, you've probably come across many use cases where you'll need to fetch data from a remote service endpoint. Depending on the type of application you're working on, this data can come in many different shapes. For single-page applications, it's common to handle remote data in the JSON format and fetch it through HTTP requests. In this article, we want to guide you through some common patterns when handling such requests and share other tips we think are helpful.

How to Mock HTTP Requests in the Android Yandex Browser

Some time back, we've received feedback from a user stating that they could use our browser extension in mobile using the Yandex browser and gave some feedback about usability. We don't develop for mobile, but when we found out it was possible, we improved our import/export flow to allow users to quickly load in a JSON file with many configurations and operate with the app while mocking requests with tweak. Let's look at how to achieve it.

How to Simulate HTTP Request Errors

Errors handling is part of our work as developers. You can try to ignore them at first, but to offer a good user experience, you don't want your website breaking just because one of the API endpoints decided to give up on you. These days we try to find clever workarounds to run our applications with a graceful degradation strategy. We build software to work in an optimal environment while providing certain fallbacks not to break the experience entirely when there's some disturbance in the system (e.g., lousy network condition, CPU lag, etc.).

In this article, we will understand how to maximize productivity when tackling HTTP requests error handling from a front-end development perspective.

5 Tips for Effective Puppeteer Automation

In our "Complete Guide to Test Chrome Extensions with Puppeteer", we've covered all you need to know to get you up to speed on setting up end-to-end testing for a chrome extension. The fact is that many elements of the article can be brought to traditional front-end applications.

To truly deliver to you the complete knowledge we've acquired, we've decided to write this tiny, complementary blog post, where we'll cover ad-hoc topics, let's call it tips & tricks, to help you work with Puppeteer.

Complete Guide to Test Chrome Extensions with Puppeteer

Here's what we cover in this article:

  • Motivation to perform e2e testing on browser extensions.
  • Why Puppeteer and known limitations.
  • A complete example of a functional chrome extension and a sample React application.
  • A complete example of a puppeteer + jest set up to run your automation.

All the code referenced in this article can be found in our repo tweak-extension/puppeteer-test-browser-ext.

7 Powerful Browser Extensions for Frontend Development

We're always looking for new ways to improve our effectiveness as frontend developers. We want to pick the right tools to get the job done. We want to have a fully equipped browser, to troubleshoot any tricky bug that comes our way.

Browser extensions have been around for a while, making their way into our development workflow in many different shapes. We can think of extensions as development companions.

In this article, we would like to share a few of them, that in our opinion, provide valuable assistance for frontend developers.

Apps with Docusaurus 2.0 and React

Writing good documentation is a mission-critical aspect of building software these days. Whether you are writing something for yourself, for the Open Source community, or your company, it's essential to keep things documented for good reasons:

  • It makes developers more productive since they can rely on the docs to understand how to use your software.
  • It makes developing the software itself easier promoting knowledge sharing amongst developers.

Simulate Delays in HTTP Requests

There might be a few reasons why we would want to delay an HTTP request:

  • You want to test how your UI behaves to a slow response from an upstream service.
  • There's a race condition in my code, and I suspect that it happens when the request to A is slower than the request B.
  • You want to show off that beautiful loading animation you've been working on all day!