
Week 6 content of Steam Review Analyzer
Build a complete Chrome extension structure
Fetch real Steam reviews using the API
Extract and display review data
We've learned sentiment analysis in Python and created a basic Chrome extension. Now it's time to bring them together!
This week, we'll:
Review Chrome extension structure
Learn to use the Steam Reviews API
Fetch real review data from Steam
Prepare for sentiment analysis integration (next week)
A Chrome extension needs three core files:
manifest.json - Configuration and permissions
content.js - Runs on Steam game pages
background.js - Handles background tasks and API calls
popup.js - Handles the popup HTML code
popup.html - front end of the extension
Steam provides a free API to fetch game reviews without authentication!
Base URL: store.steampowered.com/appreviews/<appid>?json=1
Based on the Steam API documentation, here are the key parameters we'll use:
filter (string, required)
Controls how reviews are sorted
Options: recent, updated, or all (default)
recent - sorted by creation time (newest first)
all - sorted by helpfulness with sliding windows
language (string, required)
Specifies which language reviews to return
Use english for English reviews
Or pass all for reviews in all languages
num_per_page (string, required)
Number of reviews to return per request
Default: 20 reviews
Maximum: 100 reviews
For our extension, we'll use 50 reviews
review_type (string, required)
Filter by review sentiment
Options: all, positive, negative
all - returns all reviews (default)
positive - only positive recommendations
negative - only negative recommendations
For the game Hades (App ID: 1145360), here's how to fetch 50 recent English reviews:
Please play around with the parameters and look at the output JSON to see how it all looks. You can get all the info on this page: https://partner.steamgames.com/doc/store/getreviews.
Look through the page for the entire list of parameters and the output structure.
So now we will include the files you need to build the extension.
https://drive.google.com/file/d/14kUNhfOHODrNR62Fsbh_fqZA7f3Uv5ch/view?usp=sharing
https://drive.google.com/file/d/18FD4KqEvuBnF7TvKkc4iurPWmZy7WhYf/view?usp=sharing
https://drive.google.com/file/d/1DbuT1AS9njet1k7LtzqFXoDVPJqeMnNf/view?usp=sharing
https://drive.google.com/file/d/1ZMz9ACvuCQZOfD4h0UmwTuvxDYiwJE1K/view?usp=sharing
https://drive.google.com/file/d/1wNoZ6JAzWnCBZWMTptNOjGyeK6TEESYF/view?usp=sharing
All five files are provided as separate code files. See the individual files for:
manifest.json
content.js
background.js
popup.html
popup.js
Create the folder
Make a new folder called steam-sentiment-analyzer
Save all five files in this folder
Open Chrome Extensions page
Open Chrome browser
Go to chrome://extensions/
Or click the three dots → Extensions → Manage Extensions
Enable Developer Mode
Look for the toggle in the top-right corner
Turn on "Developer mode"
Load your extension
Click "Load unpacked" button
Select your steam-sentiment-analyzer folder
Your extension should appear in the list!
Visit a Steam game page
Go to https://store.steampowered.com/app/1145360/ (Hades)
Or any other Steam game page
Click the extension icon
Look for the extension icon in your toolbar
Click it to open the popup
Check the popup
Should show game name and ID
"Analyze Reviews" button should be enabled
Status should say "Ready to analyze reviews"
4. Verify success
Popup shows "Analysis Complete!"
Review statistics appear
Console shows review data
In the popup:
Game name (e.g., "Hades")
Game ID (e.g., "1145360")
Total reviews count
Positive and negative counts
Green success status
Steam Reviews API:
Free to use, no authentication needed
Returns up to 100 reviews per request
Includes review text, ratings, and metadata
Key parameters: num_per_page, language, filter, review_type
Chrome Extensions:
Five core files for a complete extension
Popup provides clean UI for users
Content scripts interact with web pages
Background scripts handle data processing
All components communicate via messages
In Week 7 (our final week!), we'll:
Implement sentiment analysis in JavaScript
Analyze the fetched reviews in the browser
Display sentiment scores and percentages
Create a visual sentiment report on the popup
Complete the full extension!
You now have a working extension with a popup that fetches real Steam reviews. Next week, we bring in the sentiment analysis to complete the project!