teleren/devto huggingface dataset:
Flash | Made with Vue JS
Published: 2022-05-30 10:02:36

![Flash | Made with Javascript | Vue JS](https://res.cloudinary.com/madewithjavascript/image/upload/v1653325685/large_flash_made_with_vue_js_48a06065ff.png "Flash | Made with Javascript | Vue JS")


### Read all your favorite tech news in one place.

> Read all your tech news (TechCrunch, The Next Web, Hacker News, Product Hunt and many more) in one place.

## Check out more such amazing projects on our website

[Made with Javascript](https://madewithjavascript.club)

## Want us to feature your project

[Submit your Project to Made with Javascript](https://madewithjavascript.club/submit-project)


You can also write to us for any of your queries at:

[Email Made with Javascript](mailto:madewithjavascript@gmail.com)

## Project already shared on our social media handles.

| SocialMedia | SharedLink |
| ----------- | ---------- |
| Twitter | [Flash on Twitter](https://twitter.com/withjavascript/status/1531213232236527616?s=20&t=9EAciQlgZlBmCrhVs53s1Q)
 |
| Medium | [Flash on Medium](https://medium.com/@madewithjavascript/flash-made-with-vue-js-b99123e52d3f)
 |
| Facebook | [Flash on Facebook](https://www.facebook.com/madewithjavascript/posts/pfbid0367tr2qktfhHXTeFmUQhqusPvojiHrYBA1D2zg31ujbwtAhLzHJEVrAb9E7D88wJGl)
 |
| Tumblr | [Flash on Tumblr](https://madewithjavascript.tumblr.com/post/685668811046879232/flash-made-with-vue-js-read-all-your-favorite)
 |
| LinkedIn | [Flash on LinkedIn](https://www.linkedin.com/feed/update/urn:li:activity:6936979054394847232)
 |
| Pinterest | [Flash on Pinterest](https://pin.it/gA0qaa2)
 |


Filled Under:

 - [Made with Javascript](https://madewithjavascript.club)    
 - [Made with Vue JS](https://madewithjavascript.club/categories/vue-js)

Make sure to give this post ❤ 50 ❤ hearts, click the 🦄 unicorns 🦄 and follow 👉 @madewithjavascript 👈 for more such awesome showcases. Show you love for the people who have worked so hard!
Getting Started with the Angular Gantt Chart Component
Tags: angular, webdev
Published: 2022-05-30 10:00:49

Learn how easily you can create and configure the Syncfusion [Angular Gantt Chart component](https://www.syncfusion.com/angular-ui-components/angular-gantt-chart) using the Angular CLI tool and Syncfusion ej2-angular-gantt package. This video also explains how to configure a few of the control’s basic features like setting timeline views and task dependencies. 

**Product Overview**: https://www.syncfusion.com/angular-ui-components/angular-gantt-chart

**Download an example from GitHub**: https://github.com/SyncfusionExamples/getting-started-with-the-angular-gantt-chart-component

**Refer to the following documentation**: https://ej2.syncfusion.com/angular/documentation/gantt/getting-started/

**Online example** : https://ej2.syncfusion.com/angular/demos/#/bootstrap5/gantt/default

{% youtube cC0AZLAdsQQ %}
How would you present programming as a topic to a big group of people?
Tags: career, programming, productivity, discuss
Published: 2022-05-30 09:59:26

---
title: How would you present programming as a topic to a big group of people?
published: true
description: How would you 
tags: career,programming,productivity,discuss
---

### How would you present programming as a topic to a big group of people?

They might be in the programming topic or not, but mainly they are starters that are starting to learn programming.
Self-documentation of Hire +Plus: V1 (5)
Tags: webdev, testing, javascript, react
Published: 2022-05-30 09:44:59

## What I cover
 
- Testing for Launch page
- Testing for Auth page

---

## Testing Launch page
I made a few changes to the `launch.spec.js` test file. Here's what it looks like now

```javascript
describe('Launch Page', () => {
	before(() => {
		cy.visit('http://localhost:3000');
	});
	it('renders the launch page', () => {
		cy.contains('For Employers');
	});
	it('redirect to auth page', () => {
		cy.contains('GET STARTED').click();
		
		cy.url().should('include', '/auth');
	});
});
```

## Created a test for Auth page
`auth.spec.js` test file has simple tests to ensure the correct components are rendering when a user routes to the `auth/employees` and `auth/employer` routes. 

```javascript
describe('Authentication for employees', () => {
	before(() => {
		cy.visit('http://localhost:3000/auth/employees');
	});
	it('should show the login component', () => {
		cy.contains('Already have an account?');
	});
	it('should show the sign up component', () => {
		cy.contains("Don't have an account?");
	});
});
describe('Authentication for employer', () => {
	before(() => {
		cy.visit('http://localhost:3000/auth/employer');
	});
	it('should show the login component', () => {
		cy.contains('Already have an account?');
	});
	it('should show the sign up component', () => {
		cy.contains("Don't have an account?");
	});
});
```

That's all for now. Stay tuned for more. View the source code [here](https://github.com/AjeaSmith/hire-plus-v1).
Overview of Github Actions - Part 2
Tags: github, workflow, ci, cd
Published: 2022-05-30 09:34:11

## Overview of Github Actions

1. [Overview of Github Actions - Part 1](https://dev.to/makendrang/overview-of-github-actions-part-1-1bc9)
2. [Overview of Github Actions - Part 2](https://dev.to/makendrang/overview-of-github-actions-part-2-9f6)


## Create an example workflow

1. Create a `.github/workflows` directory in your repository on GitHub.
2. In the `.github/workflows` directory, You can create a file named `github-actions-kcddemo.yml`.
3. YAML contents is in the [github-actions-kcddemo.yml](https://github.com/MakendranG/kcdchennai-github-actions.yml/blob/main/.github/workflows/github-actions-kcddemo.yml) file.
4. To start a pull request, scroll to the bottom of the page and select create a new branch. Click Propose new file to create a pull request.
![demo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tjxakmspoubfwlndnkwx.JPG)
5. The push event occurs when you commit the file to a branch.


## Viewing your workflow Output


- On GitHub.com, go to the main page of the repository.


- Click Actions under your repository name.


![actions](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/77h2ivx9eps08nn5w2tw.JPG)


- In the left sidebar, you can click on the workflows you want to see.



![workflow](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bmh5xnkng8tvdoomvdk4.JPG)




- Click on the name of the run you want to see.



![run](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3105n3vkn73rr7m5iwjz.JPG)



- You can click the Explore-GitHub-Actions job.



![explore](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jvq6rlbvcjkt31d3ak5r.JPG)



- The log shows how the steps were processed. To view its details, expand any of the steps.

![log](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k2gtofwx4tsnegxzjnpl.JPG)


Thanks for reading my article till end. I hope you learned something special today. If you enjoyed this article then please share to your friends and if you have suggestions or thoughts to share with me then please write in the comment box.

Above blog is submitted as part of 'Devtron Blogathon 2022' - https://devtron.ai/
Check out Devtron's GitHub repo - https://github.com/devtron-labs/devtron/ and give a ⭐ to show your love & support.
Follow Devtron on LinkedIn - https://www.linkedin.com/company/devtron-labs/ and Twitter - https://twitter.com/DevtronL/, to keep yourself updated on this Open Source project.
What is Azure DNS Private Resolver ?.
Tags: azure, dns, fullymanaged, highperformance
Published: 2022-05-30 09:22:15

## Azure DNS Private Resolver

It is a new service that allows you to `query private zones from an on-premises environment` and vice versa.


The private resolver requires an azure virtual network. One or more `inbound endpoints are established` that can be used as the destination for DNS queries when you create an azure private resolver inside a virtual network. The resolver's `outbound endpoint processes queries based on the forwarding ruleset` that you have set. There are networks linked to a ruleset that can be used to send the queries.


The process of using a Azure DNS private resolver is summarized below.

- DNS query will issue if the client is in a virtual network.
- The DNS query is forwarded to the specified addresses if the server for the virtual network is specified as `custom`.
- There are Private DNS zones linked to the same virtual network if Default is configured in the virtual network.
- If the query doesn't match a Private DNS zone linked to the virtual network, then Virtual network links are consulted.
- If there are no ruleset links, then the query can be solved with the help of the azure domain name system.
- The `forwarding rules are evaluated` if the ruleset links are present.
- The query is forwarded to the address if a match is found.
- The `longest suffix is used` if multiple matches are present.
- If no match is found, no forwarding occurs and the query is resolved with the help of the azure domain name system.


The following `benefits` are provided by the Azure DNS private resolver.


- It is `fully managed` and has built-in `high availability and zone redundancy`.
- `Reducing operating costs` and running at a fraction of the price of traditional IaaS solutions.
- You can have private access to your Private DNS Zones.
- `High performance per endpoint` is possible.
- `Terraform, Arm, and Bicep` are friendly to the `DevOps` movement.


Thanks for reading my article till end. I hope you learned something special today. If you enjoyed this article then please share to your friends and if you have suggestions or thoughts to share with me then please write in the comment box.


Above blog is submitted as part of 'Devtron Blogathon 2022' - https://devtron.ai/
Check out Devtron's GitHub repo - https://github.com/devtron-labs/devtron/ and give a ⭐ to show your love & support.
Follow Devtron on LinkedIn - https://www.linkedin.com/company/devtron-labs/ and Twitter - https://twitter.com/DevtronL/, to keep yourself updated on this Open Source project.
JavaScript: Tips and Tricks
Tags: javascript, programming, beginners
Published: 2022-05-30 08:53:32

## 1. Filter **Unique** values
You can easily find **unique value** using **Set**.
The **Set** object type was introduced in **ES6**, and along with ..., the **Spread** operator, we can use it to **create** a **new array** with only the **unique values**

```javascript
const array = [1, 2, 1, 3, 5, 5, 1];
const uniqueArray = [...new Set(array)];

console.log(uniqueArray); // 1, 2, 3, 5
```

## 2. Short-Circuit **Evaluation**
Using **&&** will return the **first false** or **falsy** value. If every operand evaluates to **true**, the **last** evaluated **expression will be returned**

```javascript
console.log(true && false && 1); // false
console.log(true && true && 1); // 1
```

Using **||** will return the **first true** or **truthy** value. If every operand evaluates to **false**, the **last** evaluated **expression will be returned**

```javascript
console.log(true || false || 1); // true
console.log(true || true || 1); // 1
```

## 3. Convert to **Boolean**
All values in **JavaScript** are **truthy** with the **exception** of **0**, **""**, **null**, **undefined**, **NaN** and of course **false**, which are **falsy**.

We can easily **switch** between **true** and **false** by using the navigate operator **!**, which will alse convert the type to **boolean**

```javascript
console.log(!0); // true
console.log(!1); // false
console.log(!!0); // false
```

## 4. Convert to **Number**
The opposite can be quickly achieved using the **addition operator +**

```javascript
let int = "1";
console.log(int); // "1"
console.log(typeof int); // "string"

int = +int;
console.log(int); // 1
console.log(typeof int); // "number"
```

## 5. Quick **Float** to **Integer**
If you want to **convert** a **float to an integer**, you can use **Math.floor()**, **Math.ceil()** or **Math.round()**. But there is also a **faster way** to truncate a **float to an integer** using **|**, the **bitwise OR** operator.

```javascript
console.log(15.9 | 0); // 15
console.log(-15.9 | 0); // -15
```

## 6. Async/Await
### Async
When we append the keyword **async** to the function, this function returns the Promise by default on execution. Async keyword provides extra information to the user of the function:

- The function contains some Asynchronous Execution
- The returned value will be the Resolved Value for the Promise

```javascript
async function func() {
    return 1;
}

func().then(alert); // 1
```

### Await
The keyword **await** make JavaScript wait until that Promise settles and returns its result. The **await** works only inside **async** function.

```javascript
async function func() {
    let promise = new Promise((resolve, reject) => {
        setTimeout(() => resolve("Done"), 1000);
    });

    let result = await promise;
    alert(result); // "Done"
}

func();
```
Securing our internal tools
Tags: security, devops, monitoring, lowcode
Published: 2022-05-30 08:44:17

_Using Cloudflare Access to lock down our self hosted internal tools_

At ente we self host a bunch of open source tools. While it takes a bit of effort on our part to set up and maintain these, it helps reduce the amount of data we share with third parties. We use Sentry for error reporting, Grafana for monitoring and Metabase for product metrics (to help folks like me who don't speak SQL).

While we have systems in place to secure the credentials to these services, we wanted to introduce an additional barrier to entry. The obvious answer was to restrict the visibility of these services to an internal network. But looking at [Wireguard's landing page](https://www.wireguard.com/) made me realize that we'd need a full-time dev-ops person to go down that path.

I started wondering "how has Cloudflare not solved this already", and decided to scrape their maze of a website. And duh-doy, they had already solved this indeed.

Introducing, [Cloudflare - Zero Trust Access](https://www.cloudflare.com/products/zero-trust/access/).

Simply put, Zero Trust Access places a login page in front of your endpoint that authenticates users (across a wide variety of vectors), and stores the result in a cookie, that is from there on passed to Cloudflare with every subsequent request.

![CF access screen](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mqohgq1ona89jolvmtvv.png)
 
Email verification with a "One-time PIN" is provided out of the box, that can be coupled with domain-specific rules to serve as a starting point.

In our case, it also made sense to add Github as an authentication vector, with a rule that verified the presence of the user within our org.

![CF access via Github](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9q9i72173x4zsw88z1w9.png)

We went ahead and placed all our internal tools behind Access, and all seemed hunky dory.

Until.

We realized that this had broken error reporting to Sentry. All `POST` requests from clients to report errors started failing due to the newly enforced authentication requirement.

To work around this, Cloudflare provides [Service Authentication](https://developers.cloudflare.com/cloudflare-one/identity/service-auth/service-tokens/). Which is just a fancy way of saying "pass us these secrets in headers and we'll let you through". We setup a Cloudflare Worker as a proxy to attach these headers for us, and configured the Sentry SDK to use this Worker as a tunnel, and all has been well since.

---

We found Zero Trust Access to be a simple way to protect internal endpoints. We later on learned that Google has also been in this game for a while with [Beyond Corp](https://www.beyondcorp.com/).

If you have more insights on what we could do better, let us know by writing to [security@ente.io](mailto:security@ente.io). If you simply want to follow our trysts with dev-ops, follow us on [Twitter](https://twitter.com/enteio), or come say hello on [Discord](https://ente.io/discord).
4 tiêu chí đánh giá địa chỉ bán bàn ghế văn phòng uy tín
Tags: fur
Published: 2022-05-30 08:28:52

Trên thị trường hiện nay có nhiều đơn vị cung cấp nội thất khác nhau mà bạn có thể lựa chọn. Mỗi địa chỉ có những thế mạnh riêng để thu hút khách hàng. Để chọn đúng doanh nghiệp bán [bàn ghế văn phòng](https://vito.vn/) uy tín, bạn cần tìm hiểu về những tiêu chí đánh giá chất lượng sau. Hy vọng với kinh nghiệm sau đây sẽ giúp bạn có quyết định chính xác.

https://vito.vn/
10 mẫu tủ tài liệu hiện đại và chất lượng cho văn phòng
Tags: fur
Published: 2022-05-30 08:27:53

Văn phòng làm việc hiện đại không thể thiếu được sản phẩm [tủ tài liệu](https://vito.vn/tu-van-phong-vito/). Sản phẩm nội thất mang đến tính tiện dụng và gọn gàng cho không gian của các công ty hay không gian làm việc tại nhà. Nhờ những thiết kế đa dạng, màu sắc nổi bật, hiện đại, sản phẩm được nhiều cá nhân cũng như doanh nghiệp tìm kiếm. Với 10 thiết kế dưới đây, nội thất Vito hi vọng bạn sẽ sở hữu được sản phẩm phù hợp.
Chia sẻ ngay 6 kinh nghiệm mua bàn trưởng phòng từ chuyên gia
Tags: fur
Published: 2022-05-30 08:26:14

[Bàn trưởng phòng](https://vito.vn/ghe-van-phong-vito/ghe-giam-doc-truong-phong-vito/) là một trong những dòng sản phẩm nội thất quan trọng được nhiều doanh nghiệp lựa chọn. Mẫu bàn này thể hiện được quyền lực, vị thế của những người đứng đầu. Dù vậy, để có thể chọn được sản phẩm như ý thì bạn hãy tham khảo thêm thông tin từ nội thất Vito nhé!
Join Supernova Hackathon today!
Tags: web3, gamedev, blockchain
Published: 2022-05-30 08:23:03

Call for Developers! 

Hello community! I wanted to share an exciting Hackathon news with you today. 

Join Supernova Hackathon hosted by Dfinity, and build your possibilities to the future!

Winning a prize and funds up to $6 million is a plus! 

Check out the Hackathon page here: 
https://supernova.devpost.com/


Web3 is transforming the internet, and will provide extraordinary opportunities to developers and entrepreneurs. The Internet Computer blockchain’s global Supernova hackathon welcomes developers and entrepreneurs to start building using the most advanced Web3 platform in existence today, while winning up to $6 million in prizes, grants, and seed investments in the process. A host of impressive dapps and services have already been deployed on the Internet Computer, including the social platforms DSCVR and Distrikt, the instant-messaging dapp OpenChat, and the automated market maker InfinitySwap.

Supernova participants can play a key role in building out a new open web in which social media and other services are directly owned, run, and updated by DAO-based communities. In this brave new world, social media and online games will blend with DeFi functionality to become SocialFi and GameFi, combined together to support a growing Web3 ecosystem and decentralized metaverse. Supernova includes six categories: SocialFi, GameFi, metaverse and NFTs, asynchronous DeFi, public good/social impact, and an open-ended “blue sky” track.

Submissions will be accepted until June 20, 11:45 PM Pacific Time. Learn everything you need to know about Supernova on the DevPost.
What Are the Uses of Cast Iron Tactile?
Tags: castirontactile, castirondetectablewarnings
Published: 2022-05-30 08:21:19

[Cast iron tactile](https://dwpnow.com/blogs/news/installation-of-ada-detectable-warning-panels-cast-in-place-surface-applied) tiles are used to provide guidance to pedestrians and warn them of potential dangers. For example, in a narrow pathway or near the entrance of a building, warning tiles can be installed so that people do not collide with walls or doors. Similarly, tactile paving at the entrance of buildings enables visually impaired people to find their way into public places without having to worry about collisions. Cast iron tactile tiles have been shown to reduce collisions between pedestrians and vehicles, particularly cyclists.
Làm thế nào để mua bàn gỗ chuẩn không cần chỉnh cho phòng làm việc
Tags: fur
Published: 2022-05-30 08:15:31

[Bàn làm việc gỗ](https://vito.vn/ban-van-phong-vito/ban-lam-viec-nhan-vien-khung-sat-vito/) có nhiều ưu điểm và luôn là lựa chọn hàng đầu dành cho các văn phòng hiện đại. Vậy bạn đã biết làm cách nào để chọn mua bàn gỗ vừa bền vừa rẻ chưa? Đến với nội thất Vito, bạn có thể giải đáp ngay thắc mắc này.
Ghế giám đốc nhập khẩu – đẳng cấp dành cho người đứng đầu
Tags: fur
Published: 2022-05-30 08:14:15

[Ghế giám đốc nhập khẩu](https://vito.vn/ghe-van-phong-vito/ghe-giam-doc-truong-phong-vito/) đang là sự lựa chọn hàng đầu dành cho các phòng ban lãnh đạo của công ty. Không chỉ giúp các sếp thoải mái, thư giãn khi ngồi làm việc, mà còn mang lại vẻ đẹp sang trọng và đẳng cấp cho căn phòng. Để hiểu thêm về dòng ghế này, mời các bạn cùng theo dõi thông tin từ nội thất Vito.
Bí quyết chọn ghế quỳ có tựa đầu cực chuẩn dành cho dân văn phòng
Tags: fur
Published: 2022-05-30 08:13:29

[Ghế quỳ có tựa đầu](https://vito.vn/ghe-van-phong-vito/) được sử dụng khá phổ biến trong các văn phòng hiện nay. Dòng sản phẩm này mang đến một không gian làm việc chuyên nghiệp và hiện đại. Hơn thế, ghế có chất lượng cao, kiểu dáng hiện đại, rất phù hợp với nhu cầu của dân văn phòng. Cùng nội thất Vito tìm hiểu ngay về sản phẩm này cũng như bí quyết để chọn mua sản phẩm chất nhất nhé.
Vydecors - Discover your stunning decorations
Tags: vydecors, decorations, decor, php
Published: 2022-05-30 08:08:06

_VyDecors is devoted to providing you with the finest in decorating inspiration and instruction. To help you live a more beautiful life, we give lists of decorating-related items.
_
At VyDecors, we're dedicated to bringing you the best in inspiration and education about decorating. [vydecors.com](https://vydecors.com/
) provides lists of decorating-related things for you, to create a more beautiful life. You can find useful information about: floor and decor, home decor, wall decor, farmhouse decor, floor decor, and many more.

If you may ask, decor is the style or scheme of interior decoration, furnishings, etc., as in a room or house, or in another word, the colour, style, and arrangement of the objects in a room.

Our purpose is to provide users with the most creative decorating ideas possible, and help people spend less time and effort locating what they truly require. For example, this page provides a list of results about bathroom decorations and accessories which we have selected by our system.

The specialists at vydecors.com give elegant home decor inspiration and interior design ideas. Explore the world's architectural treasures, tour celebrity houses, and be inspired by prominent interior designers.

We want to increase the website's quality in the near future so that users may have a better experience while looking for words like "100 Best Bathroom Decorating Ideas - Decor & Design Inspiration for Bathrooms". We strive towards a safer and more secure solution to provide people peace of mind.

We are always pleased to receive your feedback and contact from all of you. 
Website: [https://vydecors.com/](https://vydecors.com/) 
Address: 20505 S Dixie Hwy, Ste 1121, Cutler Bay, FL, 33189, USA
Email: vydecorsdotcom@gmail.com
Phone: (561) 692-7655

Socia Media: 
Facebook: [https://www.facebook.com/vydecors/](https://www.facebook.com/vydecors/)
Twitter: [https://twitter.com/vydecors](https://twitter.com/vydecors)
Pinterest: [https://www.pinterest.com/vydecors/](https://www.pinterest.com/vydecors/)
Diigo: [https://www.diigo.com/profile/vydecors](https://www.diigo.com/profile/vydecors) 
Blogspot: [https://vydecors.blogspot.com/](https://vydecors.blogspot.com/) 
Instapaper: [https://www.instapaper.com/p/vydecors](https://www.instapaper.com/p/vydecors) 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r8ya4wnmdxgnu80dy03a.PNG)
React 18: useTransition
Tags: react, nextjs
Published: 2022-05-30 08:04:09

- Can boost performance by delaying high cost actions.

- Added in React 18

example) 

```

import { useState, useTransition } from 'react';

function App () {
  const [value, setValue] = useState("");
  const [isPending, startTransition] = useTransition();

  return (
    <div>
      <input
        onChange={(e) => {
          startTransition(() => {
            setValue(e.target.value);
          });
        }}
      />
      {isLoading ? "Loading..." : "Loaded"}
    </div>
  );
}
```