News Voice is a revolutionary 🚀 News App built with React.JS, leveraging the power of Alan AI 🤖 for voice recognition and NewsAPI 📰 for fetching the latest news from multiple sources. It provides a seamless and interactive user experience, allowing users to ask for news by source, term, or category, and even read headlines or open specific articles, all through voice commands.
- 🗣️ Voice Recognition with Alan AI: Enables users to interact with the app using voice commands.
- 📰 NewsAPI Integration: Fetches the latest news from various sources.
- 🎨 Material UI: Offers a sleek and responsive user interface.
- 🔍 Multi-Source News Retrieval: Provides news from different sources or based on specific terms or categories.
The Alan AI script is designed to retrieve news articles using the News API based on user voice commands. The user can ask for news by source, by term, or by category, and the script fetches the relevant articles and presents them to the user. The user can also ask to read the headlines or open a specific article.
🎥 Demo
- 🎙️ Voice Command Controllers: Define the voice commands for user interaction.
- 🌐 Networking Functions: Contain the function to call the News API and retrieve the articles.
- 🛠️ Util Functions: Include the confirmation context and other utility functions.
🚨 Note: A valid News API key needs to be set in the environment variable
NEWS_API_KEY
to use this script.
- Node.js
- npm or yarn
- A valid News API key
- Alan AI Studio account
- 📂 Clone the repository
git clone git@github.com:jmoliugp/react-alan-ai-news-app.git
- 📦 Install NPM packages
or
npm install
yarn install
- 🌿 Set up your
.env
file with your News API key and Alan AI keyREACT_APP_NEWS_API_KEY=your_news_api_key REACT_APP_ALAN_AI_KEY=your_alan_ai_key
- 🚀 Run the app in the development mode
or
npm start
yarn start
Once the app is running, you can interact with it using the following voice commands:
- "🔍 Give me the latest news from [source]"
- "🔍 Find news about [term]"
- "🔍 Show me the top headlines in [category]"
- "📢 Read the headlines"
- "🔗 Open article number [number]"
This project is licensed under the MIT License.