A modern, responsive news aggregator that fetches and displays the latest technology news from multiple trusted sources including Bloomberg, TechCrunch, New York Times, Associated Press, and any source of choice.
- 🔄 Real-time news updates from multiple sources
- 🌓 Dark/Light theme support
- 🔍 Advanced search
- 📱 Responsive design
- 🤖 Analyst article explanations
- 📖 Article reading progress tracking
- ⌨️ Keyboard navigation support
- 🎯 Smart content filtering and cleaning
- Clone the repository:
git clone https://github.com/yourusername/daily-news.git
cd daily-news
- Install dependencies:
npm install
- Create a
.env.local
file in the root directory with the following variables:
EXA_API_KEY=your_exa_api_key
OPENAI_API_KEY=your_openai_api_key
- Run the development server:
npm run dev
- Open http://localhost:3000 in your browser.
- Fetches latest tech news from multiple sources
- Smart content filtering to remove duplicates and irrelevant content
- Automatic article summarization using GPT-3.5
- Clean article text processing to remove ads and boilerplate content
- Real-time search across all news sources
- Advanced filtering and sorting options
- Responsive search interface with loading states
- Modal view for detailed article reading
- AI-powered article explanations
- Article progress tracking
- Keyboard navigation (left/right arrows for navigation, ESC to close)
- External links to original articles
- Modern, clean design
- Dark/Light theme toggle
- Smooth transitions and animations
- Responsive grid layout
- Loading states and error handling
- Real-time clock display
Used for fetching news content with features like:
- Advanced search queries
- Content extraction
- Date filtering
- Author extraction
Used for:
- Article summarization
- Generating article explanations
- Content analysis
- Node.js 18+
- npm or yarn
- Exa API key
- OpenAI API key
npm run dev
- Start development servernpm run build
- Build for productionnpm start
- Start production servernpm run lint
- Run ESLint
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.