A Flask web application that fetches Vercel's February 2025 changelog updates and organizes them both chronologically and thematically using advanced NLP techniques.
- Fetches and displays February 2025 Vercel updates
- Organizes updates both by date and theme
- Uses advanced NLP for intelligent theme clustering
- Clean, modern UI with tabbed interface
- Real-time update fetching and clustering
- Responsive design with proper loading states
- Python 3.8+
- Flask 3.0.0
- Transformers 4.36.2
- Sentence-Transformers 2.2.2
- Scikit-learn 1.3.2
- BeautifulSoup4 4.12.2
- Feedparser 6.0.10
- PyTorch 2.1.2
- NumPy 1.24.3
-
Clone the repository:
git clone <your-repo-url> cd monthly-updates
-
Create and activate a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install the required packages:
pip install -r requirements.txt
-
Start the Flask server:
python app.py
-
Open your web browser and navigate to:
http://localhost:5002
-
Use the interface:
- Click "Refresh Monthly Updates" to fetch the latest updates
- Click "Sort into Themes" to view updates clustered by theme
- Switch between Monthly and Themed views using the tabs
-
Monthly Updates:
- Fetches Vercel's Atom feed
- Filters for February 2025 changelog entries
- Sorts updates chronologically
- Summarizes content using BART model
-
Themed Updates:
- Uses Sentence Transformers for semantic text embeddings
- Applies K-means clustering to group similar updates
- Automatically determines optimal number of themes
- Names themes based on most representative updates
-
Features:
- Smart date parsing and formatting
- Automatic content summarization
- Intelligent theme clustering
- Clean, card-based layout
- Status indicators for all operations
- Built with Flask backend
- Uses modern HTML/CSS/JavaScript frontend
- Implements responsive design principles
- Includes proper error handling
- Uses async/await for smooth user experience
- Leverages advanced NLP techniques
MIT License - feel free to use this project as you wish.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request