tl;dr In this post I’ll try to show what, in my opinion, are the current pain points on the common ways to do ssr in React, comparing existing solutions in a didactic way.

Image for post
Image for post

First of all, what’s SSR?. SSR is the acronym for server side rendering. On a high level, this means generating the complete web page on the server without having to rely on the client side javascript.

We won’t enter into details of why we’d want to do this, but, it can be mainly motivated by SEO concerns, accessibility or just performance.

Problems behind SSR

If we take a quick look to the react documentation server side rendering might be seen as something quite simple. Just import react-dom/server and call renderToString method.


This is a round up of the first talk I did called “No metas todo en la misma bolsa: generando bundles por dispositivo” (which could be translated to the title of this article).

Image for post
Image for post

This is the second post in a series where I explain how to encapsulate the specific device logic into a Razzle plugin:

tl;dr; the idea is to reduce the needed boilerplate in order to serve particular experiences for each device.

This post will be more code related, I’ll show how I encapsulated the specific device logic into a razzle plugin and all the problems I’ve had to sort that out. In the end, there will be a working example of this feature. …


Some months ago the company where I work introduced a new policy called bring your own device (BYOD). Although, many already had set up the company’s google mail on our phone for free, now we were encouraged to use our personal device to work, but in order to do so, we had to install a Google App Device Policy. We were told that the objective of this policy was to protect sensible company’s data and that this app will only enforce us to have a lock code and device encryption.

According to google’s help:

Depending on how your administrator manages Android devices in your organization, you might need to install the Google Apps Device Policy app on your device. The app enforces your organization’s security policies on your device to protect corporate data and make it more secure. If you don’t install the app, but your admin requires it, you can’t access G Suite data on your device, including work email, calendar, and contacts.


tl;dr Developing a gatsby-plugin-react-helmet-canonical-urls because gatsby-plugin-canonical-urls and gatsby-plugin-react-helmet do not play well together when using the canonical link.

Image for post
Image for post

Recently Dan Abramov announced that he would stop writing in medium, so, trying to set up my own gatsby blog was a great week-end project. I really didn’t want something fancy, just a blog site with a clean look that didn’t take me so many time to set up.

My first step was opening gatsby tutorial. Although, I must admit that the people from gatsby did a great work writing the docs, it seems to be targeted to new comers, i just didn’t want to read how to install node and all that stuff. …


Image for post
Image for post

Tl;dr; In the post i’ll show how to pass custom command line arguments to test suits run by Jest framework.

Lately i’ve using Tescafe for doing some end to end test (for those who doesn’t know, it is a Node.js tool to automate end-to-end web testing) and i’ve really like the proposed way to deal with configuration.

Basically, Tescafe has this question in their faq: How do I work with configuration files and environment variables? in which they just tell you “use an argument parser library to parse custom commands”.


This is a round up of the first talk I did called “No metas todo en la misma bolsa: generando bundles por dispositivo” (which could be translated to the title of this article).

This is the first post in a series where I explain how to build a react progressive web application that targets specific devices constraints:

tl;dr; the idea is to incrementally start serving particular experiences for each device (i.e: Mobile / Desktop) in the lazy programming way.

In this post, I’ll give a background about the problem to be solved and the first attempt to do it. Although, the post will talk about a concrete feature, I won’t be showing too much code, the following posts will have working examples. …

About

Nicolas Cisco

Full stack engineer. Graduated from UBA (Informatics Engineer). Pasionate about OSS. https://nckweb.com.ar

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store