teleren/devto huggingface dataset:
🚀10 Trending projects on GitHub for web developers - 4th December 2020
Tags: react, javascript, css, typescript
Published: 2020-12-04 15:35:58

Trending Projects is available as a weekly newsletter please sign up at [www.iainfreestone.com](https://www.iainfreestone.com) to ensure you never miss an issue.

### 1. Super Tiny Icons

Under 1KB each! Super Tiny Icons are miniscule SVG versions of your favourite website and app logos

{% github edent/SuperTinyIcons %}

---

### 2. Highlight.js

Highlight.js is a syntax highlighter written in JavaScript. It works in the browser as well as on the server. It works with pretty much any markup, doesn’t depend on any framework, and has automatic language detection.

{% github highlightjs/highlight.js %}

---

### 3. jsPDF

Client-side JavaScript PDF generation for everyone.

{% github MrRio/jsPDF %}

---

### 4. Cube.js

Cube.js is an open-source analytical API platform. It is primarily used to build internal business intelligence tools or add customer-facing analytics to existing applications.

{% github cube-js/cube.js %}

---

### 5. React Icons

Include popular icons in your React projects easily with react-icons, which utilizes ES6 imports that allows you to include only the icons that your project is using.

{% github react-icons/react-icons %}

---

### 6. You-need-to-know-css

CSS tricks for web developers

{% github l-hammer/You-need-to-know-css %}

---

### 7. use-editable

A small React hook to turn elements into fully renderable & editable content surfaces, like code editors, using contenteditable (and magic)

{% github kitten/use-editable %}

---

### 8. Atomic Layout

Atomic Layout is a spatial distribution library for React. It uses CSS Grid to define layout areas and render them as React components. This pattern encourages separation of elements and spacing, preventing contextual implementations and boosting maintenance of layouts.

{% github kettanaito/atomic-layout %}

---

### 9. remove.bg API wrapper for Node.js

The awesome remove.bg API is quite easy to use, but it can always be easier - that's where this package comes in.

{% github EddyVerbruggen/remove.bg %}

---

### 10. Front-End Checklist  

The perfect Front-End Checklist for modern websites and meticulous developers

{% github thedaviddias/Front-End-Checklist %}

---

Trending Projects is available as a weekly newsletter please sign up at [www.iainfreestone.com](https://www.iainfreestone.com) to ensure you never miss an issue.

If you enjoyed this article you can [follow me](https://twitter.com/iain_freestone) on Twitter where I regularly post bite size tips relating to HTML, CSS and JavaScript.
Increase the speed of your program by 1000000 times 🤯 by using this technique!
Tags: tutorial, python, algorithms, memoization
Published: 2020-12-04 15:19:41

Open a jupyter notebook to follow along. The following code blocks are cells in an `ipynb` notebook.

*Pre-requisites:*

You must know how to find the n-th term of the Fibonacci sequence using recursion.

# Fibonacci 

Link to [video](https://youtu.be/oBt53YbR9Kk?t=212).

![image](https://user-images.githubusercontent.com/66209958/101166313-190c6300-365e-11eb-9c8e-36b5f3452586.png)


```python
from timeit import timeit
```

Now lets first make the standard recursive function. 

![image](https://user-images.githubusercontent.com/66209958/101166903-09414e80-365f-11eb-85c9-53b4a278fcd9.png)


```python
def fibo(n: int) -> int:
    # without memoization
    if n <= 2:
        return 1
    return fibo(n-1) + fibo(n-2)
```


Now let's try to use **memoization**, that will reduce the time complexity to `n`.

![image](https://user-images.githubusercontent.com/66209958/101167180-85d42d00-365f-11eb-98cf-5655a06f70d0.png)



```python
def memo_fibo(n: int, memo: dict = {}) -> int:
    # with memoization
    if n in memo:
        return memo[n]
    if n <= 2:
        return 1
    memo[n] = memo_fibo(n-1, memo) + memo_fibo(n-2, memo)
    return memo[n]
```

Let us set a value of `n` (the term of the Fibonacci sequence we want to find )

```python
n = 40
```

Let us execute the normal way. (Here I have used a [magic command of Jupyter Notebook](https://ipython.readthedocs.io/en/stable/interactive/magics.html#magic-timeit), to find the execution time)

```python
%%timeit -n 1 -r 10
fibo(n)
```

    33.4 s ± 257 ms per loop (mean ± std. dev. of 10 runs, 1 loop each)


Now let us execute the function that used the memo.

```python
%%timeit -n 1 -r 10
memo_fibo(n)
```

    The slowest run took 86.52 times longer than the fastest. This could mean that an intermediate result is being cached.
    3.6 µs ± 9.59 µs per loop (mean ± std. dev. of 10 runs, 1 loop each)

The difference is stark. From `33.4 s` to `3.6 µs`.

Thus you see, how using memoization brings in a huge difference in time of execution.


The name 'Fibonacci' is due to a 13th-century Italian mathematician Leonardo of Pisa, who later came to be known as Fibonacci.

However, what we popularly call 'Fibonacci numbers' find their earliest mention in the 2nd century BCE work of Indian thinker *Acharya Pingala*.
"Escaping" Next.js to access the browser
Tags: nextjs, react, gatsby, blogvent
Published: 2020-12-04 20:09:56

---
title: "Escaping" Next.js to access the browser
published: true
date: 2020-12-04 15:00:00 UTC
tags: nextjs, react, gatsby, blogvent
canonical_url: https://www.netlify.com/blog/2020/12/04/escaping-next.js-to-access-the-browser/
---

Welcome to [Blogvent](https://www.netlify.com/tags/blogvent/), day 4!

Often when you are trying to add event listeners or DOM variables outside of a Next.js application, you’ll get a particularly unhelpful error:

```
ReferenceError: window is not defined
```

To get around this, you can use the React hook, `useEffect`! There’s a couple options depending on what you need.

If you just need to access the window, you can use `useEffect` by itself, in something like this:

```js
import { useEffect } from 'react'

function Page() {
  useEffect(() => {
    // use/set the window variable in here
  })
  ...
}
```

And if you need to get an object in the browser (a DOM node or something) outside of Next.js, and render something into it, you can combine `useEffect` with `useRef`!

```jsx
import ReactDOM from 'react-dom';
import { useRef, useEffect } from 'react'

function Page() {
  let ref = useRef()

  useEffect(() => {
    ReactDOM.render(<OtherThing/> ref.current);
  }, [])

  return <div ref={ref}/>
}
```

## I can’t think of a use case for this!

That’s okay! It’s something that comes up for very specific cases of “escaping” Next.js (or even Gatsby or vanilla React projects), for example using event listeners, using external JavaScript libraries, or adding certain animations. If you’d like to see an example in a real codebase, [check out this part of the Activity Graph](https://github.com/netlify/explorers/blob/main/src/components/UserActivityGraph.js#L25-L34) in Jamstack Explorers.

Speaking of which, if you’d like to learn more about Next.js, check out the course (with more to come) on [Jamstack Explorers](https://explorers.netlify.com/learn/nextjs?utm_source=blog&utm_medium=nextmission-cs&utm_campaign=devex)!
Painless Android app debugging on Chrome OS devices
Tags: android, chromeos, programming
Published: 2020-12-04 14:53:03

There have been countless articles about debugging an Android app on a Chrome OS device, so you will probably be asking why bother with yet another one. In this very short piece I present the fistful steps to deploy and debug an app on my Lenovo Duet.

First you need to activate Linux Beta and ADB Debugging. Here is how the settings look like once this has been done:

![Enable Linux Beta and ADB Debugging](https://dev-to-uploads.s3.amazonaws.com/i/puql1g7hncniuf5g2b93.png)

This of course is done once. The remaining steps need to be executed each time you want to debug an Android app. First, please obtain the ip address of your Chrome OS device. To do so, open the Chrome Shell by pressing **alt strg t** and then type `network_diag --dhcp`.

![The Chrome OS Shell](https://dev-to-uploads.s3.amazonaws.com/i/t6kiets17riyuka4dvb6.png)

You want the **Leased address**, in my example `192.168.178.29`. Pass that address to `adb connect` on your developer machine. After that you will see your device in Android Studio.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/m5wockjuw9ddnls59wp8.png)

Please note that you may need to grant permission to connect on the Chrome OS device, just like you would need to on an Android device.
Best way to deploy python telegram bot to Heroku! (Save money 💸 using webhooks)
Tags: python, heroku, telegram, tutorial
Published: 2020-12-04 14:50:51

# [webhook-aiogram-heroku](https://github.com/aahnik/webhook-aiogram-heroku)


A simple [telegram echo bot](https://github.com/aahnik/webhook-aiogram-heroku) is first made with [`aiogram`](https://github.com/aiogram/aiogram), that fetches updates using web-hook connection.

## Deploy

This bot can be easily deployed to [Heroku](https://heroku.com/) cloud platform.

The following steps assume that you have **Heroku CLI** installed in your system.

1. Clone the repo and move into the project directory.

```shell
git clone https://github.com/aahnik/webhook-aiogram-heroku.git
cd webhook-aiogram-heroku
```

2. Create a new Heroku app.

```shell
heroku create
```

3. Set the Config Vars.

<details>


| Config Var | Description |
| -- | -- |
|`HEROKU_APP_NAME` | name of your Heroku app. You may set it manually or [turn on Dyno Metadata feature](https://devcenter.heroku.com/articles/dyno-metadata) which is currently in Heroku Labs.|
| `BOT_TOKEN` | the token for your bot given by [@BotFather](https://telegram.me/BotFather) after bot creation.|

</details>

```shell
heroku labs:enable runtime-dyno-metadata
heroku config:set BOT_TOKEN=<your token>
```

4. Push the code to Heroku.

```shell
git push heroku main
```

## Cheers

To confirm your bot is working:

- Run `heroku ps` which will show you details of your dyno.

```shell
=== web (Free): python start.py (1)
web.1: up
```

- Send a message to your bot, and your bot will echo it back to you.

**The bot will go to sleep after 30 minutes of inactivity. So you save dyno hours in Heroku.**

[![Generic badge](https://img.shields.io/badge/works-yes-<COLOR>.svg)](https://aahnik.github.io)
[![ MIT license](https://img.shields.io/pypi/l/ansicolortags.svg)](https://aahnik.github.io/)
[![telegram-chat](https://img.shields.io/badge/chat-@aahnikdaw-blue?logo=telegram)](https://telegram.me/aahnikdaw)
EB Daily - 04 Dec 2020
Tags: ebdaily, startupnews, latesttechnews, fundingnews
Published: 2020-12-04 17:06:55

---
title: EB Daily - 04 Dec 2020
published: true
date: 2020-12-04 14:47:06 UTC
tags: ebdaily,startupnews,latesttechnews,fundingnews
canonical_url: https://www.explorebit.io/article/EB%20Daily%20-%2004%20Dec%202020
---

EB Daily is a daily newsletter focused on the Technology and Startup ecosystem. The Newsletter is published daily at 8 AM PT and covers all important news related to technology and the startup ecosystem from across the globe. The newsletter is divided in four sections. First three sections provide funding news from AMER, EMEA and APAC regions. Whereas, the last sections incorporate global news on M&A, Acquisition, Exists, New fund launch etc.
Scale Raises USD 600M Fund
Tags: maexitsandothers, scale
Published: 2020-12-04 17:10:37

---
title: Scale Raises USD 600M Fund
published: true
date: 2020-12-04 14:44:25 UTC
tags: MAExitsandOthers,Scale
canonical_url: https://www.explorebit.io/article/Scale%20Raises%20USD%20600M%20Fund
---

Silicon Valley-based venture firm Scale Venture Partners announced it has closed the USD 600 million Scale Venture Partners Fund VII.
What is Gatsby.js ??
Tags: codenewbie, cloud, programming, productivity
Published: 2020-12-04 14:42:34

GatsbyJs is React-based and GraphQL powered. It is like a front-end tool that has the best features of front-end frameworks in a very enjoyable developer experience. It is a cloud-based company like netlify, etc. It helps you make a front-end website at the cost of zero in just a few minutes and also you can add your code and if you want more features then it has more plans. It is a plugin that is connected to many websites like WordPress, Sanity, etc.  Some Great points about GatsbyJS : 

 1. You can see all logs, Errors, Warnings, and also raw logs of your website.

 2. It has four different and flexible types of plans: 

   a. Individual plan - 19$ / per month 
   b. Team plan for organizations - 99$/ per month
   c. Custom plans which are designed for the specific type of need a company need - Custom prices
   d. Free plan - Absolutely free 

3. GatsbyJS is also an open-source organization.

4. GatsbyJs has its API like GatsbyJS themes, Node.js API, etc.

GatsbyJS is a perfect organization for developing websites in the cloud and in just a few minutes you can make perfect websites with the help of their themes.
DebugsBunny Raised INR 1.4 Cr. Angel Funding
Tags: fundingapac, debugsbunny
Published: 2020-12-04 17:50:13

---
title: DebugsBunny Raised INR 1.4 Cr. Angel Funding
published: true
date: 2020-12-04 14:38:35 UTC
tags: FundingAPAC,DebugsBunny
canonical_url: https://www.explorebit.io/article/DebugsBunny%20Raised%20INR%201.4%20Cr.%20Angel%20Funding
---

DebugsBunny, the Edu-tech startup, that is making online coding classes accessible and affordable for students across age groups, today announced that it has completed a INR 1.4 Cr. angel round of financing. India Angel Fund led the investment round with participation from some individual angel investors too.
FA Match Announces USD 1M Pre-Seed Funding
Tags: fundingamer, famatch
Published: 2020-12-04 17:50:20

---
title: FA Match Announces USD 1M Pre-Seed Funding
published: true
date: 2020-12-04 14:36:49 UTC
tags: FundingAMER,FAMatch
canonical_url: https://www.explorebit.io/article/FA%20Match%20Announces%20USD%201M%20Pre-Seed%20Funding
---

FA Match, the wealth management industry’s only data-driven solution for advisor recruiting, today announced a USD 1M pre-seed funding round. The round includes investments from Ron Carson of Carson Group, Jason Wenk, founder of FormulaFolios and Altruist, Brian McLaughlin of Redtail Technology, and Steve Lockshin of AdvicePeriod and Vanilla.
Skygauge Closes CAD 3.3 Million Seed
Tags: fundingamer, skygauge
Published: 2020-12-04 17:50:27

---
title: Skygauge Closes CAD 3.3 Million Seed
published: true
date: 2020-12-04 14:35:37 UTC
tags: FundingAMER,Skygauge
canonical_url: https://www.explorebit.io/article/Skygauge%20Closes%20CAD%203.3%20Million%20Seed
---

Skygauge Robotics has closed a CAD 3.3 million seed round and the Toronto and Hamilton-based drone startup is immediately scaling up its hiring in response to increased demand during the COVID-19 pandemic.
The Skills Announces USD 5M Seed Round
Tags: fundingamer, theskills
Published: 2020-12-04 17:50:33

---
title: The Skills Announces USD 5M Seed Round
published: true
date: 2020-12-04 14:34:14 UTC
tags: FundingAMER,TheSkills
canonical_url: https://www.explorebit.io/article/The%20Skills%20Announces%20USD%205M%20Seed%20Round
---

The Skills, the only online education platform to focus exclusively on education taught by icons of professional sport, today announced a USD 5 million seed round and two new courses from World Champion and 23-time gold medalist Michael Phelps and two-time World Cup Champion and gold medalist Megan Rapinoe.
Flock Freight in its USD 113.5 million Series C
Tags: fundingamer, flockfreight
Published: 2020-12-04 17:51:06

---
title: Flock Freight in its USD 113.5 million Series C
published: true
date: 2020-12-04 14:32:59 UTC
tags: FundingAMER,FlockFreight
canonical_url: https://www.explorebit.io/article/Flock%20Freight%20in%20its%20USD%20113.5%20million%20Series%20C
---

DLA Piper represented Flock Freight, a San Diego-based digital logistics provider that offers a shared truckload shipping solution for businesses, in its recent USD 113.5 million Series C financing led by Softbank Vision Fund 2, with participation from existing investors SignalFire, GLP Capital Partners, and GV, as well as a new minority investment by strategic partner Volvo Group Venture Capital.
Fakespot gets USD 4 m in Series-A
Tags: fundingamer, fakespot
Published: 2020-12-04 17:51:14

---
title: Fakespot gets USD 4 m in Series-A
published: true
date: 2020-12-04 14:31:53 UTC
tags: FundingAMER,Fakespot
canonical_url: https://www.explorebit.io/article/Fakespot%20gets%20USD%204%20m%20in%20Series-A
---

Fakespot, a US-based start-up backed by Hyderabad and Philadelphia-based Sri Capital has raised USD 4 million in Series-A from Bullpen Capital.
Solidus & Subscriptions: Adventures of a Publisher Trying to Disrupt Itself
Tags: rails, ruby, ecommerce, solidus
Published: 2020-12-04 14:30:54

{% youtube p1jnBbJgFGI %}

Rob Johnson of Deseret Book goes through why subscriptions are important, and some of the finer details behind the business logic.

"Solidus & Subscriptions"
Subscriptions have become increasingly popular due to the financial stability they produce for businesses and investors. Done right, subscriptions deliver great value for customers with draws such as unlimited access, original product and deep discounting that can often lead to increased brand affinity and lifetime value. We'll review a 2.5 year timeline of the impact subscriptions have had for a Publisher and Retailer using Solidus. We'll cover learnings around acquisition and retention, subscription usage trends, customer survey insights, upgrade experiences and the importance of empowering the customer.
What is the best free website platform for monetization?
Tags: monetization, videocontent, youtube, freeservice
Published: 2020-12-04 14:29:36

If you have chosen to create a blog, then Youtube is certainly one of the best places for beginners, through the possibility of organic growth. However, you can earn money not only through the standard monetization on YouTube. Now Connected TV is becoming more and more popular, which creates new horizons for blogs and digitized products. Cooperation with Vlogbox will allow you to get both additional profits and viewers, delivering precisely targeted video ads to OTT/CTV audiences and bringing high monetization yields to content creators. This article also could be useful, if you’re interested in maximizing your profit.
Read to know more about some other useful monetizing platforms https://vlogbox.com/how-to-make-money-beyond-youtube-5-viable-platforms-to-maximize-your-reach/.
Make paid access to content. Another way to monetize the site is to sell access to the site. For this method to work, your site must have really valuable information for the user, such as digital photos, e-books, desktop screensavers, articles, research reports, etc. Many sites have paid access.
Hope you will find this information interesting for you. Feel free to ask any questions!
BioAge raises USD 90 million in series C round
Tags: fundingamer, bioage
Published: 2020-12-04 17:52:42

---
title: BioAge raises USD 90 million in series C round
published: true
date: 2020-12-04 14:22:33 UTC
tags: FundingAMER,BioAge
canonical_url: https://www.explorebit.io/article/BioAge%20raises%20USD%2090%20million%20in%20series%20C%20round
---

Age-related disease specialist BioAge Labs has raised USD 90 million in a series C financing round co-led by Andreessen Horowitz and including new investors Kaiser Foundation Hospitals, AARP Foundation and Phi-X Capital.
Hactoberfest badge
Tags: hacktoberfest, hacktoberfestbadge, badge, opensource
Published: 2020-12-04 13:57:16

Hi i am Atul ,
I got my hactoberfest badge as i participated in hacktober fest 2020, if you missed hacktoberfest this year don't worry it is conducted every year with collaboration of digital ocean and many other companies like dev , intel inorder to incresase or give more exposure to open source contribution !
FiscalNote Secures USD 160 Million
Tags: fundingamer, fiscalnote
Published: 2020-12-04 17:53:36

---
title: FiscalNote Secures USD 160 Million
published: true
date: 2020-12-04 14:20:33 UTC
tags: FundingAMER,FiscalNote
canonical_url: https://www.explorebit.io/article/FiscalNote%20Secures%20USD%20160%20Million
---

FiscalNote, a global technology company that provides software and political intelligence around legislative and regulatory risk, announced that it has secured USD 160 million in growth capital and debt financing led by Arrowroot Capital and Runway Growth Capital.
Slow and Steady with Redux
Tags: devjournal, react, redux
Published: 2020-12-04 14:19:49

_This post was originally published on December 4, 2020 on my blog._

Hi friends! I'm back after a bit of a delay (I need to get back on that daily-posting - or at least almost-daily-posting - wagon!)

I've been steadily making my way through my Pure Redux course, and it's been really interesting making connections with state management patterns, etc.

(I'm also low-key very excited to see how the useReducer hook relates to Redux and actually be able to *fully* understand how that all works together).

Today, as part of the course, I created a little weather app that makes use of Redux thunk in order to make an API call to the MetaWeather API.

I'll probably fully launch it next week once it's all pretty and styled.

Big things coming! Cheers!


--------------

P.S. I'm searching for my next role as a Front-End Web Developer! If you have any leads, please let me know! 

My current tech stack: JavaScript ES6, React/Hooks, Redux, Firebase Firestore, Firebase Authentication, HTML/CSS, Git

[Portfolio](https://alexlsalt.github.io/) // [LinkedIn](https://www.linkedin.com/in/alex-morton-creative/) // [GitHub](https://github.com/alexlsalt)
Jamstack 101 eBook
Tags: jamstack, gatsby, javascript, react
Published: 2020-12-04 13:59:29

What exactly is Jamstack? As a developer, you've probably heard and seen this term used in the dev community.


Jamstack is the modern way to build fast and accessible websites for everyone! We at [Ikius](https://ikius.com) and [Agility CMS](https://agilitycms.com) wrote an extensive guide about Jamstack - [Download it](https://ikius.com/jamstack-ebook), read it and learn why Jamstack will make you a better developer.

##Learn Jamstack

Learn the basics of Jamstack and why it's a great choice for your next web project.