A full-stack web application that aggregates AI-related news stories from various sources, generates engaging summaries using Anthropic Claude, and provides social media automation features through Social Pilot integration.
- News Aggregation: Fetches AI stories from trusted sources (TechCrunch, Wired, Reuters, etc.)
- AI-Generated Summaries: Uses Anthropic Claude to create engaging social media content
- Color-Coded Categories: Visual organization by AI topic (General AI, Financial Services, Healthcare)
- Rate Limiting: Respects API limits with 900 News API calls/day and 5 calls/minute
- Social Media Integration: One-click posting to Social Pilot for LinkedIn/Twitter distribution
- Duplicate Detection: Groups similar stories and displays multiple sources
- Real-Time Monitoring: API usage dashboard with live statistics
- Node.js (version 18 or higher)
- npm (comes with Node.js)
- API Keys (see Configuration section below)
- Extract the project files to your desired directory
- Navigate to the project directory in your terminal/command prompt
- Install dependencies:
npm install
Create a .env file in the root directory with the following API keys:
# Required: News API (get from https://newsapi.org/)
NEWS_API_KEY=your_news_api_key_here
# Required: Anthropic Claude API (get from https://console.anthropic.com/)
ANTHROPIC_API_KEY=your_anthropic_api_key_here
# Optional: Social Pilot API (get from https://app.socialpilot.co/api)
SOCIAL_PILOT_API_KEY=your_social_pilot_api_key_here-
News API:
- Visit https://newsapi.org/
- Sign up for a free account
- Copy your API key from the dashboard
-
Anthropic Claude API:
- Visit https://console.anthropic.com/
- Create an account and add credits
- Generate an API key in the API section
-
Social Pilot API (optional):
- Visit https://app.socialpilot.co/
- Go to Settings > API Access
- Generate your API key
npm run devnpm run build
npm startThe application will be available at:
- Local: http://localhost:5000
- Network: http://[your-ip]:5000
- View Stories: The dashboard displays AI news stories with color-coded categories
- Filter Content: Use the filter buttons to view specific AI topics
- Copy Summaries: Click "Copy Text" to copy AI-generated social media content
- Social Posting: Click "Create Social Pilot Post" to post directly (requires Social Pilot API key)
- Monitor Usage: Check the API Usage card for real-time statistics
- Blue: General AI and privacy-related content
- Red: AI in Financial Services
- Orange: AI in Healthcare
- News API: 900 calls per day, 5 calls per minute
- Anthropic API: 1000 calls per day
- Social Pilot API: 500 calls per day
├── client/ # React frontend
│ ├── src/
│ │ ├── components/ # UI components
│ │ ├── pages/ # Page components
│ │ └── lib/ # Utilities
├── server/ # Express backend
│ ├── services/ # API services
│ └── storage.ts # Data storage
├── shared/ # Shared types/schemas
└── package.json # Dependencies
-
"Module not found" errors:
- Run
npm installto ensure all dependencies are installed
- Run
-
API rate limit errors (429):
- Wait for the rate limit window to reset
- Check your API usage in the dashboard
-
Missing API keys:
- Verify your
.envfile is in the root directory - Ensure API keys are correctly formatted
- Verify your
-
Port already in use:
- Change the port by setting
PORT=3000in your.envfile - Or kill the process using the port
- Change the port by setting
You can customize the application with these environment variables in your .env file:
PORT=5000 # Server port (default: 5000)
NODE_ENV=development # Environment mode
NEWS_API_KEY=your_key # Required
ANTHROPIC_API_KEY=your_key # Required
SOCIAL_PILOT_API_KEY=your_key # OptionalFor issues or questions:
- Check the troubleshooting section above
- Verify all API keys are valid and have sufficient credits
- Check the console logs for detailed error messages
We welcome contributions to the AI News Aggregator project! Please see our Contributing Guide for details.
- Fork the repository
- Clone your fork:
git clone https://github.com/sultanmeghji/ai-news-aggregator.git - Install dependencies:
npm install - Set up your environment:
cp .env.example .envand add your API keys - Start development:
npm run dev - Make your changes and submit a pull request
This project adheres to a Code of Conduct. By participating, you are expected to uphold this code.
For security concerns, please see our Security Policy.
This project is licensed under the MIT License - see the LICENSE file for details.
See CHANGELOG.md for a detailed history of changes to this project.
- 📖 Documentation: Check our Installation Guide for detailed setup instructions
- 🐛 Bug Reports: Create an issue
- 💡 Feature Requests: Request a feature
- 💬 Discussions: Join our GitHub Discussions
- News API for providing reliable news data
- Anthropic for Claude AI capabilities
- Social Pilot for social media automation
- The open source community for the excellent tools and libraries used in this project