teleren/devto huggingface dataset:
NFTs for dummies
Tags: beginners, programming, tutorial
Published: 2021-03-17 16:25:22

You recently must've heard some [news](https://timesofindia.indiatimes.com/india/crazy-new-art-that-is-earning-creators-millions/articleshow/81376516.cms) about Twitter's CEO Jack Dorsey's tweet being sold for $2.5 million or a Beeple artwork being sold for $6.6 million and so on! 

Now for those who are completely oblivious to all the things that I mentioned above, let me enlighten them because hey the article is titled "NFTs for dummies" right? 🤓


### A bit of history 📜
So for quite some time artists, collectors etc have been selling their work online, digitally as something known as **Non Fungible Token or NFT** (we'll get into the technicalities later). It basically means that a digital piece of art or a song or a sneaker or literally a GIF is being sold for millions of dollars in cryptocurrency. Now you must be thinking *"That's ludicrous! Why would I pay millions of dollars for an image of an artwork when I can just download it from Google images."* Well to be honest I had that thought myself, so let's dive a bit deep and try to understand what's actually going on.


### What are NFTs?
>A non-fungible token is a unit of data on a digital ledger that can represent a unique digital item and provide proof of ownership of the NFT.

 I can already imagine the comments *"Ooof Sarthak if I just wanted copied definitions then why would I read your blogs"*. Wait, chill xD 😪 . So to put it mildly an **NFT is some data (any type) on a blockchain that represents something unique**. Yup it's as simple as that.

### Why are people paying millions of dollars? 💵
To understand this ask yourself this question. "Why do people pay so much money for a Picasso's painting?". These are the reasons that I could think of :-
1. It's unique (Picasso only painted a certain number of every painting).
2. You have an eye for art.🧐
3. You buy it as an investment, hoping it's value will increase over time. 📈
4. Well, you are a collector and you like boasting your collection. 😎

Now ask yourself this "If a Picasso's painting was sold as an NFT and not as a physical copy, won't you have the same benefits?".
1. The NFT is unique, that data is one of a kind on the blockchain.
2. You still have an eye for that painting xD 🧐 (Big 🧠).
3. It might very well go up in price (stonks 📈).
4. You want to flex your collection. 😎

### Bonus - How to create an NFT 🤑
**You literally need no technical knowledge to do this**. Although I would suggest to know what you're doing because **it will cost real money**.
1. Go to [Opensea.io](https://opensea.io/).
2. Click on Create.
3. Sign in with your preferred web3 wallet (Metamask FTW).
4. That's it. Then you just have to provide the data for your NFT (image, GIF, etc). Put up a name and a description.
5. Decide how you want to sell it (a fixed price or an auction).
6. That's it! Hopefully your NFT sells for astronomical prices ❤️ (if it does send me a small share please xD 🙏🏼).

I hope you had fun reading this and learnt something new. Let me know in the comments if I missed anything or something you'd like me to write about.
Day 1 : Range Sum of BST                 
Published: 2021-03-17 16:13:08

Hi. I have started 100DaysOfCodeChallenge.
Day 1 :
Todays challenge : https://leetcode.com/problems/range-sum-of-bst/
Question : Given the root node of a binary search tree, return the sum of values of all nodes with a value in the range [low, high].

 #100daysofcodechallenge 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m34qnu8mdobemywnl90d.png)
🔴 CSS Battle #13 - Live March 18, 20:00 CET
Tags: webdev, cssbattle, css
Published: 2021-03-17 16:24:01

Tomorrow, Thu 18 - 20:00 CET 
The new #13 CSSBattle.dev is going down live. 


🔴 https://a.st/live

Don't let this one flop be there and don't forget to "SET REMINDER" 

Let's show Dev Ed, Kevin Powell, Jh3y how this is done 💪 

This is Spartaaaa !!! 

😅 not really Jh3y especially would make those pixels bleed. 

{% youtube g2stzE3FIzM %}
Signs It Is Time For Career Change (Tips to help make the leap)
Tags: programming, 100daysofcode, codenewbie
Published: 2021-03-17 16:23:50

It can be very difficult to see a way out when you feel trapped, the signs that you are unhappy with your current career path is usually obvious but the steps required to make the leap can sometimes be overwhelming and even scary.

In this video, I share some of my experiences and tips on how to break FREE!

{% youtube Lb2j-UyVbrc %}

Please subscribe on YouTube if you like this sort of content:
[What are the ODDS of becoming a software developer?](https://youtu.be/Lb2j-UyVbrc?sub_confirmation=1)
New Video Series: Coding Shorts
Tags: coding, softwaredevelopment, tutorials, videos
Published: 2021-03-18 10:05:51

---
title: New Video Series: Coding Shorts
published: true
date: 2021-03-17 16:18:36 UTC
tags: Coding,SoftwareDevelopment,Tutorials,Videos
canonical_url: http://wildermuth.com/2021/03/17/New-Video-Series-Coding-Shorts
cover_image: https://wilderminds.blob.core.windows.net/img/New-Video-Series-Coding-Shorts/coding-shorts-title.jpg
---

I've started a new video series of short coding tutorials. The goal is to teach lesser-used techniques and they are less than 15 minutes each. I've got the first three up for viewing.

Here are the first ones:

### Coding Shorts: Top-Level Statements in C# 9

<iframe src="https://www.youtube.com/embed/v6nzkMuToTM" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

### Coding Shorts: Moving from jQuery to Vanilla.js

<iframe src="https://www.youtube.com/embed/j-3kJ_B2978" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

### Coding Shorts: Zen Coding

<iframe src="https://www.youtube.com/embed/nfcQLjvQtik" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

If you have any ideas that I should cover, please drop me a note on my [contact page](https://wildermuth.com/contact) or on [Twitter](https://twitter.com/shawnwildermuth).

[![Creative Commons License](http://i.creativecommons.org/l/by-nc-nd/3.0/88x31.png)](http://creativecommons.org/licenses/by-nc-nd/3.0/)

 This work by [Shawn Wildermuth](http://wildermuth.com) is licensed under a [Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License](http://creativecommons.org/licenses/by-nc-nd/3.0/).  
 Based on a work at [wildermuth.com](http://wildermuth.com).

* * *

If you liked this article, see Shawn's courses on [Pluralsight](http://shawnw.me/pscourses).
 ![](http://feeds.feedburner.com/~r/ShawnWildermuth/~4/MDCyhZDWTRU)
Angular app to understand rxjs operators
Tags: rxjs, angular
Published: 2021-03-17 16:04:11

One of the most complicated things on reactive development is to understand how rxjs operators work.
It's is very common scenario to don't recognize which is the best operator to implement based on your needs.

The first step is to know the types. So before selecting an operator it was helpful for me identify to which type belongs to. You can take a look to the types [here](https://www.learnrxjs.io/learn-rxjs/operators)

There are many great resources to learn rxjs. Anyway, the best (probably the only) way to fully understand is practice, practice and more practice.

**Instead of creating a post with examples and only theory content, I have created a simple app that allows you to navigate types and operators with code snippets.**

This is what I've used to build the application:
* netlify
* [github](https://github.com/salimchemes/rxjs-operators)
* [ngx-highlightjs](https://www.npmjs.com/package/ngx-highlightjs): code snippets
* [ngx-json-viewer](https://www.npmjs.com/package/ngx-json-viewer): json formatter
* docs: [learnrxjs](https://www.learnrxjs.io/) and [rxjs](https://rxjs-dev.firebaseapp.com/)
* videos: [Top 10 RxJs Operators in Angular](https://www.youtube.com/watch?v=5TnWFaI49aw&t=525s&ab_channel=DavidAcosta)

**app link: https://awesome-sammet-a68543.netlify.app/**

*Disclaimer: I did not include all rxjs operators, just some of them. Some examples are in progress I will continue adding more details*
VMUG Recording – Protecting your Tanzu Kubernetes Workload with Kasten by Veeam
Tags: vmware, kubernetes, kasten, recording
Published: 2021-04-22 14:06:08

---
title: VMUG Recording – Protecting your Tanzu Kubernetes Workload with Kasten by Veeam
published: true
date: 2021-03-17 15:52:47 UTC
tags: VMware,Kubernetes,Kasten,Recording
canonical_url: https://veducate.co.uk/vmug-recording-protecting-your-tanzu-kubernetes-workload-with-kasten-by-veeam/?utm_source=rss&utm_medium=rss&utm_campaign=vmug-recording-protecting-your-tanzu-kubernetes-workload-with-kasten-by-veeam
---

Below is the recording from my London VMUG session with Michael Cade.

- Title: Protecting your Tanzu Kubernetes Workload with Kasten by Veeam
- Recorded: 4th February 2021
- Abstract:
  - This technical demo led session will take you through how to deploy Kasten in your Tanzu Kubernetes environment to protect your container workloads.

{% youtube Hgnb1iqVGIY %}

Supporting blog posts;

- Installing Kasten on;
  - [Red Hat OpenShift](https://veducate.co.uk/kasten-install-configure-openshift/) running ontop of vSphere
  - [Tanzu Kubernetes Grid](https://veducate.co.uk/kasten-tanzu/)
- [Configuring Kasten backup policies, protecting data and restoring data](https://veducate.co.uk/kasten-backup-restore/)
- [How to upgrade your Kasten environment](https://veducate.co.uk/how-to-update-kasten-to-the-latest-version/)

Regards

[Follow @Saintdle](https://twitter.com/saintdle)<script async="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

[Dean Lewis](https://uk.linkedin.com/in/saintdle?trk=profile-badge)

 

The post [VMUG Recording – Protecting your Tanzu Kubernetes Workload with Kasten by Veeam](https://veducate.co.uk/vmug-recording-protecting-your-tanzu-kubernetes-workload-with-kasten-by-veeam/) appeared first on [vEducate.co.uk](https://veducate.co.uk).
Adding REST endpoints to Hasura
Tags: restapi
Published: 2021-03-29 10:14:53

---
title: Adding REST endpoints to Hasura
published: true
date: 2021-03-17 15:47:50 UTC
tags: RESTAPI
canonical_url: https://hasura.io/blog/adding-rest-endpoints-to-hasura-cloud/
---

 ![Adding REST endpoints to Hasura](https://hasura.io/blog/content/images/2021/03/rest_blog.jpg)

Of the many new features added to Hasura 2.0 – adding REST endpoints to stored queries and mutations has to be a standout. You can hardly finish typing "GraphQL" into a search engine before the "GraphQL vs REST", "Is GraphQL going to replace REST" punditry floods the suggested query autocomplete.

The fact is, was, and was bound to always be, REST is not going to go anywhere. There's a number of compelling use-cases where REST is still a preferred method for fetching data over the wire.

## REST vs GraphQL? REST _and_ GraphQL with Hasura

The question should always be "when" to use which API specification. If you are building for embedded systems, it's by far easier to modify the resolver than it is to modify the query. If you are building for the Jamstack, ensuring protected execution of your content is critical.

From the beginning of GraphQL's adoption in the industry, we've seen three common points of friction for adoption. Flagging vendor tooling for the existing production/deploy environments, security concerns about handing out an open API with infinite query depth, legacy systems that will require perpetual REST endpoint and so adopting GraphQL becomes an additional burden, not consolidating the pain points.

These days, and specifically with Hasura, and even more specifically with our latest release supporting REST endpoints, you get all the benefits of GraphQL and the ability to maintain and deliver REST endpoints where needed.

Fortunately, with REST support in Hasura, you can have both. To create a REST endpoint from a query or mutation, you first create a _ **named** _ query/mutation in the GraphiQL API explorer, then press the REST button in the GraphiQL interface. From there, provide a helpful name to identify your endpoint later, provide the suffix path for where there endpoint should be called, and choose which verb (GET, POST, PATCH, PUT, DELETE) your endpoint should respond to.

Hasura supports traditional body parsing for dynamic variables as well as dynamic URL segments. Dynamic URL segments are denoted with `:` as a prefix in the path. Calling `/shapes/round` to a URL defined as `/shapes/:shape` would yield in a body of `{"shape": "round"}` being passed to the query or mutation serving as the resolver.

Whether the project you are building is a better target for REST or you have a legacy project you are planning on migrating slowly to GraphQL, REST endpoints in Hasura allow you to support the best of both worlds with sacrificing the developer velocity you've come to expect from Hasura and Hasura Cloud.

Learn more in this deep dive where we cover REST endpoints and a quick introduction to access controls to go with it.

{% youtube vy4iXukXc8Y %}
Video for Better Perl: Subroutine signatures and type validation
Tags: programming, meetup, perl
Published: 2021-03-17 16:02:51

---
title: Video for Better Perl: Subroutine signatures and type validation
published: true
date: 2021-03-17 15:46:19 UTC
tags: Programming,meetup,Perl
canonical_url: https://phoenixtrap.com/2021/03/17/video-for-better-perl-subroutine-signatures-and-type-validation/?utm_source=rss&utm_medium=rss&utm_campaign=video-for-better-perl-subroutine-signatures-and-type-validation
---

Video for my [presentation to Houston Perl Mongers](https://phoenixtrap.com/2021/02/07/im-presenting-at-houston-perl-mongers-this-week/) last month, based on [this blog post](https://phoenixtrap.com/2021/01/27/better-perl-with-subroutine-signatures-and-type-validation/). Slides are [here](https://phoenixtrap.com/2021/02/11/slides-from-tonights-houston-perl-mongers-presentation/). Sorry about all the “um“s and “ah“s.

{% youtube 4TrrxTWHpLc %}
Unicode Normalization for NLP in Python
Tags: python, machinelearning, deeplearning, tutorial
Published: 2021-03-17 15:35:14

{% youtube 9Od9-DV9kd8 %}

ℕ𝕠-𝕠𝕟𝕖 𝕚𝕟 𝕥𝕙𝕖𝕚𝕣 𝕣𝕚𝕘𝕙𝕥 𝕞𝕚𝕟𝕕 𝕨𝕠𝕦𝕝𝕕 𝕖𝕧𝕖𝕣 𝕦𝕤𝕖 𝕥𝕙𝕖𝕤𝕖 𝕒𝕟𝕟𝕠𝕪𝕚𝕟𝕘 𝕗𝕠𝕟𝕥 𝕧𝕒𝕣𝕚𝕒𝕟𝕥𝕤. 𝕋𝕙𝕖 𝕨𝕠𝕣𝕤𝕥 𝕥𝕙𝕚𝕟𝕘, 𝕚𝕤 𝕚𝕗 𝕪𝕠𝕦 𝕕𝕠 𝕒𝕟𝕪 𝕗𝕠𝕣𝕞 𝕠𝕗 ℕ𝕃ℙ 𝕒𝕟𝕕 𝕪𝕠𝕦 𝕙𝕒𝕧𝕖 𝕔𝕙𝕒𝕣𝕒𝕔𝕥𝕖𝕣𝕤 𝕝𝕚𝕜𝕖 𝕥𝕙𝕚𝕤 𝕚𝕟 𝕪𝕠𝕦𝕣 𝕚𝕟𝕡𝕦𝕥, 𝕪𝕠𝕦𝕣 𝕥𝕖𝕩𝕥 𝕓𝕖𝕔𝕠𝕞𝕖𝕤 𝕔𝕠𝕞𝕡𝕝𝕖𝕥𝕖𝕝𝕪 𝕦𝕟𝕣𝕖𝕒𝕕𝕒𝕓𝕝𝕖.

We also find that text like this is incredibly common - particularly on social media.

Another pain-point comes from diacritics (the little glyphs in Ç, é, Å) that you'll find in almost every European language.

These characters have a hidden property that can trip up any NLP model - take a look at the unicode for two versions of Ç:

Latin capital letter C with cedilla: \u00C7

Latin capital letter C + combining cedilla: \u0043\u0327

Both are completely different, despite rendering as the same character.

To deal with all of these text variants we need to use unicode normalization - which we will cover in this video.
Dragon Name Generator
Tags: dragons
Published: 2021-03-17 15:21:01

**Dragon Name Generator, random Dragon Name Generator, Dragon Name Generator dnd, Dragon age Name Generator, Dragon elf age Name Generator**

If you want to generate dragon name then click on the below link
 👉     [Dragon Name Generator] (https://dragonnamegeneratorio.com/)


If you are facing any issues then you can comment down.
Next.JS Undraw and TailWind Light/Dark theme tutorial
Tags: nextjs, tailwindcss, ux, undraw
Published: 2021-03-17 15:20:38

In this quick tutorial i'll show my workflow on how I set up light/dark theme illustrations with UnDraw and TailWindCSS. 

The concept can be applied with any SVG illustration kit and Style framework, Bootstrap, Foundation, etc

If you want to take a look at my code, you can find it here https://github.com/FernandoBoza/undraw-tailwind/blob/master/pages/index.js

You can follow along with the companion video
{% youtube lu6lhSHO5hQ %}

**if you just want to learn how to toggle**
in tailwind.config.js set darkMode prop to 'class'
```jsx
module.exports = {
  purge: ['./pages/**/*.{js,ts,jsx,tsx}', './components/**/*.{js,ts,jsx,tsx}'],
  darkMode: 'class', // or 'media' or 'class'
  theme: {
    extend: {},
  },
  variants: {
    extend: {},
  },
  plugins: [],
}
```

from here in my app/index/xyz

```jsx
import { useState } from "react";

export default function Home() {
  const [theme, setTheme] = useState("");

  return (
    <div className={` ${theme}`}>
     // ...children
     // <p className="dark:text-blue-100 text-gray-800">

        <button
          onClick={() =>
            setTheme((prev) => !prev ? "dark" : ""
          )}>
          Toggle dark mode
        </button>
    </div>
```

I start in UnDraw, I download my illustration my of choice, and bring it in https://react-svgr.com.

This site, transforms the html attributes that conflict with JSX. 

from the 2 panel screen, ill copy my modified code from the right, and in NextJS paste my SVG illustration wherever I want. 


From here the key is in any browser inspect tool to grab the primary color of the illustration, 

```jsx
<svg fill="#fff">

//from fill to
//fill-current followed by the bg color of your choice
<svg className="fill-current background-blue-100">
```

With this simple principle I can go through my code with Find and Replace for my primary color and modify them to hold my **TailWind Colors**

fill="#333" => className="fill-current dark:background-gray-700 background-gray-100"
How to convert 2-digit year to 4-digit year in C#
Tags: beginners, tutorial, csharp, todayilearned
Published: 2021-03-17 15:15:58

Today I was working with credit cards and I needed to convert a 2-digit year to a 4-digit one in C#. The first thing that came to my mind was adding 2000 to it. But it didn't feel right. _It wouldn't be a problem in hundreds of years._

To convert 2-digit year into a 4-digit year, you can use the `ToFourDigitYear` method inside the `Calendar` class of your current culture.

```csharp
CultureInfo.CurrentCulture.Calendar.ToFourDigitYear(21)
// 2021
```

But, if you're working with a string containing a date, you can create a custom `CultureInfo` instance and set the maximum year to 2099. After that, you can parse the string holding the date with the custom culture. _Et voilà!_

```csharp
CultureInfo culture = new CultureInfo("en-US");
culture.Calendar.TwoDigitYearMax = 2099;

string dateString = "1 Jan 21";
DateTime.TryParse(dateString, culture, DateTimeStyles.None, out var result);
// true, 1/1/2021 12:00:00 AM
```

Sources: [Convert a two digit year](https://stackoverflow.com/questions/2024273/convert-a-two-digit-year-to-a-four-digit-year), [Parse string dates with two digit year](https://www.hanselman.com/blog/how-to-parse-string-dates-with-a-two-digit-year-and-split-on-the-right-century-in-c)
{"O", "que", "é", 1, :tupla, "?"}
Tags: braziliandevs, elixir, tupla, programming
Published: 2021-03-17 15:05:34

Quando vi uma ``{"tupla"}`` em **Elixir** pensei que seria um **hash** como em ruby ou **Object** em Javascript, pensei também que talvez seria apenas mais um nome para o **hash | object**, mas assim como [**list** não é um **array**](https://dev.to/dnovais/list-nao-e-array-2ioh), uma **Tupla** não é um **hash | object**.

## O que é uma Tupla (Tuple)?

**Tupla** é uma estrutura de dados que assim como a **List** permite tipos diferentes de dados, como no exemplo:

```Elixir
{:atom, "string", 1, 2.5}
```

As **tuplas** são armazenadas continuamente (uma seguida da outra) na memória (semelhante aos **Arrays** em outras linguagens).

### É importante saber que...

> Normalmente as **tuplas** são usadas em **retorno** de uma função, quando **sucesso**:

```Elixir
defmodule Example do
  def say(name), do: {:ok, "Hey #{name}, I am here!"}
end
```

> ou quando for um **erro**:

```Elixir
defmodule Example do
  # ...
  def say(nil), do: {:error, "The name can`t be blank!"}
end
```

> - O **acesso** a qualquer elemento leva um **tempo constante**, mas a **modificação** de uma ``tupla``, que produz uma cópia superficial, leva um **tempo linear**.
- As funções [Enum](https://hexdocs.pm/elixir/Enum.html) **_não_** funcionam em ``tuplas``.
- ``Tuplas`` **_não_** são uma coleção de elementos.
- As [funcões de módulo das tuplas](https://hexdocs.pm/elixir/Tuple.html) raramente são usadas pois as ``tuplas`` são **containers de tamanho fixo para vários elementos**.
- Ao **manipular** uma ``tupla`` usando suas **funções de módulo** faz com que as ``tuplas`` sejam usadas como **coleções**.

```Elixir
# Insere um elemento no final da Tupla.
# append/2 (Função de aridade 2)
append(tuple, value)

# Remove um elemento de uma Tupla.
# delete_at/2 (Função de aridade 2)
delete_at(tuple, index) 

# Cria uma nova Tupla.
# duplicate/2 (Função de aridade 2)
duplicate(data, size)

# Insere uma elemento em uma determinada posição da Tupla.
# insert_at/3 (Função de aridade 3)
insert_at(tuple, index, value)

# Converte uma Tuplara para uma List.
# to_list/1 (Função de aridade 1)
to_list(tuple)

```
Obs.: Caso queira saber o que é **Aridade de uma função** eu escrevi um [artigo sobre Aridade de uma função](https://dev.to/dnovais/aridade-de-uma-funcao-41mo).

> **_Para manipular uma coleção de elementos, use uma lista._**

## Conclusão sobre as Tuplas

Uma ``Tupla`` é uma estrutura de dados que permite elementos de vários tipos assim como uma List.

São semelhante a um array, onde seus elementos são armazenados continuamente na memória.

Existem vários detalhes de implementação que precisamos entender para usá-las corretamente.

Contato:
Email: contato@diegonovais.com.br
LinkedIn: https://www.linkedin.com/in/diegonovais/
Github: https://github.com/dnovais
Ausblenden von in Bearbeitung befindlichen Seiten und Beiträgen
Tags: wordpress, content, howto
Published: 2021-03-19 10:00:40

---
title: Ausblenden von in Bearbeitung befindlichen Seiten und Beiträgen
published: true
date: 2021-03-17 15:00:30 UTC
tags: Wordpress,content,howto
canonical_url: https://j0e.org/posts-ausblenden/
---

![WordPress Beiträge und Seiten  ausblenden](https://j0e.org/wp-content/uploads/2021/03/posts-ausblenden.png)

 Wie oft habe ich schon einen Blogpost in WordPress erstellt und wollte ihn noch vor …

[Ausblenden von in Bearbeitung befindlichen Seiten und Beiträgen Weiter Lesen »](https://j0e.org/posts-ausblenden/)
🚀 Introducing Auth0's Next.js SDK
Tags: sdk, javascript, auth0
Published: 2021-03-17 14:52:49

Next.js blurs the line between frontend and backend, so there is more than one way to do authentication on a Next.js app.

To identify which authentication pattern you should use, you must first understand the data-fetching strategy you want. The predominant patterns are:

Fetching user data client-side

You will use Static Generation to generate the page’s HTML at build time. The HTML will then be reused on each request and can be cached by a CDN. The user will be quickly served an app shell, usually a loading indicator, before the client-side code fetches the user’s data to populate the content.

Your typical authentication for this type of application will be that of a SPA, where the user’s tokens are stored on the client.

For fetching user data client-side, we recommend using auth0-react; we have an example Next.js app using auth0-react for authentication in the project’s repository here.

Fetching user data server-side

When the server receives a request for a page, it will fetch your user’s data and construct the page at the request time. This will be slower than returning the page from a CDN but doesn’t need to display an app shell while the frontend fetches the user data.

Your typical authentication for this type of application will be that of a Regular Web App, where the user’s tokens are stored in a secure session that is not directly accessible from the client-side and therefore not vulnerable to the more common XSS attacks.

[Read more...](https://auth0.com/blog/introducing-the-auth0-next-js-sdk/?utm_source=content_syndsc&utm_campaign=next_sdk)