teleren/devto huggingface dataset:
Usability Testing: Why is it a New Competitive Advantage?
Published: 2024-07-16 11:40:47

Usability testing generally involves a Live, One-on-One session between a participant in a study and a moderator. The participant is asked by the moderator to carry out various tasks representing all those that real users would perform. This is useful in many ways. 
Much before the initiation of the testing, a custom study script is designed by a usability expert. It acts as an experimental protocol. 
Such a document combines the one-of-a-kind domain experience of clients with experts’ qualitative research knowledge. Find out why Usability testing happens to be the new competitive advantage.

- Offers Excellent and Useful Data

With Usability studies’ help, it can be easier to find out whether or not a [website](https://www.peppersquare.com/ui-ux-design/website-design/) is usable. Unless you have enough data regarding how your website is experienced by users, it can be easier to get qualitative feedback. It can enhance the interactive experience, improve the level of satisfaction of users, and save on redesign and development efforts.

- Measures User Behavior

The behavior of users can be measured with the help of Usability testing. It is worth noting that users are bad at articulating the things that they are looking for. But when behavior is observed and measured, it can be easier to find out what supports their objectives and inspires them the best.

It is often that website owners and in-house developers cannot view their website from a fresh perspective. With usability testing, it can be easier to look from a new angle and concentrate on all those features that actually matter to end-users.

- Reduces Costs

Competitive advantage can be gained in the form of reduction of support costs. When users can get a reliable website experience, mainly when competing businesses rank next in the search results, it is possible to get a solid website experience. When almost every company, including big brands, is trying to cut down on costs in every possible way, it can be beneficial to use usability testing to reduce expenses on development and design that are unlikely to attract users.

- Higher Guarantee of Success
With testing before implementing, it can be much easier to ensure success for brands. It is a truth that most businesses fail to have a blueprint, but Usability Testing gives them one. They can work on the same and have better chances of improving the [UX (User Experience)](https://www.peppersquare.com/ui-ux-design/).
1 Common Mistake Junior Developers Make
Tags: webdev, beginners, programming, learning
Published: 2024-07-17 02:00:00

You are working on too many different things at once.

As a new developer, you want to look competent.

And you want people to think that you are very efficient. 

That you just happen to be this coding prodigy that came out of nowhere.

But take a look at senior to mid level devs.

They reject the extra work because they are in the middle of something.

They are in the middle of, one thing.

They have a really good grasp of that one thing, and the requirements for that one thing.

And they get it done well.

You, on the other hand, have 3 things going on.

Of which you don't fully understand.

And your brain has to jump back and forth between them.

As a new dev, don't be embarrassed to say, 

"I'm currently in the middle of something. Let me get this done first, then I will jump on that."

Stop volunteering for everything.

Get your one assignment, understand the requirements well, and then knock out the park.

Be a dev that always delivers over one that is always in the middle of 10 different things.

And always has to give updates and excuses for all the things that you are doing.

Take one task assignment at a time, and complete it.

And commit to a new task only when the previous task is delivered as requested.

In fact, building software is a slower process than you think. Especially if you want to do it right.

Rooting for you,

Karl ⛹️

Ps. [Follow me on X](https://x.com/thekarlesi) for more!
Cloning Reactive Objects in JavaScript
Tags: vue, reactive, clone, javascript
Published: 2024-07-16 11:44:56

Cloning an object in JavaScript is a common operation, but when it comes to cloning reactive objects, there are some additional considerations to keep in mind, especially when working with frameworks such as Vue.js or React. In this article, we'll explore how to properly clone reactive objects and provide examples using Vue.js.

**Shallow Cloning vs. Deep Cloning**
When it comes to cloning objects, it's important to understand the difference between shallow cloning and deep cloning. Shallow cloning creates a new object with the same top-level properties as the original object, but the nested objects within the original object are still referenced in the new object. Deep cloning, on the other hand, creates a completely new object with all nested objects also cloned.

**Cloning Reactive Objects in Vue.js**
In Vue.js, objects that are part of the component's data are made reactive using the Vue reactivity system. When cloning reactive objects in Vue.js, it's important to ensure that the reactivity is preserved in the cloned object. Vue provides the `Vue.util` object, which contains several utility methods for working with reactive objects. One of these methods is `Vue.util.defineReactive`, which can be used to define a reactive property on an object.

**Example: Cloning a Reactive Object in Vue.js**
```javascript
// Original reactive object
const originalObject = Vue.observable({
  name: 'John',
  age: 30,
});

// Cloning the reactive object
const clonedObject = {};
for (let key in originalObject) {
  Vue.util.defineReactive(clonedObject, key, originalObject[key]);
}
```

In this example, we first create the original reactive object using `Vue.observable`. Then, we clone the object by iterating over its properties and using `Vue.util.defineReactive` to define each property on the new object.

It's important to note that this method only performs a shallow clone, meaning that any nested objects within the original object will still be referenced in the cloned object. If deep cloning is required, an additional deep cloning utility, such as Lodash's `_.cloneDeep`, can be used to ensure that all nested objects are also cloned.

In conclusion, when working with reactive objects in frameworks like Vue.js, it's crucial to handle object cloning with care to preserve reactivity and avoid unintended side effects. By using the appropriate methods and utilities, such as those provided by Vue.js itself or third-party libraries, developers can safely clone reactive objects while maintaining reactivity and data integrity.
Computers are fast - Quiz | By Jonathon Belotti
Tags: python, programming, webdev, beginners
Published: 2024-07-16 11:58:35

“Computers are fast” I guess we all agree with this statement but do you know how fast they are? If you want to know then check [this quiz](https://thundergolfer.com/computers-are-fast) by Jonathon Belotti. This quiz is inspired by Julia Evans' Computers Are Fast. Interesting & fun one.
Facebook Graph API GET Page Access Token
Tags: graphql, metaapi, marketingapi, facebookgraphapi
Published: 2024-07-16 12:00:41

Hello 👋 readers, 
If you're looking to manage your Facebook page programmatically, one of the essential things you'll need is a Page Access Token. Here's a simple guide to help you obtain it.

**Prerequisites**
Before you start, make sure you have the following:
- A Facebook Developer account. If you don't have one, you can create it [here](https://developers.facebook.com/).
- An existing Facebook Page that you manage.

**Step-by-Step Guide**

**Log in to Your Facebook Developer Account**
Ensure you're logged into your Facebook developer account and have an app created.

**Get a User Access Token with manage_pages Permission**
- Go to the [Graph API Explorer](https://developers.facebook.com/tools/explorer/).
- Select your app from the dropdown.
- Click on "Get User Access Token" and ensure manage_pages is selected.

![graph-api-explorer](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/on0mh5xx6w3zfu0tcljd.jpg)

**Fetch the Page Access Token**
Make a GET request to the following endpoint:

```
https://graph.facebook.com/{your_page_name}?fields=id,name,access_token&access_token={your_user_access_token}
```

> Replace {your_page_name} with your Facebook page name and {your_user_access_token} with the user access token you obtained.

**Retrieve the Page Access Token from the Response**
The response will include the page ID, name, and the access token:

```json
{
  "id": "1234567890",
  "name": "Your Page Name",
  "access_token": "your_page_access_token"
}
```
***Tips and Best Practices***

- **Keep Your Tokens Secure:** Never expose your access tokens in client-side code or public repositories. Treat them like passwords.
- **Set Permissions Correctly:** Ensure your app has the necessary permissions to access the page data.
- **Token Expiry:** Remember that access tokens can expire. Be prepared to regenerate them as needed.

**Conclusion**

Obtaining a Facebook Page Access Token is a straightforward process that allows you to manage your page programmatically. By following the steps outlined above, you can quickly get the necessary access token and start integrating Facebook page functionalities into your applications. Remember to handle your tokens securely and renew them as required to ensure uninterrupted access.
BitPower Security Analysis:
Published: 2024-07-16 12:12:56

BitPower uses blockchain technology to build a decentralized financial platform, which greatly improves the security of the system. First of all, the distributed ledger technology of blockchain makes data difficult to tamper with, and all transactions and operations are permanently recorded on the blockchain, providing a high degree of transparency and traceability. Secondly, the use of smart contracts ensures the automatic execution of transactions, reduces the possibility of human intervention, and reduces operational risks. The smart contract code has undergone rigorous auditing and testing to further ensure its reliability and security. In addition, BitPower uses advanced cryptography technology to ensure the security of users’ private keys and assets. The decentralized nature of the platform greatly reduces the risk of single points of failure and hacker attacks, enhancing the stability and security of the overall system. Based on the above, BitPower has significant advantages in security and provides users with a safe, transparent and efficient financial services platform.

#BitPower
Typescript tuples aren't tuples
Tags: typescript
Published: 2024-07-16 13:53:17

---
title: Typescript tuples aren't tuples
published: true
description: Why Typescript tuples are misleading
tags: typescript
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2024-07-16 13:50 +0000
---

I came across some surprising behaviour recently. One of the defining features of tuples is that they can be considered equal if each member of the tuple in the equivalent position is equal.

So the tuple `[1, 3] ` should be equal to the tuple `[1,3]`, but in Typescript they are not because tuples in Typescript are a way of describing the types of heterogeneous arrays (which normally take a single type for all the elements within them).

Arrays are only equal if they are the same reference and there are no special rules for value equality for them in Javascript, which ultimately what we're writing here.

I'm not sure what a better name for what Typescript [calls tuples](https://www.typescriptlang.org/play/?#example/tuples), maybe typed arrays, but the current name does carry some inconvenient expectations for those of us coming from other languages.
Heard Great Things About New Orleans
Published: 2024-07-16 12:14:17


I’ve been hearing so many amazing things about New Orleans lately, and it sounds like such a vibrant and exciting place. From the incredible music scene to the delicious food and rich history, it seems like there’s always something going on.

I’m really curious to learn more about the city and its hidden gems. If you’re looking for detailed updates and in-depth articles on what’s happening in New Orleans, I highly recommend checking out the [New Orleans Times](https://neworleanstimes.com/). They cover a wide range of topics, from local news to business events, and it’s a great resource for anyone interested in the city.

What are some of your favorite things about New Orleans? I’d love to hear more about what makes this city so special!
THE COMPLETE CREATIVE
Tags: devchallenge, stellarchallenge, blockchain, web3
Published: 2024-07-16 12:16:01



## What I Built
**The Product: **
The Complete Creative is a digital platform built to connect creators with their core fan community and provide access to global payments and funding. 
It connects creators with community and payments, promoting the funding of creative projects through a blockchain-based ecosystem.
Problem it solves and benefits: For creators
The Complete Creative deals with issues of receiving direct global payments for creative content in an instant. By allowing users to gain exclusive access to their favorite creators, they build a supportive community and secure project funding.
This promotes collaborative creative work with fans invested in the content and allows for creators to succeed in doing their work
**For Users:**
Our app gives users the chance to support their favorite creators while enjoying perks in the form of exclusive access to creator content and events. It addresses the issue of cooperative financing for projects they believe in. This incentivizes users to contribute to the creative industry which benefits all stakeholders.
For Businesses:
Local and international businesses, whether big or small, can promote their products and services on our app, access creative content for their promotional materials and contribute funds to projects they believe in.


## Demo
https://thecompletecreative.my.canva.site/the-complete-creative-deck
https://docs.google.com/document/d/18A0iBMnTOOuYu1sV3Jhg0BfYlD-DSoykQ1lJmAhlSiU/edit?usp=sharing

## My Code
Actually development hasn't commenced yet, but below is a link to our vision

Pitch Deck
https://bit.ly/completecreativeapp

Stellar Pitch Deck
https://drive.google.com/file/d/1jdcNdDE07TfAPSf8NicPvYTl_UxlTYz0/view?usp=sharing
 

## Journey
Fascinated by the robust nature of the Stellar blockchain and its added advantages; cross border payments, fast transactions and lower rates, building on Stellar was the best choice made. 
This would help reward creatives for their craft at a faster and efficient rate. As the Stellar ecosystem keeps on growing, it energizes us to also go the extra mile by learning new and innovative ways in the blockchain space. 
We're proud of coming up with such an idea that leverages on the stellar blockchain to solve real world problems
We hope to see our project impacting positively on the life of humans at large

We would want our submission to be considered for the super sustainable prize category
BitPower Security Analysis:
Published: 2024-07-16 12:18:05



 BitPower uses blockchain technology to build a decentralized financial platform, which greatly improves the security of the system. First of all, the distributed ledger technology of blockchain makes data difficult to tamper with, and all transactions and operations are permanently recorded on the blockchain, providing a high degree of transparency and traceability. Secondly, the use of smart contracts ensures the automatic execution of transactions, reduces the possibility of human intervention, and reduces operational risks. The smart contract code has undergone rigorous auditing and testing to further ensure its reliability and security. In addition, BitPower uses advanced cryptography technology to ensure the security of users’ private keys and assets. The decentralized nature of the platform greatly reduces the risk of single points of failure and hacker attacks, enhancing the stability and security of the overall system. Based on the above, BitPower has significant advantages in security and provides users with a safe, transparent and efficient financial services platform.

#BitPower
Managing Strains (Pulled Muscle) with Pain O Somaz
Tags: musclepain
Published: 2024-07-16 12:19:30

Managing strains or pulled muscles with Pain O Soma involves using the medication to alleviate pain and promote muscle relaxation. **[Pain o soma 500 mg](https://safe4cure.com/product/pain-o-soma-500-mg/)** effectively reduces muscle spasms and discomfort by blocking pain signals to the brain. For optimal results, follow your healthcare provider's dosage recommendations, typically taking it three times a day and at bedtime. Combine this treatment with rest, ice, compression, and elevation (RICE) to support recovery. Always consult your doctor for guidance on duration and monitor for potential side effects, ensuring safe and effective management of your muscle strain with Pain O Soma.
네임드카지노
Published: 2024-07-16 12:20:29

네임드카지노(Named Casino)는 국내에서 가장 믿을 수 있는 온라인 카지노 사이트로 자리 잡았습니다. 사기 방지 검증 커뮤니티에서 검증받은 메이저 온라인 카지노 게임 사이트로, 다양한 온라인 카지노 게임을 실시간으로 제공합니다. 이 글에서는 네임드카지노의 특징, 제공되는 게임, 안전성, 그리고 다양한 혜택과 활동에 대해 자세히 알아보겠습니다.

네임드카지노의 특징
네임드카지노는 국내 최초로 온라인 카지노 서비스를 제공한 회사로, 그 명성을 바탕으로 급속도로 성장했습니다. 여러 계열사를 설립하며 광범위한 자본과 운영에 대한 깊은 이해를 바탕으로 국내 1위 바카라 사이트로 자리 잡았습니다. 네임드카지노는 플레이어들에게 안전하고 즐거운 카지노 경험을 제공하기 위해 최선을 다하고 있습니다.
**_[네임드카지노](https://www.named-main.com/)_**

다양한 게임 제공
네임드카지노는 다양한 카지노 게임을 제공하여 플레이어들이 원하는 게임을 선택할 수 있습니다. 주요 게임으로는 바카라, 블랙잭, 슬롯, 포커, 룰렛 등이 있으며, 이 모든 게임은 실시간으로 제공됩니다. 실시간 게임은 웹페이지와 같은 화려한 그래픽과 영상으로 제공되어, 실제 카지노에 있는 것과 같은 느낌을 줍니다.

바카라
네임드카지노의 대표 게임인 바카라는 간단하면서도 전략적인 게임으로 많은 인기를 끌고 있습니다. 플레이어들은 딜러와 경쟁하며, 누가 더 높은 점수를 받을지 예측하는 게임입니다. 다양한 베팅 옵션과 높은 배당률로 많은 플레이어들이 즐기는 게임입니다.

블랙잭
블랙잭은 카드 게임 중 하나로, 딜러와 경쟁하여 21에 가까운 점수를 만드는 게임입니다. 전략과 운이 중요한 이 게임은 네임드카지노에서 많은 인기를 끌고 있습니다.

슬롯
네임드카지노의 슬롯 게임은 다양한 테마와 보너스 기능을 제공하여 플레이어들이 쉽게 즐길 수 있습니다. 다양한 테마와 높은 배당률로 많은 인기를 끌고 있습니다.

포커
포커는 전략과 기술이 중요한 카드 게임으로, 네임드카지노에서는 다양한 포커 게임을 제공합니다. 텍사스 홀덤, 오마하, 세븐 카드 스터드 등 다양한 포커 게임을 즐길 수 있습니다.

룰렛
룰렛은 운이 중요한 게임으로, 플레이어들은 룰렛 휠의 번호를 예측하여 베팅합니다. 네임드카지노의 룰렛 게임은 다양한 베팅 옵션과 높은 배당률로 많은 인기를 끌고 있습니다.

안전하고 신뢰할 수 있는 카지노
네임드카지노는 사기 방지 검증 커뮤니티에서 검증받은 메이저 온라인 카지노 사이트로, 플레이어들이 안전하게 게임을 즐길 수 있도록 최선을 다하고 있습니다. 안전한 결제 시스템과 공정한 게임 환경을 제공하여, 플레이어들이 안심하고 게임을 즐길 수 있습니다.

다양한 혜택과 프로모션
네임드카지노는 플레이어들에게 다양한 혜택과 프로모션을 제공합니다. 신규 가입 보너스, 첫 입금 보너스, 캐시백 보너스 등 다양한 보너스를 통해 플레이어들이 더 많은 기회를 가질 수 있습니다. 또한, 주기적인 이벤트와 프로모션을 통해 플레이어들의 만족도를 높이고 있습니다.

사기 방지와 트라우마 없는 경험
네임드카지노는 사기를 방지하고, 플레이어들이 트라우마 없이 게임을 즐길 수 있도록 최선을 다하고 있습니다. 안전한 결제 시스템과 공정한 게임 환경을 제공하여, 플레이어들이 안심하고 게임을 즐길 수 있습니다. 또한, 고액의 돈을 바꿀 염려 없이 안전하게 게임을 즐길 수 있습니다.

가입과 혜택
네임드카지노에 가입하면 다양한 혜택과 활동을 즐길 수 있습니다. 슬롯, 블랙잭, 베팅 스포츠 활동 등 다양한 게임을 한 곳에서 즐길 수 있으며, 다양한 보너스와 프로모션을 통해 더 많은 기회를 가질 수 있습니다. 안전하고 즐거운 온라인 카지노 경험을 원한다면 네임드카지노가 최고의 선택입니다.

결론
네임드카지노는 국내 최고의 온라인 카지노 플랫폼으로, 다양한 게임과 혜택을 제공하여 플레이어들이 안전하고 즐겁게 게임을 즐길 수 있도록 최선을 다하고 있습니다. 안전한 결제 시스템과 공정한 게임 환경을 제공하며, 다양한 보너스와 프로모션을 통해 플레이어들의 만족도를 높이고 있습니다. 네임드카지노에서 안전하고 즐거운 카지노 경험을 누리시길 바랍니다.
네임드카지노
Published: 2024-07-16 12:21:21

네임드카지노(Named Casino)는 국내에서 가장 믿을 수 있는 온라인 카지노 사이트로 자리 잡았습니다. 사기 방지 검증 커뮤니티에서 검증받은 메이저 온라인 카지노 게임 사이트로, 다양한 온라인 카지노 게임을 실시간으로 제공합니다. 이 글에서는 네임드카지노의 특징, 제공되는 게임, 안전성, 그리고 다양한 혜택과 활동에 대해 자세히 알아보겠습니다.

네임드카지노의 특징
네임드카지노는 국내 최초로 온라인 카지노 서비스를 제공한 회사로, 그 명성을 바탕으로 급속도로 성장했습니다. 여러 계열사를 설립하며 광범위한 자본과 운영에 대한 깊은 이해를 바탕으로 국내 1위 바카라 사이트로 자리 잡았습니다. 네임드카지노는 플레이어들에게 안전하고 즐거운 카지노 경험을 제공하기 위해 최선을 다하고 있습니다.
**_[네임드카지노](https://www.named-main.com/)_**

다양한 게임 제공
네임드카지노는 다양한 카지노 게임을 제공하여 플레이어들이 원하는 게임을 선택할 수 있습니다. 주요 게임으로는 바카라, 블랙잭, 슬롯, 포커, 룰렛 등이 있으며, 이 모든 게임은 실시간으로 제공됩니다. 실시간 게임은 웹페이지와 같은 화려한 그래픽과 영상으로 제공되어, 실제 카지노에 있는 것과 같은 느낌을 줍니다.

바카라
네임드카지노의 대표 게임인 바카라는 간단하면서도 전략적인 게임으로 많은 인기를 끌고 있습니다. 플레이어들은 딜러와 경쟁하며, 누가 더 높은 점수를 받을지 예측하는 게임입니다. 다양한 베팅 옵션과 높은 배당률로 많은 플레이어들이 즐기는 게임입니다.

블랙잭
블랙잭은 카드 게임 중 하나로, 딜러와 경쟁하여 21에 가까운 점수를 만드는 게임입니다. 전략과 운이 중요한 이 게임은 네임드카지노에서 많은 인기를 끌고 있습니다.

슬롯
네임드카지노의 슬롯 게임은 다양한 테마와 보너스 기능을 제공하여 플레이어들이 쉽게 즐길 수 있습니다. 다양한 테마와 높은 배당률로 많은 인기를 끌고 있습니다.

포커
포커는 전략과 기술이 중요한 카드 게임으로, 네임드카지노에서는 다양한 포커 게임을 제공합니다. 텍사스 홀덤, 오마하, 세븐 카드 스터드 등 다양한 포커 게임을 즐길 수 있습니다.

룰렛
룰렛은 운이 중요한 게임으로, 플레이어들은 룰렛 휠의 번호를 예측하여 베팅합니다. 네임드카지노의 룰렛 게임은 다양한 베팅 옵션과 높은 배당률로 많은 인기를 끌고 있습니다.

안전하고 신뢰할 수 있는 카지노
네임드카지노는 사기 방지 검증 커뮤니티에서 검증받은 메이저 온라인 카지노 사이트로, 플레이어들이 안전하게 게임을 즐길 수 있도록 최선을 다하고 있습니다. 안전한 결제 시스템과 공정한 게임 환경을 제공하여, 플레이어들이 안심하고 게임을 즐길 수 있습니다.

다양한 혜택과 프로모션
네임드카지노는 플레이어들에게 다양한 혜택과 프로모션을 제공합니다. 신규 가입 보너스, 첫 입금 보너스, 캐시백 보너스 등 다양한 보너스를 통해 플레이어들이 더 많은 기회를 가질 수 있습니다. 또한, 주기적인 이벤트와 프로모션을 통해 플레이어들의 만족도를 높이고 있습니다.

사기 방지와 트라우마 없는 경험
네임드카지노는 사기를 방지하고, 플레이어들이 트라우마 없이 게임을 즐길 수 있도록 최선을 다하고 있습니다. 안전한 결제 시스템과 공정한 게임 환경을 제공하여, 플레이어들이 안심하고 게임을 즐길 수 있습니다. 또한, 고액의 돈을 바꿀 염려 없이 안전하게 게임을 즐길 수 있습니다.

가입과 혜택
네임드카지노에 가입하면 다양한 혜택과 활동을 즐길 수 있습니다. 슬롯, 블랙잭, 베팅 스포츠 활동 등 다양한 게임을 한 곳에서 즐길 수 있으며, 다양한 보너스와 프로모션을 통해 더 많은 기회를 가질 수 있습니다. 안전하고 즐거운 온라인 카지노 경험을 원한다면 네임드카지노가 최고의 선택입니다.

결론
네임드카지노는 국내 최고의 온라인 카지노 플랫폼으로, 다양한 게임과 혜택을 제공하여 플레이어들이 안전하고 즐겁게 게임을 즐길 수 있도록 최선을 다하고 있습니다. 안전한 결제 시스템과 공정한 게임 환경을 제공하며, 다양한 보너스와 프로모션을 통해 플레이어들의 만족도를 높이고 있습니다. 네임드카지노에서 안전하고 즐거운 카지노 경험을 누리시길 바랍니다.
Weather widget / component in Next.js
Tags: webdev, nextjs, weather, webcomponents
Published: 2024-07-16 12:23:30

## [Dynamic Weather Widget](https://weather-widget-in-next-js.vercel.app/)

Follow these steps to integrate a dynamic weather widget into your Next.js project.

### Step 1: Create an API Route

1. Inside your `app` folder, create a new folder named `api`.
2. Inside the `api` folder, create a subfolder for your weather route (e.g., `weather`).
3. Add a file named `route.js` inside the `weather` folder.

   You can find the code for `route.js` [here](https://github.com/HeySkidee/weather-widget-in-next.js/blob/main/app/api/weather/route.js).

   Make sure to change the name of the city in the code as needed:
   
   ![City Name Change](https://github.com/user-attachments/assets/2d1a0716-b9c2-4dfe-9824-69ccf13430b3)

### Step 2: Add the Environment Variable

1. Go to the [OpenWeatherMap](https://home.openweathermap.org/users/sign_up) website, create an account, and navigate to the **My API keys** section in your profile to generate an API key.

   <img src='https://github.com/user-attachments/assets/424a3b07-d985-409e-90f9-a31ff98f6b76' width=60%>

   It might take a few minutes for the API key to activate and start working.

2. Create a file named `.env` in your project folder and add the environment variable with your API key:
   
   ![Add Environment Variable](https://github.com/user-attachments/assets/9008135f-0c8a-461c-93da-cc9dfa212976)

>   If you are hosting the project on Vercel:
>   Add the environment variable during deployment, or if the project is already deployed, add it through the project dashboard
   
<img src="https://github.com/user-attachments/assets/e92a2c17-ec36-439e-9dd4-94ec01e66eef" width=60%>


### Step 3: Create a Weather Component

1. Create a folder named `components` in your project folder.
2. Inside the `components` folder, create a file named `Weather.js`.
3. Add the code from [here](https://github.com/HeySkidee/weather-widget-in-next.js/blob/main/components/Weather.js) to `Weather.js`.
4. Install the dependencies by running the following command in project folder terminal:
      
   ```jsx
   npm install swr framer-motion @fortawesome/react-fontawesome @fortawesome/free-solid-svg-icons @fortawesome/fontawesome-svg-core
   ```

### Step 4: Import and Use the Weather Component

1. Import the `Weather` component in the file where you want to display the widget.
   
   ```javascript
   import Weather from './components/Weather';
   ```

2. Add the `Weather` component in your JSX:

   ```jsx
   <Weather />
   ```

   ![Import Weather Component](https://github.com/user-attachments/assets/5caa7ab6-194c-4b83-86b6-c2143e5f3f10)

The weather widget should now be integrated and look similar to this:

<img src='https://github.com/user-attachments/assets/a182da38-49c6-453c-b179-1799116da369' width='40%'>

It's just straight text, no css around it.