/React.ai

It recognize your speech and trained AI Bot will respond(i.e Customer Service, Personal Assistant) using Machine Learning API (DialogFlow, apiai), Speech Recognition, GraphQL, Next.js, React, redux

Primary LanguageJavaScriptMIT LicenseMIT

React.ai

Follow the tutorial, read about this project at medium article written by Seunghun Lee.

In a nutshell

React.ai is React.js, Redux, Hot Reloading, ESNext, Babel, react-router, Offline First, ServiceWorker, styled-components, redux-saga, FontFaceObserver, Machine Learning(DialogFlow, apiai), Speech Recognition, GraphQL, Next.js Universal rendering starter kit(boilerplate)⚡️ - SEO-Ready, Production-Ready, SSR, Hot-Reload, CSS-in-JS, Caching, CLI commands and more...

Features

This is the foundation of Server Side Rendered(SSR) FullStack React Machine Learning API boilerplate that currently includes Speech Recognition, Text, Speech Response AI customer Service Chatbot using DialogFlow(Google's Natural Language AI) API. This project is planning to include interesting, useful machine learning AI out of the box written in production ready react boilerplate, node.js.

Quick scaffolding
Create components, containers, routes, selectors and sagas - and their tests - right from the CLI!
Instant feedback
Enjoy the best DX (Developer eXperience) and code your app at the speed of thought! Your saved changes to the CSS and JS are reflected instantaneously without refreshing the page. Preserve application state even when you update something in the underlying code!
Predictable state management
Unidirectional data flow allows for change logging and time travel debugging.
Next generation JavaScript
Use template strings, object destructuring, arrow functions, JSX syntax and more, today.
Next generation CSS
Write composable CSS that's co-located with your components for complete modularity. Unique generated class names keep the specificity low while eliminating style clashes. Ship only the styles that are on the page for the best performance.
Industry-standard routing
It's natural to want to add pages (e.g. `/about`) to your application, and routing makes this possible.
Industry-standard i18n internationalization support
Scalable apps need to support multiple languages, easily add and support multiple languages with `react-intl`.
Offline-first
The next frontier in performant web apps: availability without a network connection from the instant your users load the app.
SEO
We support SEO (document head tags management) for search engines that support indexing of JavaScript content. (eg. Google)

But wait... there's more!

  • The best test setup: Automatically guarantee code quality and non-breaking changes. (Seen a react app with 99% test coverage before?)
  • Native web app: Your app's new home? The home screen of your users' phones.
  • The fastest fonts: Say goodbye to vacant text.
  • Stay fast: Profile your app's performance from the comfort of your command line!
  • Catch problems: AppVeyor and TravisCI setups included by default, so your tests get run automatically on Windows and Unix.

There’s also a fantastic video on how to structure your React.js apps with scalability in mind. It provides rationale for the majority of boilerplate's design decisions.

Keywords: React.js, Redux, Hot Reloading, ESNext, Babel, react-router, Offline First, ServiceWorker, styled-components, redux-saga, FontFaceObserver

Motivation

To help React developers get started with Machine Learning, AI bot project in seconds, help developers spend more time on writing meaningful codes.

How to run

yarn

or

npm install

create .env file in the root folder of the project and add the below.

APIAI_TOKEN="YOUR APIAI_TOKEN(client key)"
APIAI_SESSION_ID="YOUR APIAI_SESSION_ID(client secret key)"

Then run

yarn run dev

or

npm run dev

It works but as a reference, currently not sure APIAI_SESSION_ID is required after dialogflow api update.

References

This project is inspired from @react-boilerplate 's react-boilerplate , @girliemac 'sweb-speech-api

Author


Seunghun Lee

💻 📖 👀 📢