teleren/devto huggingface dataset:
Revolutionizing the CMS
Tags: cms, flat, file, static
Published: 2019-06-25 20:29:59

---
title: Revolutionizing the CMS
published: true
description: I think it's time for something new when it comes to web development and content management.
tags: cms, flat, file, static
---

When you look at the CMS today, most if not all, follow the traditional concept of theme and plugin development. There is no such thing as the perfect CMS, hence the reason for plugins to exist, providing a level of customizing ability to fulfill ones needs.

So then what differentiates one CMS from another? Well, there are certain features that are usually highlighted, along with the type of CMS, such as database driven, flat file, static, and so on. However, I find myself coming back to the same question. Conceptionally, what is the difference?

I concluded, there is no difference. Sure, functionality may be different. The process in which data/content is stored and delivered may be different. Whichever the case may be, it all falls back to theme and plugins.

As a developer, I think of time spent “recreating the wheel.” It's easy when you yourself have a library of code that you can continuously copy with minor tweaks to complete a project. However, you will always cross a point where you simply don't have it and start searching online for free open source libraries in which you retro fit into your project. This is essentially every developer.

This had me thinking since the days of me creating [SumCMS](http://sumcms.recamedia.com/) and [BKDR](https://recamedia.github.io/Backdoor/), what would make a great CMS from a development and user perspective? Today I believe I have, **not THE answer**, but **an answer** that can solve a wish list of common ground interest from most web developers.

### The Wish List

- It does not use “themes” as what is known today.
- It does not use “plugins”.
- It should be modular and interchangeable with other sites.
- It should allow you to essentially create the features needed rather than waiting for the feature to be implemented.

Interested in what it is? Well... I'm about 60% completed with my MVP for public release, but I've been really excited to share what I have thus far. So instead of releasing a half baked project, I decided to create a subscription list so you can signup and get update-to-date info on features before the actual release.

Introducing **JayDMS**, a JSON based Development Management System. I look forward to creating a community behind this project, because I truly believe this is a fresh new look on web development. Thanks for your interest and taking the time to read this, and hopefully signup.
What exactly are React props?
Tags: react, props, flatiron, javascript
Published: 2019-06-25 20:25:16

Before delving too deeply into React, I'm forcing myself to take the time to understand the most basic React concepts. This short blog post will attempt to clearly summarize the concept of <b>props</b> in a way that the newest of programming students can understand.


So what are props?

####To put it simply:
Props (short for properties) are the arguments you pass into a React component that then render a React element.

Props can be strings, objects, arrays or functions. Props get passed into React components 

```javascript

class Hello extends Component {
  render() {
    return <h1>Hi, {this.props.name}</h1>
  }
}

```

Seems simple, right? 

By default, "props" is available through the `this` keyword of your component. They are also able to be passed between your components, generally from parent to child.


Checkout this blog post for a few [different examples of props](https://blog.bitsrc.io/understanding-render-props-in-react-1edde5921314).
GatsbyJS - TailwindPlay a blazing fast Tailwind Starter
Tags: gatsby, serverless, appseed
Published: 2019-06-25 20:12:36

---
title: GatsbyJS - TailwindPlay a blazing fast Tailwind Starter
published: true
description: Simple landing page styled with Tailwind CSS and generated by GatsbyJS
cover_image: https://raw.githubusercontent.com/app-generator/static/master/gatsbyjs-starter-tailwindplay/gatsbyjs-starter-tailwindplay-cover.jpg
tags: gatsby, serverless, appseed
---

Hello Coders, 

## Why [GatsbyJS](https://www.gatsbyjs.org/)?

35k [Github Stars](https://github.com/gatsbyjs/gatsby), React based, Nice Tooling, [Starters](https://www.gatsbyjs.org/starters/?v=2) for almost anything, comprehensive [docs](https://www.gatsbyjs.org/docs/)

## Why [Tailwind](https://tailwindcss.com/)?
Low-level [CSS framework](https://tailwindcss.com/#what-is-tailwind). 12k [Github Stars](https://github.com/tailwindcss/tailwindcss). Tailwind provides low-level utility classes that let you build completely custom designs without ever leaving your HTML. 

## Why both?

![GatsbyJS - TailwindPlay, a Tailwind Starter](https://raw.githubusercontent.com/app-generator/static/master/gatsbyjs-starter-tailwindplay/gatsbyjs-starter-tailwindplay-speed.gif)


## TailwindPlay
 
 - [Gatsby Starter Tailwind source Code](https://github.com/app-generator/gatsbyjs-starter-tailwindplay)
 - [Gatsby Starter Tailwind demo](https://gatsbyjs-starter-tailwindplay.appseed.us/)

![GatsbyJS Tailwind Starter - Gig animated presentation.](https://raw.githubusercontent.com/app-generator/static/master/gatsbyjs-starter-tailwindplay/gatsbyjs-starter-tailwindplay-intro.gif)

### Resources
 - [GatsbyJS Apps](https://appseed.us/apps/gatsbyjs) - index provided by AppSeed
 - [GatsbyJS Themes](https://blog.appseed.us/gatsbyjs-themes-crafted-by-html5up-lekoarts-creativetim/) - Crafted by HTM5Up, LekoArts, Creative-Tim  

**Thank You!**
Boilerplate for Chrome new-tab-override extension 🎊
Tags: javascript, react, parcel
Published: 2019-06-25 19:30:30

I created a boilerplate for a Chrome new-tab-override extension.
Remove the burden of the setup and start developing. More on 
[github](https://github.com/barhoring/chrome-new-tab-override-boilerplate)
If you like it I'd appreciate your starts ⭐
Need help by moving a Webapp from Azure to NAS
Tags: help, dotnet, iis
Published: 2019-06-25 19:12:04

---
title: Need help by moving a Webapp from Azure to NAS
published: true
tags: help, dotnet, iis
---
Hello developers,
I created a Website with ASP .NET Core and its source code is placed there: https://github.com/saigkill/saschamannsde

8 Month have run it in Azure as Webservice. Now i would like to move that Webapp to my NAS. I prepared there a Virtual System based on Windows Server 2019 Essentials and placed the hosting package there, who depends my .NET Core version. With the last commit i tried out, to prepare it for the Usage in my NAS by configuring the Kestrel.

Also i prepared IIS and WebDeploy on the target system. The build and deploy process works as expected. But a http://localhost:5000/ doesn't show any deployment.

Maybe anyone has done such task already and can have a look (maybe via TeamViewer)?

Greetings Sascha
Introducing Learn Identity!
Tags: identitymanagement, idaas, authentication
Published: 2019-06-25 18:35:04

---
title: Introducing Learn Identity!
published: true
description: 4 hours of video classes on identity, architecture, and standards.
tags: #identitymanagement #IDaaS #authentication
canonical_url: https://auth0.com/blog/learn-identity-concepts-video-lectures-auth0-onboarding/
---
Tired of wrestling with remote controls and on-screen TV keyboards to enter credentials on your smart TV? You’ve dealt with it too many times, and you can bet your customers have to. What if you could help them get logged in with just a few taps on their cell phone?

Hi, Dan from Auth0 here bringing you the OAuth 2.0 Device Flow: a fast, easy, and safe way to log into apps on your Smart TV and other input-constrained devices. No keyboard? No browser? No problem!

Ordinary login can be tedious and error-heavy. The OAuth 2.0 Device Flow is lightweight, authenticates you in seconds and not only works with TVs, but also with game consoles, CLIs, printers, and much more!

Auth0 offers developers a fully compliant implementation of the OAuth 2.0 Device Flow to tackle this user experience pain point easily. Let’s learn more about what input-constrained devices are, how this authorization grant works, and how Auth0 can help.

[Continue Reading 📖](https://auth0.com/blog/learn-identity-concepts-video-lectures-auth0-onboarding/?utm_source=twitter&utm_medium=sc&utm_campaign=idweek_01)
OAuth 2.0 Device Flow, No Hassle Authentication - As Seen On TV
Tags: oauth2, identitymanagement
Published: 2019-06-25 18:17:27

---
title: OAuth 2.0 Device Flow, No Hassle Authentication - As Seen On TV
published: true
description: Learn how the OAuth 2.0 Device Flow offers smooth authentication and authorization to limited-input devices.
tags: #oauth2 #identitymanagement
canonical_url: https://auth0.com/blog/oauth-device-flow-no-hassle-authentication-as-seen-on-tv/
---
Tired of wrestling with remote controls and on-screen TV keyboards to enter credentials on your smart TV? You’ve dealt with it too many times, and you can bet your customers have to. What if you could help them get logged in with just a few taps on their cell phone?

Hi, Dan from Auth0 here bringing you the OAuth 2.0 Device Flow: a fast, easy, and safe way to log into apps on your Smart TV and other input-constrained devices. No keyboard? No browser? No problem!

Ordinary login can be tedious and error-heavy. The OAuth 2.0 Device Flow is lightweight, authenticates you in seconds and not only works with TVs, but also with game consoles, CLIs, printers, and much more!

Auth0 offers developers a fully compliant implementation of the OAuth 2.0 Device Flow to tackle this user experience pain point easily. Let’s learn more about what input-constrained devices are, how this authorization grant works, and how Auth0 can help.

[Continue Reading 📖](https://auth0.com/blog/oauth-device-flow-no-hassle-authentication-as-seen-on-tv/?utm_source=twitter&utm_medium=sc&utm_campaign=df-announcement)
Introducing the New Universal Login Experience
Tags: identitymanagement
Published: 2019-06-25 18:15:24

---
title: Introducing the New Universal Login Experience
published: true
description: Simplify your user experience with our new design, reimagined login flows, and quick-loading pages
tags: #identitymanagement
canonical_url: https://auth0.com/blog/introducing-the-new-auth0-universal-login-experience/
---
Auth0's new Universal Login experience — including reimagined login flows, with a fresh UX design, and lightweight pages — is now generally available. Here is everything you need to know about this release.

First, What is Universal Login?
Universal Login authenticates users via a central authorization server. This contrasts with an embedded login flow, which relies on JavaScript libraries to perform authentication via cross-origin request. (You can find a more detailed explanation of universal vs. embedded login here.)

Universal Login benefits include:

Simplified user experience
Streamlined app integration
Improved administration
Increased authentication security, especially with 3rd party integrations and mobile apps


[Continue Reading 📖](https://auth0.com/blog/introducing-the-new-auth0-universal-login-experience/?utm_source=dev&utm_medium=sc&utm_campaign=auth0-ul)
Not being able to run a React Native or Cordova project after 17th of July, because of AndroidX and Google Play Services
Tags: reactnative, android, javascript, react
Published: 2019-06-25 18:14:50

After the [17th of July update to the Google Play Services]( https://developers.google.com/android/guides/releases#june_17_2019), some of you who've cleaned up your React Native Android project before a build, might have encountered an error similar to this
```
Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
        is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
        Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:52:5-309:19 to override.
```

For normal Android applications, the solution is just [migrating to AndroidX](https://developer.android.com/jetpack/androidx/migrate) and whatever isn't using AndroidX, Gradle deals with converting the import statements on build time by using **Jetifier**. But Gradle's **Jetifier** only works on already packaged Android modules. **It doesn't work on native React Native modules** that bring their full native source code projects intact, and are compiled when you start your React Native app.

For those cases, the solution is:
1. Install [this package](https://www.npmjs.com/package/jetifier) and follow its instructions. If your project still doesn't start after that, follow the extra steps below...
2. Go to your `android/app/build.gradle` file, and exchange all dependencies that are inside the Arctifact Mappings section in the [AndroidX Migration guide](https://developer.android.com/jetpack/androidx/migrate) with the new AndroidX build artifact paths.
3. Go to your own native code inside `android/app/src` and do the same with the import statements refering to the Old build artifacts
4. Run your app again.
5. Comment this post :D

Good luck. BTW, first article here on DEV.TO
Does anyone know of an accessible vue component library?
Tags: discuss, vue, a11y, webdev
Published: 2019-06-25 18:06:05

Does anyone know of a Vue component library/collection that are easy to style and built with accessibility in mind? I know you can pick just parts of Vuetify, but you're still stuck with the chance that their base styles will interfere with other styles you may use. Ideally, something like Reach UI except for Vue would be great, but I kind of assume that is a White Whale at this point.
Top 5 DEV Comments from the Past Week
Tags: bestofdev
Published: 2019-06-25 17:54:50

---
title: Top 5 DEV Comments from the Past Week
published: true
description: Highlighting some of the best DEV comments from the past week.
tags: bestofdev
cover_image: https://res.cloudinary.com/practicaldev/image/fetch/s--7VrAA2ln--/c_imagga_scale,f_auto,fl_progressive,h_420,q_auto,w_1000/https://thepracticaldev.s3.amazonaws.com/i/qmb5wkoeywj06pd7p8ku.png
---

This is a weekly roundup of awesome DEV comments that you may have missed.  You are welcome and encouraged to boost posts and comments yourself using the **[#bestofdev](/t/bestofdev)** tag.

The **[Why I don't use web components](https://dev.to/richharris/why-i-don-t-use-web-components-2cia)** article certainly sparked a lot of passionate discussion and replies.  At the top of the thread was this (respectful) rebuttal from @equinusocio:
{% devcomment c5j0 %}

Replying to the news that **[Some US prisons are banning books on coding](https://dev.to/ben/some-us-prisons-are-banning-books-on-coding-54jg)** @joelnet talks about the very dark motivations in the prison system:
{% devcomment c7ec %}

**[How important are math skills for software development?](https://dev.to/ben/how-important-are-math-skills-for-software-development-347n)**  @rpalo offers some insight:
{% devcomment c4h9 %}

This is a relatable feeling and question.  **[What do you do if you're in the middle of a project and you realize it already exists in the world?](https://dev.to/ben/what-do-you-do-if-you-re-in-the-middle-of-a-project-and-you-realize-it-already-exists-in-the-world-35o7)**  @nektro shares some wisdom about the value of different perspectives coming at a similar project:
{% devcomment c3h2 %}

@jaakidup talks about the impact of frequent changes to frameworks in **[VueJS is dead, long live VueJS!](https://dev.to/stefandorresteijn/vuejs-is-dead-long-live-vuejs-1g7f)**:
{% devcomment c788 %}

See you next week for more great comments ✌
React - Pizza Order System (animation)
Tags: javascript, react, webdew
Published: 2019-06-25 16:58:39

Hello to everyone...
The other day on the udemy website I saw a hamburger ordering system similar to this on a react course. I thought the pizza ordering system should also be available if you have a hamburger ordering system. And I started coding. Due to the density of the new finish. Everything else works except the buttons in the modal box.

To review the codes: https://github.com/Furkan-Gulsen/ReactJS-Projects/tree/master/React%20-%20Pizza%20Order%20System
What tools have you built?
Tags: discuss, productivity
Published: 2019-06-25 16:39:51

This is sort of a follow up to this post:
{% link https://dev.to/ben/invest-in-building-custom-tools-3430 %}

I am curious to what tools people have built that you use either locally or in production that helps you be more efficient. From automating, to building, code generation, scheduling/reminders, or anything else.

Even if you never released it (you should!) I would be interested in knowing what non well-known tools people have made to make their own developer lives easier
Async & Await, finally we have the multi-thread in javascript?
Tags: javascript, ecmascript, typescript, async
Published: 2019-06-25 16:36:26

With the new features of ES5 we can build async functions quickly.

Spoiler: Unfortunately, by the language design, the `async` and `await` keywords on JS functions actually don't allow us to do tasks at the same time with multi-threads like the name sound's, actually is the opposite, so we are able to resolve a task and then go to another task. Is more to a Synchronous way.

Let's code!!

First we need to create the function that we need to `wait` for, this function will check if the number is odd or even, here we can have many possibilities, the point here is to have a Promise function, like we have in the http requests, that wait's for a response from the API.

```ts
const isOdd = (value) => {
  return new Promise((resolve, reject) => {
    const isOdd = value % 2 !== 0;

    (isOdd)
      ? resolve(`the number ${value} is odd`)
      : reject(`the number ${value} is even`);
  });
} 
```

At the traditional way, the 'Promise' will be executed, and we get the 'response' value from the `Promise` by using the 'then' method, imagine that can turn in a infinite cascade if we have a `Promise` that return's a new `Promise`.

```ts
const allNumbersAreOdd = (number1, number2) => {
  isOdd(number1).then(response => {
    isOdd(number2).then(response => {
      console.log('all numbers are odd');
    }).catch(error => {
      console.log(error);
    });
  }).catch(error => {
    console.log(error);
  });
}
``` 
So doing maintenance can be hard, depending on the size of the code.

```ts
allNumbersAreOdd(1, 2); // "the number 2 is even"
allNumbersAreOdd(1, 1); // "all numbers are odd"
```

Using the async feature, we are able to add the keyword `await` in front of the `async` functions ( a http request for example or the promise that we create above which is `async` ), and that allow us to wait for the response of the function before proceed, and using that along with the `try & catch` we can do the error treatment easily.

```ts
async const numberIsOdd = (number) => {
  try {
    const numberIsOdd = await isOdd(number);

    console.log(numberIsOdd);
  } catch (error) {
    console.log(error);
  }  
}
``` 

```ts
numberIsOdd(5) // "the number 5 is odd"
```

If we need call more than one promises, is easy 
do maintenance compared to the traditional way, because we can treat the errors in the same function
```ts
async const allNumbersAreOdd = (number1, number2) => {
  try {
    await isOdd(number1);
    await isOdd(number2);

    console.log('all numbers are odd');
  } catch (error) {
    console.log(error);
  }  
}
``` 

```ts
allNumbersAreOdd(1, 2); // "the number 2 is even"
allNumbersAreOdd(1, 1); // "all numbers are odd"
```
Updating the OpenFaaS Rust Template
Tags: rust, openfaas
Published: 2019-06-25 16:56:35

---
title: Updating the OpenFaaS Rust Template
published: true
tags: Rust,OpenFaaS
canonical_url: http://blog.jonstodle.com/updating-the-openfaas-rust-template/
---

Recently we’ve started looking into using [OpenFaaS](https://www.openfaas.com/) at work. We’re still only in the experimenting phase, but I’m really liking what I’m seeing so far.

I’ve also fallen in love with Rust recently and would love to use it with OpenFaaS, and luckily there’s a template contributed by the community which was ready to use. To my dismay though, I soon discovered a small flaw. The resulting Docker container containing my function was just past 1 GB in size. That’s way too big for 30 lines of code, even considering the three dependencies I had.

I started looking at what could be included that made the size of the container that large. It soon revealed itself to be the base image. The OpenFaaS template uses the official Rust image to build and run the function, the problem is though, that image is meant for building the application, not necessarily running it. There’s a lot of stuff included in the Rust image, not needed when running the application normally. No need for Cargo, rustc or any other parts of the toolchain for example.

The Rust image is based on Debian Stretch, so I changed the Dockerfile to use the Rust image as a build step instead. It then copies the compiled binary to a new slimmer image based on `debian:stretch-slim`.

This puts the image size at approximately 100 MB, only one thenth the size!

Ideally I’d like to put it on an Alpine image, but part of the application I’m building take a dependency on the operating system it’s built on. Meaning: if it’s built on Debian, it needs Debian to run. I might try to make an Alpine build image to work around this.

After I’d slimmed down the size of the produced image, I also went through the rest of the Docker file and aligned it with how the official Go template was set up. It felt more right making the two images as similar as possible, as they’re both “system languages” with no to few external dependencies.

You can find the updated OpenFaaS Rust template on [my Github](https://github.com/jonstodle/openfaas-rust-template) and you can use it in your OpenFaaS projects by running

```
faas-cli template pull https://github.com/jonstodle/openfaas-rust-template
faas-cli new oxidize --language rust

```

Happy coding!
What do you wish companies would put in job listings?
Tags: discuss, career
Published: 2019-06-25 16:19:07

Here's mine:

Please, please just tell me what tech stack you use in the listing!!!

Even better if you can give me an idea of what I would use.  This is omitted all the time.  It's understandable if you don't care if I have experience in your particular stack, but I still want to know what it is.

What would you like to see more of?
Vacation Goals
Published: 2019-06-27 04:12:36

---
title: Vacation Goals
published: true
tags: 
canonical_url: https://triptych.writeas.com/vacation-goals?pk_campaign=rss-feed
---

![](https://i.snap.as/UPmRe2e.png)

# Vacation Goals

After today, I'm off on vacation for almost a week. I get to go to #campusmoviefest with my daughter, who is showing a few short films she has created. I'm super excited for her, and hopeful she can make connections with great folks there.

As for me, I've just got a new laptop, I've primed it with things like Godot Engine, GDevelop, Android Studio, and Visual Studio Code ( as well as Steam and Gog ). I've got a few things I'd like to do for myself whilst accompanying my daughter including:

- Finish reading the [Rust Book](https://doc.rust-lang.org/stable/book/) ( also [Rust and Webassembly](https://rustwasm.github.io/docs/book/) as well as [Rust Async](https://rust-lang.github.io/async-book/) — I just learned that those books were created using [mdbook](https://github.com/rust-lang-nursery/mdBook) ... learned something new today already!
- Finish reading [Godot](https://docs.godotengine.org/en/3.1/) docs.
- Work on #ittybittyrpg in Godot. Starting from scratch. Will iterate like crazy. I've learned a lot about Godot this past year, and it makes me want to use Godot to build my own tool. Get a splash screen and stub out the editor and view screens. Get it to output a simple HTML file.
- Work on #DungeonAfternoon in [GDevelop](http://gdevelop-app.com) — get a simple guy walking around a map. Level 0.

That's a lot, right? Well I hope to stay super busy. And maybe play some of my immense backlog of PC games.