teleren/devto huggingface dataset:
we3-login for Meteor in beta
Tags: web3, meteor
Published: 2022-05-12 12:08:52

So, after a few weeks of tinkering and few days of concentrated work, the `freedombase:web3-login` [package](https://atmospherejs.com/freedombase/web3-login) for [Meteor](https://www.meteor.com) is in a state that I would term as Beta.

This follows after the initial build which I did on a [livestream](https://youtu.be/A381t8orhAo), back in April.

Since then the package has been updated to work better, more efficiently (one less roundtrip between server and client) and I have added verification and confirmation function.

I have also integrated it with the `bozhao:link-accounts` [package](https://atmospherejs.com/bozhao/link-accounts) to allow for easier integration into existing apps.

So what are the next steps?

First as always more testing. Take the package for a test drive and let me know if there are any issues. I'm getting conflicting reports about loading of certain packages as I'm trying a bit of an experimental method by detecting what is really needed. So this will probably require a bit of a tweaking to get right.

Once that is done any additional functionality will have to be added. I think that I have it tied down for now, but I'm just a beginner in this area, so I might easily be mistaken.

Finally expanding functionality to cover more wallet providers from web3-modal will be the final goal.

So what do you thing?

[GitHub repository](https://github.com/Freedombase/web3-login/)

--------
If you like my work, please support me on [GitHub Sponsors ❤️](https://github.com/sponsors/StorytellerCZ).
Unique Values Counter
Tags: javascript, programming, tutorial
Published: 2022-05-12 13:44:04

Implement a function `CountUniqueValues`, which takes in a **sorted Array** of positive and negative integers.
It should count and return the number of unique values in the Array.

Thoughts:
- This is an easy question.
- It should be easily checked against using JavaScript.
- It should try to use pointers to track the position of values to be compared against.
- No need to mutate the original Array.

```js
function CountUniqueValues(arr) {
    if (arr.length === 0) return 0;

    let uniqueValueIndex = 0;
    let counter = 1;

    for (let i = 1; i < arr.length; i++) {
        if (arr[i] !== arr[uniqueValueIndex]) {
            counter++;
            uniqueValueIndex = i;
        }
    }

    return counter;
}

// sample data
const sorted_array = [-10,-11,1,1,1,2,3,4,5,5,5,6,7,7,7,7,8];
// result
console.warn(CountUniqueValues(sorted_array));
// to be asserted against result
console.warn(Array.from(new Set(sorted_array)).length);
```
What have you learned from integrating CRMs into your product?
Tags: discuss, startup, productivity
Published: 2022-05-12 13:42:18

**CRM stands for “Customer Relationship Management”**, and CRM software helps you do just that: it provides tooling to track your interactions and commitments to prospects, customers, and visitors to your app, service, or site. Often this comes in the form of integrations that automate part of the process - keeping track of contact information, logging important events and milestones in the customer journey, and reminding you to follow-up on leads before they go cold.

I’ve come across a bunch of discussions lately on Indiehackers which have had me thinking about CRM (Customer Relationship Management) software - of course, [there’s many flavors of CRM](https://www.indiehackers.com/post/how-do-you-choose-the-right-crm-for-your-product-99cf9348d9) with different value propositions, and each has their own benefit to founders and product support teams… but I’m curious about your experience as a developer:

**Which CRMs have you integrated with? Do any features stand out as particularly important or great to work with?**

Let’s talk about the good, the bad, and the ugly of CRM integration in your work.
Have a look at my #appwritehack Web App InfoAbout.me and see What I built at #appwritehack
Tags: appwritehack
Published: 2022-05-12 13:33:29

This Post is the extension of my previous InfoAbout.me project submission post :-
 https://dev.to/mdsahiloss/infoaboutme-165h

Go and check it out, wrote info there about the InfoAbout.me, and now in this Post I'm gonna post videos on InfoAbout.me.

couldn't show these videos in my previous #appwritehack post due to lack of time and summited my submission Post at the ending time of #appwritehack

1) This video shows the functionalities that InfoAbout.me app has at current built.

{% embed https://youtu.be/eCrpef1A9es %}


2) This video shows how the Appwrite Backend hav been set up for InfoAbout.me Applcation.

{% embed https://youtu.be/DAoedCuwWUI %}


For Now the current built of InfoAbout.me App is my submission for #appwritehack but in future this App will be enhanced by me and I'll integrate other features of Appwrite like email verification etc to make this app eligible for deployment.

Thankyou for seeing this Post.
[TRACKER] Never Lose Track of a Job Application
Tags: appwritehack, javascript, react
Published: 2022-05-12 13:31:43

##Tracker 
>Helping you stay ahead of all your job applications

### Overview
Quick question, What's the perfect job opening? off the top of my head I'd say one with an amazing pay check with requirements that match my skill set. Many times we come across these kinds of jobs and almost immediately commit, in our heads, to send in applications. More often than not we completely forget to apply or we lose track of the application's status when we send them.

Wouldn't it make sense if you could have a system that sends you timely reminders about pending applications to **jobs**, **events** or **fellowships** whilst also provide a central place for organising all your applications and tracking them. To this end, my team developed Tracker to tackle these problems.

#### Tracker
Tracker helps users to keep track of pending job applications and ensure that they get back to them through timely email reminders. It also serves as a useful tool to analyse submitted applications

##### Technologies Used 

- **Architecture** :The backend was designed with Appwrite.
- **Front end** : React.js and CSS.
- **Back end** : AppWrite's backend services
- **DigitalOcean VPS**: Used to host Appwrite's instance 
- **Deployment**: Netlify.

#### Appwrite's Services used

#####1. Accounts for authentication
![Appwrite authentication service](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kas4tur5qhhr975096yf.png)

#####2. Database for data storage(permissions set for resource authorization)

![Appwrite database service](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/odmr1zgpnb39p1696ige.png)

##### Realtime Updates
![Appwrites realtime service](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l7xsmo978phhwr8vbwqo.png)


### Submission Category: 
 Web2 Wizards


### Link to Code
{% embed https://github.com/codewarsfx/Appwrite-Hackathon %}.


### Additional Resources / Info

#### Link to live demo
[Link](https://trackerappwrite.netlify.app/)

### Team members
[@codewarsfx](https://dev.to/codewarsfx)
[@dinma ](https://dev.to/dinma)
[@meetrhoda ](https://dev.to/meetrhoda)

screenshots
![on boarding](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g04q69itdltbu9p1nc20.png)

![sign up](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/by7n8b51h3bo8dq19tax.png)


![sign In](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nylni12weyckj1ihdw6j.png)


![overview](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5p2y5yegdsbnxdgjcr3m.png)


![applications](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ke8lz6wnpv1y1n0wae49.png)


![feed](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kukavw592iou7k1nnlcr.png)


![update](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wck1snylgyc4pbibewj3.png)
PNPM As Your Package Manager
Tags: npm, node, yarn, pnpm
Published: 2022-05-12 13:31:29

If you have been working with any node/javascript framework - be it React, Angular, Vue - there's an issue if you use **npm** or **yarn**.

It's something that happens in the background that you may not have noticed with every project you fire up - you **redownload** the packages in every instance.

What that means is that you end up having **duplicates** of the same packages in different folders on your machine.

I don't know about you, but I'm not okay with that...

## Why PNPM?
Instead of redownloading the packages again, **pnpm** creates a central store where the packages are kept. 

When you start up a new project, it checks if any of the packages required are already present on your system. If they are, it creates a reference to that store and doesn't redownload anything.

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">🟢Node.js Tip<br><br>Why store separate copies of packages if you can have a `single` referencable one?<br><br>That&#39;s the idea behind PNPM which makes it a performant, space-efficient, and faster alternative to NPM/Yarn.<br><br>Trust me, your hard disk will thank you for this weight loss exercise <a href="https://t.co/mltti8CFAX">pic.twitter.com/mltti8CFAX</a></p>&mdash; Hem (@HemSays) <a href="https://twitter.com/HemSays/status/1434921646083563525?ref_src=twsrc%5Etfw">September 6, 2021</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> 

---

## Conclusion
Because I cannot do PNPM justice. Let me direct you to their site where they will do a much better job than I can:

> ## [PNPM](https://pnpm.io/motivation)

---

###  Thank you for reading, let's connect!
Thank you for visiting this little corner of mine. Let's connect on [**Twitter**](https://twitter.com/Psypher1), [**Polywork**](https://www.polywork.com/psypher1) and [**LinkedIn**](https://www.linkedin.com/in/jamesmidzi/)
Topowars, a geogusser like game but in discord
Tags: appwritehack
Published: 2022-05-12 11:59:12




category:- Wacky Wildcards


### Link to Code
{% embed https://github.com/realhardik18/Topowars %}

this discord bot is inspired from the famous game called [geoguesser](https://www.geoguessr.com/)

here is what it can do!!

## make accounts in a data base
before you can play you have to make an account on the bot, this is very easy to do!!
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6njpoq5b8k4x3do58nz5.png)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/418ts3aqh3u8ey85dxz6.png)
it then makes an account!

## guess the country
in this game you have to guess which country is related to the image within 100 seconds! you get 100 points for every right answer!!
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dvwut956nl6qb8v2808s.png)

## guess which of cities are in the given country
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xcw8m28lk40hcf2hg3ps.png)
you get 50 points for each right answer!

## checking your score
to check your score, you can use the score command!
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wtwr98k81hqrpof92oaa.png)

note:- the bot and the appwrite server has been running locally, so you cant use the bot as of now sadly. If i get a positive response on this project, ill definitely host it so everyone can use it and add a LOT more features!
How To Connect WordPress Forms to Notion DB (Free)
Tags: webdev, tutorial, productivity, news
Published: 2022-05-12 13:30:21

WordPress is a great platform to create versatile forms such as Surveys, Polls, Quiz, Subscription, Feedback, and more. You can easily create different types of forms in WordPress.

There are many popular form plugins in WordPress that comes with a visual form builder interface. So you can quickly create forms and collect submissions from your site visitors.

Many WordPress users also have a Notion Workspace and would love to connect WordPress and Notion, to push WordPress Form entries to a Notion database. 

Notion users are looking for solutions to automatically save form responses to their Notion workspace. 

In this article, we will mention how you can connect WordPress Forms to Notion using a free tool. Also, we will mention other form tools that can be integrated with Notion and which one is best for your use case.

## How To Connect WordPress Forms To Notion Database

You can see the video tutorial of this integration below:

{% youtube zX2VCNmkuIA %}

To connect your WordPress forms and your Notion database, there is a Tablesome free plugin available in the WordPress repository that you can use.

Tablesome plugin that helps you store responses collected by your WordPress Form inside a Notion Table. You can automate adding form entries to Notion Tables using Tablesome.
You can connect Notion to popular WordPress Form plugins such as WPForms, Contact Form 7, Elementor Forms, and more.

### How To Setup WordPress Form To Notion Workflow

You can setup the Forms to Notion workflow in a few simple steps.

1. Create a New Integration in Notion
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j0yyq1m6lwzqi0o0xrrg.png)

2. Share the Notion page with the New 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ykiyv14q2otjzrdkqnv1.PNG)

3. Install & activate Tablesome plugin on your WordPress site
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gxuwbkzerliweuwbbti2.PNG)

4. Copy & paste the 'Internal Integration Token' (Notion API Key) to the WordPress site
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/viyd6h512tzwtkbn6q80.jpg)

5. Create a new workflow for Forms to Notion in Tablesome
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/klye09qnn0opt7s7j8y8.jpg)

6. Map the Form Fields to corresponding Notion Table columns
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/txi5dtycmmbzizv3tu9r.jpg)


If you have completed the steps mentioned you have successfully connected WordPress forms to Notion and your form responses would be saved to the Notion database.
What would be a good starting project on blockchain, web3?
Tags: web3, blockchain, dapps
Published: 2022-05-12 13:28:37

---
title: What would be a good starting project on blockchain, web3?
published: true
description: What would be a good starting project on blockchain, web3?
tags: web3,blockchain,dapps
cover_image: https://fiverr-res.cloudinary.com/images/t_main1,q_auto,f_auto,q_auto,f_auto/gigs2/210241120/original/09370d95fc7cfde7190683fa484f0ebcb592da45/integrate-web3-and-metamask-with-dapp.jpg
---
I was wondering what would be a good starting project that involves blockchain technology and Dapps?

Any kind of feedback is highly appreciated.

thanks.
OpenSSL a swiss army knife - part1
Tags: linux, devops, tutorial, bash
Published: 2022-05-12 13:22:47

If you ever needed to verify SSL/TLS connections or check certificate information. Then [openssl ](https://www.openssl.org/) is the answer...maybe.

> The openssl program provides a rich variety of commands

First a small walkthrough concerning some of file extensions that we might encounter.

```bash
CER (.cer) or CRT (.crt): certificate could be PEM or DER encoded, contains certificate owner information and public and private keys.
PEM (.pem): Base64 encoded form of DER certificate. Certificate and private key are stored in different files.
DER (.der): Binary form of PEM certificate used on Java platform. Certificate and private key are stored in different files.
PKCS7 (.p7b): ASCII code. Contains the certificate but not the private key.
PKCS12 (.pfx or .p12): Binary form used on Windows platforms. Contains certificate(s) private and public key. (it's password protected)
```

---

Going to the point, troubleshooting SSL/TLS connections and inspecting certificate:

```bash
# debug the SSL/TLS connection (view the  Handshake process)
openssl s_client -msg -debug -state -connect <host_ip>:<port>

# displays entire certificate chain in PEM format
openssl s_client -connect <host_ip>:<port> -showcerts

# check the TLS version: if you get the certificate chain and the handshake you know the system supports the TLS version in question
openssl s_client -connect <host_ip>:<port> -tls1
openssl s_client -connect <host_ip>:<port> -tls1_2
openssl s_client -connect <host_ip>:<port> -tls1_1

# check certificate expiration date 
openssl s_client -connect <hostname>:<PORT> -showcerts|openssl x509 -noout -dates

# display PEM certificate (cert.crt) content
openssl x509 -in cert.pem -noout -text
openssl x509 -in cert.crt -text
```
⚠️ Where [X.509](https://www.openssl.org/docs/man1.1.1/man1/x509.html) utility is a  standard format for public key certificates, digital documents that securely associate cryptographic key pairs with identities such as websites, individuals, or organizations.

OpenSSL is capable of doing much more, like generating `.csr` or converting from one format to another e.g. from `.crt` to `.pem`, but these subjects will be address in part 2.
C# Event Practices ''VideoConverter"
Tags: csharp, beginners, programming, dotnet
Published: 2022-05-12 13:13:48

`Program.cs`
```cs
using VideoConverter;

var bytes = System.Text.Encoding.ASCII.GetBytes("Hello world");

var convert = new VideoConvert(bytes);

convert.ConversionStarted += HandleConversionStarted;

convert.ConversionFinished += HandleConversionFinished;

await convert.ConvertAsync();

void HandleConversionFinished(object sender, ConversionFinishedEventArgs e)
{
    System.Console.WriteLine($"Finished : {e.ElapsedTime.TotalMilliseconds}");
    System.Console.WriteLine($"Conversion data : {System.Convert.ToBase64String(e.ByteVideo)}");

    // agar VideoConvert.cs da _bytes ni shunda hech narsa qilmasdan qaytarsak tekshirish imkonimiz bo'ladi

    System.Console.WriteLine($"Bytni Stringga pars qilamiz : {System.Text.Encoding.ASCII.GetString(e.ByteVideo)}");
}

void HandleConversionStarted(object sender, ConversionStartedEventArgs e)
{
    System.Console.WriteLine($"Conversion started : {e.StartTime:HH:mm:ss.fff}");
}
```

`VideoConvert.cs`

```cs
namespace VideoConverter;
public class VideoConvert
{
   private byte[] _bytes;
   public VideoConvert(byte[] bytes)
   {
       _bytes = bytes;
   } 

   public event EventHandler<ConversionStartedEventArgs> ConversionStarted;
   public event EventHandler<ConversionFinishedEventArgs> ConversionFinished;

   public async Task ConvertAsync()
   {
       var startTime = DateTime.Now;

       ConversionStarted?.Invoke(this, new ConversionStartedEventArgs(startTime));

       var convertedByte = new byte[_bytes.Length];

       await Task.Run(() =>
       {
           for(int i = 0; i < _bytes.Length; i++)
           {
               convertedByte[i] = (byte)(_bytes[i] * 10 % 255);
               Thread.Sleep(100);
           }
       });

       var finishTime = DateTime.Now;

       ConversionFinished?.Invoke(this, new ConversionFinishedEventArgs(finishTime - startTime, convertedByte));
   }
}
```

`ConversionStartedEventArgs.cs`

```cs
namespace VideoConverter;
public class ConversionStartedEventArgs : EventArgs
{
    public DateTime StartTime { get; set; }
    public ConversionStartedEventArgs(DateTime startTime)
    {
        StartTime = startTime;
    }
}
```

`ConversionFinishedEventArgs.cs`

```cs
namespace VideoConverter;
public class ConversionFinishedEventArgs : EventArgs
{
    public TimeSpan ElapsedTime { get; set;}
    public byte[] ByteVideo { get; set; }

    public ConversionFinishedEventArgs(TimeSpan elapsedTime, byte[] byteVideo)
    {
        ByteVideo = byteVideo;
        ElapsedTime = elapsedTime;
    }
}
```

`Result`

```cs
Conversion started : 18:05:18.906
Finished : 1215.91
Conversion data : 0vU8PFpBqlp4POs=
Bytni Stringga pars qilamiz : ??<<ZA?Zx<?
```
Cloudy- a storage service to store your files & folders
Tags: appwritehack, javascript, react, codenewbie
Published: 2022-05-12 13:09:18

### Overview of My Submission
**Cloudy** is a storage service that allows users to store their files & folders faster and securely. At Cloudy users can create folders and store their files smoothly. Cloudy is superfast at uploading your files, a user can upload multiple files at a time & It will take a very less amount of time compared to other services because of the [Appwrite](https://appwrite.io/) storage service.


### Submission Category: 

- Web2 Wizards


### Link to Code

Repo Link- [https://github.com/Gulshanaggarwal/Cloudy](https://github.com/Gulshanaggarwal/Cloudy)

### Features

- Superfast file uploading(multiple files included)

- Support file extensions- .jpg, .png, .gif, .txt, .pdf

- Easy File Preview

- File Download

- File Link Copy

- File & folder Delete(right click on a file or folder to delete)

### Tech-Stack

- NextJS

- Appwrite

- Firebase

- Material-UI

### We are already using Appwrite, then [Firebase](https://firebase.google.com/) 


![thinking](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yhsbn8puz3r3qaxc854y.gif)

We are using Appwrite's Login, SignIn & Storage services but for Database we preferred Firebase. The reason for choosing Firebase is the lack amount of support from Appwrite's database service, we have nested fields like the array of objects or deeply nested objects in our documents but Appwrite doesn't support these complex data structures. I opened a comment in the discussion thread regarding the problem, check it out here - [comment](https://dev.to/gulshanaggarwal/comment/1o3oh)


### Additional resources and info

**Screenshots**

- Dashboard page

![dashboard](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2otssqd33xbqr14u25el.png)

- Click on folder Icon(right side) for a new folder

![Folder_create](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/aasoyf16khv2o9wq4d3e.png)

- Files + Folders

![files_folders](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/illxv2io4bkw2b6hiaq7.png)

- Click on a file for preview
![file_preview](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/25jeyexq9g92dqv4b8tr.png)

- File Details

![file_details](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yruximop38n2wc7i7q88.png)

- Delete file & folder(click right button on a file or folder)


![delete_file_or_folder](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ja64zlm91jn5tuvoa77.png)

### Contributors
@gulshanaggarwal and @aniruddhasoni

-If you like the post, then don't forget like, comments & let's have some fun over the [Twitter](https://twitter.com/gulshanagg333)
C# Events
Tags: csharp, beginners, programming, dotnet
Published: 2022-05-12 13:02:47

`Program.cs`
```cs
using Events;

var alarm = new Alarm(1000);

alarm.OnAlarmRing += HandleOnAlarmEvent;
await alarm.Start();

void HandleOnAlarmEvent(object sender, AlarmEventArgs e)
{
    System.Console.WriteLine("Alarm Finished");
    System.Console.WriteLine($"Message : {e.Message}");
}
```

`Alarm.cs`

```cs
namespace Events
{
    public class AlarmEventArgs : EventArgs
    {
        public AlarmEventArgs(string message)
        {
            Message = message;
        }
        public string Message { get; set; }
    }
    // Biz EventArgs Ni o'zimiz majburlab boshqa type oladigan qildik xo'sh 
    // endi EventHandler ni Generik qilishimiz kerak
    public class Alarm
    {
        // Event elon qilish
        // public delegate void AlarmRingEvent();

        // public event AlarmRingEvent OnAlarmRing;

        public event EventHandler<AlarmEventArgs> OnAlarmRing;
        // ----------------------------------------------

        public int Time { get; set;}

        public Alarm(int time)
        {
            Time = time;
        }

        public async Task Start()
        {
            var now = DateTime.Now;

            await Task.Delay(Time);

            // OnAlarmRing?.Invoke();

            OnAlarmRing?.Invoke(this, new AlarmEventArgs($"Time is up : {DateTime.Now}"));
        }

    }
}

/*
EventArgs - Event bilan jo'natilishi kerak bo'lgan ma'lumotlarni Encapsulate qilib jo'natadi

EventArgs - ichida hech narsa yo'q Faqat Inheritance uchun ishlatiladi

object sender - Publish qilayotgan objectni o'zi

*/
```

`Result`
```cs
Alarm Finished
Message : Time is up : 5/12/2022 5:58:00 PM
```