teleren/devto huggingface dataset:
First- & Third Passkey Provider Explained
Tags: cybersecurity, passwordmanager, google, apple
Published: 2024-04-10 12:40:29

## Introduction to Passkey Providers
In the evolving landscape of digital security, passkey providers have emerged as crucial entities within the authentication ecosystem. Simplifying user access while enhancing security, passkey providers bridge the gap between users’ devices and online services, replacing traditional passwords with a more robust, user-friendly solution.

**_[Read full blog post here](https://www.corbado.com/blog/passkey-providers)_**

## The Essence of Passkey Providers

Passkey providers are pivotal in enabling the creation, management, and utilization of passkeys across various platforms, including Android, iOS, and the web. They can be broadly categorized into first-party / third-party passkey providers and passkey authentication providers (e.g. [Corbado](http://www.corbado.com/)), each playing a unique role in the passkey ecosystem.

## First-Party vs. Third-Party Passkey Providers

First-party passkey providers are integrated within operating systems, such as iCloud Keychain and Google Password Manager, allowing direct creation and management of passkeys on users’ devices. Third-party passkey providers, like [1Password](https://www.corbado.com/blog/1password-passkeys-best-practices-analysis) and [Dashlane](https://www.corbado.com/blog/dashlane-passkeys), offer similar functionalities but operate as standalone applications, extending the passkey’s versatility across different platforms.

## The Role of AAGUID in Passkey Identification

The [Authenticator Attestation Globally Unique Identifier (AAGUID)](https://www.corbado.com/glossary/aaguid) is a pivotal component in managing passkeys. It assists in identifying the passkey provider, thus simplifying the management and differentiation of passkeys for users and online services. This identification process is critical for maintaining a streamlined user experience and enhancing security measures.

## Navigating Through Passkey Providers

Selecting an appropriate passkey provider is important for users, as the passkey provider will be the primary entity handling the passkeys. The choice between first-party and third-party providers depends on various factors, including compatibility with user devices and specific security requirements.

## Conclusion: Pioneering a Password-Free Future

Passkey providers are at the forefront of revolutionizing authentication methods, offering a safer, more convenient alternative to traditional passwords. As we delve into the intricacies of these providers and the technicalities of AAGUID, it becomes evident that the future of digital security lies in embracing passkeys.

For a deeper understanding of how passkey providers operate and their impact on digital authentication, consider exploring our [comprehensive analysis](https://www.corbado.com/blog/passkey-providers).
Creating a globe map with visibility features in TypeScript and working with 3D maps globes
Tags: javascript, beginners, tutorial, devops
Published: 2024-04-10 12:27:20

import { Globe } from '@openglobus/og/Globe';
import { XYZ } from '@openglobus/og/layer/XYZ';

// Create a new globe instance
const globe = new Globe({
    'target': 'globeDiv', // The ID of the div element where the globe will be rendered
    'name': 'Earth',
    'layers': [
        new XYZ({
            'isBaseLayer': true,
            'url': 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
            'attribution': 'Data @ OpenStreetMap contributors, ODbL'
        })
    ]
});

// Set the initial view for the globe
globe.setView({
    'lat': 0,
    'lon': 0,
    'alt': 10000000, // Altitude in meters
    'duration': 1000 // Duration of the initial animation in milliseconds
});
Recent Rust Security Advisory: CVE-2024-24576
Tags: rust, security, tauri
Published: 2024-04-10 12:24:54

The Rust Security Response WG announced [`CVE-2024-24576`](https://blog.rust-lang.org/2024/04/09/cve-2024-24576.html), which affects the Rust Standard Library on Windows.

> *TL;DR: Upgrade your Rust version to* `1.77.2`.

## How Does it Affect Tauri as a Library?

Some Tauri organization repositories use batch files (`cmd.exe` under the hood) for developer environment tooling such as build scripts. No reviewed repositories use batch files for runtime code.

We don’t see additional risks for the Tauri project based on this CVE.

## Is My Tauri App Affected?

In general, you are possibly affected if you fulfill **all** of the below criteria:

* You ship your app on **Windows**
    
* Your project enables the Tauri v1 [`shell`](https://tauri.app/v1/api/js/shell/) feature with `"execute": true` or the v2 [`shell-plugin`](https://github.com/tauri-apps/plugins-workspace/tree/v2/plugins/shell) with `allow-execute` permission
    
* You allow arguments in the `scope` element of the `shell` feature
    
* **You pass untrusted input to** `cmd.exe` or `.bat`/`.cmd` files and improperly validate the scope (🚩)
    

If any of these criteria are not fulfilled in your application you are likely **NOT** affected.

If you implement custom commands or logic written in your application that directly exposes the Rust `Command` with arguments provided at runtime, you may be affected. While not Tauri specific, this pattern could affect any Rust project.

## Conclusion

Please upgrade your Rust version to `1.77.2` as soon as possible and distribute updates to your users.

[Read more about this security advisory here](https://flatt.tech/research/posts/batbadbut-you-cant-securely-execute-commands-on-windows/). This affects many programming languages, this specific CVE is just the one filed for Rust.

---

*Authors:*

* Tillmann Weidinger, Director of Security at @crabnebuladev 
    
* Chip Reed, Security Engineer at @crabnebuladev
Introducing Catena ⛓️ – a Library for building type-safe Express Handlers
Tags: javascript, typescript, express, webdev
Published: 2024-04-10 12:20:51

Today, we're launching a new framework/library that helps you building type-safe handlers for Express.js based applications, called Catena! 

🔎 [https://github.com/sonic-technology/catena](https://github.com/sonic-technology/catena)


Catena features zod-powered request validations, type-safe middlewares, monorepo type sharing & much more.

The following is what a handler might look like. It includes validations for parameters & headers, two middlewares and a response transformer that creates a secure DTO. All in one easy to understand function chain.

Best of all, it can be dropped into any Express application in an isolated way, so you don't have to rewrite your whole application if you want to try it with an existing application..


```typescript
import { Handler, HTTPError } from '@sonic-tech/catena'
import { z } from 'zod'

app.get(
    '/user/:uuid',
    new Handler().
        .validate('params', {
            uuid: z.string().uuid()
        })
        .validate('headers', {
            authorization: z.string()
        })
        .middleware((req) => {j
            const requestingUser = await SecurityService.getAuthorizedUser(req.headers.authorization);
            if (!requestingUser) {
                // Throw errors when you want to stop further request processing while returning an error at the same time
                throw new HTTPError(400, 'This should fail')
            }

            return {
                requestingUser
            }
        })
        .middleware(AnotherMiddleware)
        .resolve(async (req, res, context) => {
            // You can access the merged type-safe context of all middlewares in the resolver
            const { requestingUser } = context


            const userIncludingPassword = await UserService.getUser(req.uuid)

            return userIncludingPassword
        })
        .transform((data) => {
            return {
                data: {
                    uuid: data.uuid,
                    email: data.email
                }
            }
        })
        .express()
)
```

Try it out: [https://github.com/sonic-technology/catena](https://github.com/sonic-technology/catena)

I would love to hear your thoughts in the comments!
Easy Build - Best Wallpaper Wholesaler in Dehradun
Tags: wallpaper, artificlegrass
Published: 2024-04-10 12:18:08

Easy Build, the [best interior wholesaler in Dehradun](https://easybuildindia.in/
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v91ht87yxcpvppg1jnma.jpg)), was found with an objective to provide Home and Office furnishing at revolutionary prices while giving people the aesthetic living spaces they always desired. We are your one-stop best interior wholesaler in Dehradun, for all your interior needs.
Pioneering Metaverse Game Development Solutions
Tags: metaverse, game, development
Published: 2024-04-10 12:15:51

Dive into the boundless realms of the metaverse with our expert [Metaverse game development services](https://metaprolane.com/metaverse-game-development-services). We specialize in crafting immersive virtual experiences that push the boundaries of creativity and technology.
Kick Start Your Next Project With Holo Theme
Tags: webdev, beginners, opensource, showdev
Published: 2024-04-10 12:00:00

## A Lightning Fast Gatsby Starter Theme.

In 2023, one of my goals was to release at least two themes. I aimed to enhance my skills and contribute to the developer community. Platforms like GitHub, DEV, and more have enriched my knowledge, and I wanted to reciprocate. However, I faced a few obstacles along the way, primarily due to life's unpredictability. Now, in 2024, I'm pleased to announce that I have achieved my goal!

Please welcome **Holo Theme**. A modern, lightweight Gatsby theme crafted for developers seeking a blend of minimalistic elegance and contemporary design. Engineered with performance and experience in mind, this theme leverages the latest in web technology stacks, including Gatsby 5+, React 18+, and Tailwind CSS 3+, to deliver a fast, responsive, and customizable web experience.

### Tech Stack

- **Gatsby 5+**
- **React 18+**
- **Tailwind CSS 3+**

### Key Features

- **Responsive Design**
- **Fast Performance**
- **Customisable**
- **SEO Optimized**

### Ideal Use Cases

Holo Theme is suited for a wide range of projects, including but not limited to, Portfolios, Blogs, Business, and E-commerce. Its design and tech stack make it particularly appealing for developers looking for a modern, scalable, and stylish foundation for their web projects.


### Your Feedback Makes a Difference! 

If you’ve found value in using the Holo Theme for your projects, or if it sparks inspiration for your next venture, I would greatly appreciate it if you’d consider starring it on GitHub. Your support not only motivates me but also helps others discover the theme. Thank you for making our community vibrant and innovative! 

I would appreciate any feedback you may have. Leave your comments below or on GitHub, whichever is appropriate.

### Getting Started
{% embed https://github.com/lilxyzz/holo-theme %}

Feel free to follow the links below to view my Open Source Projects and more.

[travislord.xyz](https://travislord.xyz/)
[github.com/lilxyzz](https://github.com/lilxyzz)
Understanding the Difference Between Design System and System Design
Tags: design, designsystem, systemdesign, webdev
Published: 2024-04-10 11:57:47

In the world of software development and design, two terms are often discussed: Design System and System Design. While they may sound similar, they actually represent distinct concepts, each playing a pivotal role in the creation of digital applications and products. Understanding the difference between these two concepts is crucial for design and development professionals. In this article, we will explore these differences and clarify their respective roles.


## Design System

A Design System encompasses a collection of reusable and consistent design elements, accompanied by guidelines on their usage. It is designed to ensure visual consistency and user experience across all of an organization's applications and platforms. A typical Design System includes:

### UI Components

- Buttons
- Forms
- Cards
- Modals
- etc.

### Design Rules

- Typography
- Colors
- Spacing
- Grids
- etc.

### Documentation

- Style guides
- Implementation examples
- Best practices
- etc.

### Advantages of a Design System

- Consistency: All user interfaces share the same visual language, providing a unified experience to users.
- Efficiency: Design and development teams save time by utilizing pre-built components, rather than designing them from scratch.
- Scalability: Design Systems are scalable and can be updated to meet changing business needs.


## System Design

On the other hand, System Design focuses on the design and architecture of software systems as a whole. It is a more technical discipline, involving the design of robust and scalable computer systems. Here are some key elements of System Design:

### System Architecture

- Database design
- Technology choices
- Scalability
- Security
- etc.

### Performance

- Query optimization
- Load management
- Caching
- etc.

### Reliability

 - Fault tolerance
 - System monitoring
 - Disaster recovery plans
 - etc.

### Advantages of System Design

- Scalability: Well-designed systems can handle significant growth in traffic and data without compromising performance.
- Reliability: A well-designed system is resilient to failures and can quickly recover from malfunctions.
- Performance: Optimized architecture ensures fast response times and a seamless user experience.


## Conclusion

In summary, while the terms "Design System" and "System Design" may sound alike, they represent distinct concepts in the realm of software development and design. The Design System focuses on creating a consistent and reusable user interface, while System Design addresses the design and architecture of software systems as a whole. Understanding these differences is essential for design and development teams to create effective and scalable digital products.
The Modern Appeal of Pearl Jewelry
Tags: pearls, pearl, jewelry
Published: 2024-04-10 11:55:00

While pearls have a reputation for being a classic choice, modern pearl jewelry designs prove that pearls can be as trendy as they are timeless. Designers are experimenting with unconventional settings, mixed materials, and bold styles that appeal to contemporary tastes. From minimalist pearl studs to avant-garde pearl necklaces, there's a piece of jewelry to suit every modern fashion enthusiast. For those in Germany eager to explore the modern appeal of pearl jewelry, [Pearls Only](https://www.pearlsonly.de/) is your go-to source for innovative designs pushing traditional pearl jewelry's boundaries.
How to Care for Your Pearl Jewelry
Tags: pearls, pearl, jewelry
Published: 2024-04-10 11:53:18

Pearl jewelry requires special care to maintain its luster and beauty over time. Unlike other gemstones, pearls are organic and can be easily damaged by chemicals, extreme temperatures, and rough handling. To ensure your pearls remain in pristine condition, it's important to clean them gently with a soft cloth, store them separately to avoid scratches and avoid exposing them to harsh substances. For those in Canada looking for more tips on caring for pearl jewelry or seeking to add to their collection, [Pearls Only](https://www.pearlsonly.ca/) offers valuable insights and a stunning array of options.
Collections, Lists, and Java’s Built-In APIs
Tags: java
Published: 2024-04-10 11:51:08

#1. Lists

A List is an ordered collection that allows duplicate elements. It maintains the insertion order, which means the elements are stored in the order they were added. Here’s how you can create a simple List:
![List](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yu0m1pd54lzh6le0hwqo.png)

#2. Sets
A Set is an unordered collection that does not allow duplicate elements. It’s useful when you need to ensure uniqueness. Here’s an example using a HashSet:

![Sets](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/240y57yir37dv6luil4o.png)

#3. Maps
A Map is a key-value pair collection. It allows you to associate values with unique keys. The most common implementation is HashMap. Here’s an example:

![Maps](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/53cmns1p55t2igionwez.png)

#Java’s Built-In APIs
Java provides a rich set of built-in APIs for various tasks. Here are a few commonly used ones:

`java.util.Arrays:` Contains utility methods for working with arrays.
`java.util.String:` Provides methods for string manipulation.
`java.util.Math:` Includes mathematical functions like sqrt, pow, and random.
Remember to import the necessary packages when using these APIs.
The Timeless Elegance of Pearl Jewelry
Published: 2024-04-10 11:49:28

Pearl jewelry has long been celebrated for its timeless elegance and subtle sophistication. From the classic pearl necklace to contemporary pearl earrings, these gems from the sea have a way of capturing attention and elevating any outfit. Whether you're dressing for a formal event or adding a touch of class to your everyday wear, pearl jewelry is a versatile choice that never goes out of style. For UK residents who want to explore a wide range of high-quality pearl jewelry, [Pearls Only](https://www.pearlsonly.co.uk/) offers an exquisite collection for every taste and occasion.
Why Pearl Jewelry is a Must-Have in Every Wardrobe
Tags: pearls, pearl, jewelry
Published: 2024-04-10 11:47:40

Pearl jewelry isn't just for special occasions; it's a must-have accessory that adds elegance to every wardrobe. The beauty of pearls lies in their versatility—they can be worn with evening gowns and business attire, offering a touch of sophistication that complements any look. Moreover, pearls come in various colors, shapes, and sizes, allowing for unique and personalized jewelry choices. For those in Australia seeking to enhance their jewelry collection with pearls, [Pearls Only](https://www.pearlsonly.com.au/) is the perfect destination to find pieces that blend timeless elegance with modern design.
DAST
Tags: dast, devsecops, security, pipeline
Published: 2024-04-10 11:44:25

## Tools

[Dastardly](https://portswigger.net/burp/dastardly)


A lightweight web application security scanner for your CI/CD pipeline. Free, from creators of BurpSuite.

---

[OWASP Zap](https://www.zaproxy.org/)

The OWASP Zed Attack Proxy (ZAP) is one of the world’s most popular free security tools and is actively maintained by a dedicated international team of volunteers. It can help you automatically find security vulnerabilities in your web applications while you are developing and testing your applications. It's also a great tool for experienced pentesters to use for manual security testing.

---
[Nuclei](https://github.com/projectdiscovery/nuclei)

Nuclei is used to send requests across targets based on a template, leading to zero false positives and providing fast scanning on a large number of hosts. Nuclei offers scanning for a variety of protocols, including TCP, DNS, HTTP, SSL, File, Whois, Websocket, Headless etc. With powerful and flexible templating, Nuclei can be used to model all kinds of security checks.
The Symbolism and Beauty of Pearl Jewelry
Tags: pearl, pearls, jewelry
Published: 2024-04-10 11:44:25

Pearl jewelry is more than just a fashion statement; it carries deep symbolism and has been treasured across cultures for centuries. Pearls symbolize purity, wisdom, and wealth, making them a meaningful gift for birthdays, anniversaries, and other significant milestones. Additionally, the natural beauty and luster of pearls make them a standout choice for jewelry lovers. To discover a diverse selection of pearl jewelry that captures both the symbolism and beauty of these gems, visit [Pearls Only](https://www.pearlsonly.com/) and find the perfect piece to cherish for years to come.
3D Game Environment, Game Art, and Character Design Services
Published: 2024-04-10 11:27:08


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xrk87gzib67acvtiqx7g.png)

At EDIIIE (Expert in Designing Innovative, Interactive, and Immersive Experiences), we are always seeking engaging projects to bring innovative and immersive experiences to life.

With a passion for [game design and development](https://www.ediiie.com/), we specialize in crafting captivating environments, game arts and characters.

Elevate your game with our creative expertise. Contact us now for a truly unforgettable gaming journey.

Contact us here: https://www.ediiie.com/contact/ 

Checkout our work at: https://www.youtube.com/@ediiie
Mobile Application Development Services for Android & iOS With Egiz Solution
Tags: webdev, mobile, application
Published: 2024-04-10 11:19:21

Our team excels in UI/UX design, ensuring high-quality performance, security, and scalability for your mobile applications with innovative technologies like React Native or Flutter, and integrating backend services for seamless user experiences. Whether you need a native iOS or Android app or seek to reach both platforms efficiently with cross-platform solutions, Egiz Solution delivers [Mobile Application Development Services](https://egizsolution.com/services/web-development/****) that meet your unique requirements and exceed your expectations. For more information, please contact us at +91-7667050525.
Using Bootstrap 5 with NUXT 3
Tags: nuxt, bootstrap, javascript
Published: 2024-04-10 11:03:57

Nuxt js is an amazing addition to the vuejs ecosystem in a couple of ways. One of them is it's usefulness in handling SEO related issues while giving you the privilege of creating a full-stack web application in regular vue with robust server side rendering support. 

In this tutorial, we are going to be looking at a straight forward demonstration of how to use boostrap 5 with nuxt. 

### Create a Nuxt App
```javascript
npx nuxi@latest init <project-name>
```
 
### Install Bootstrap and other dependencies

_As of the time of writing this article, latest version of bootstrap is bootstrap 5.3.3_

```bash
npm i bootstrap@5.3.3 

npm i sass -D

npm i sass-loader -D

```

### Setting up

In your newly created nuxt app, at the file root, create a `plugins` folder. We are creating the plugins folder because we are going to be installing boostrap 5 as a [nuxt plugin](https://nuxt.com/docs/guide/directory-structure/plugins).

Next, inside the plugins folder, create a `useBootstrap.client.ts` and register the boostrap as a nuxt plugin:
```javascript
import bootstrap from 'bootstrap';

export default defineNuxtPlugin(nuxtApp => {
  return {
    provide: {
      bootstrap: bootstrap
    }
  }
})
```
After that, we create a `assets` folder. This folder is where bundlers like vite look at to bundle assets. In this folder, create a `main.scss` file then import bootstrap's scss. 

```css
// main.scss
@import 'bootstrap/scss/bootstrap';
```
Finally, to include bootstrap styling in all of your pages, we will be referencing its path and Nuxt will include it to all the pages of your application.

Open `nuxt.config.ts` that is located at the root folder and add the following: 
```javascript
// https://nuxt.com/docs/api/configuration/nuxt-config 

export default defineNuxtConfig({
  devtools: { enabled: true },

  css: ['~/assets/main.scss']
})
```

#### Testing 
To see bootstrap styling in action, lets create a typical button element and apply bootstrap class. Edit your `app.vue` :
```vue
<template>
  <div>
//app.vue

<h1> Using  boostrap 5 with Nuxt  </h1>
<button class="btn btn-primary"> share  </button>
  </div>
</template>

```
Result: 

![bootstrap with nuxt ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/leusxrsy36j6p0vne8n0.png)

Thanks for reading. Let me know if you have any feedback or comment in the comment section.

Find me on X(Formerly Twitter ) : [jovial_core](https://twitter.com/jovial_core)

Linkedin: [Chidiebere Chukwudi](https://www.linkedin.com/in/chidieberechukwudi)

Cover image credits:  [Photo by Marina M: ](https://www.pexels.com/photo/ceramic-objects-on-a-white-background-8356902/)