Skip to content

Max Updates: adding some new fields (Last commit, Last public commit, Top languages, Total Stars), design and add favicon, Rename python scripts, Remove data injector and load data in runtime by ajax from json, Auto minifier for output html file, etc #110#111

Merged
BaseMax merged 29 commits intojohn-bampton:mainfrom
MaxFork:max-updates-improve
Dec 16, 2025

Conversation

@BaseMax
Copy link
Copy Markdown
Member

@BaseMax BaseMax commented Dec 16, 2025

This update introduces several enhancements and improvements to the project:

  • New fields added: Last commit, Last public commit, Top languages, Total stars.
  • UI & design improvements: Updated design elements and added a favicon.
  • Refactoring: Renamed Python scripts for better clarity and organization.
  • Data handling changes: Removed the data injector; data is now loaded at runtime via AJAX from JSON.
  • Build improvements: Added an automatic minifier for the output HTML files.
  • Miscellaneous enhancements to improve performance and maintainability.

These changes streamline the workflow, enhance user experience, and simplify data management.

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @BaseMax, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly refactors the project's data handling and presentation layer. It moves from a server-rendered approach, where user data was embedded directly into HTML, to a more modern client-side rendering model. This change, coupled with the introduction of new, richer user data fields and advanced filtering capabilities, enhances the user experience by providing more dynamic and interactive ways to explore GitHub profiles. The build process has also been streamlined with clearer script names and automatic HTML minification.

Highlights

  • Data Handling Overhaul: Transitioned from server-side HTML injection of user data to client-side AJAX loading from a users.json file, improving dynamic content and reducing initial page load.
  • Enhanced User Data Fields: Added new fields for GitHub users including 'Last Commit', 'Last Public Commit', 'Top Languages', and 'Total Stars', enriching user profiles.
  • Advanced Filtering & Sorting: Introduced new client-side filters and sorting options based on the newly added user data fields (e.g., minimum stars, programming language, last activity dates).
  • Improved Build Process: Renamed Python scripts for clarity (fetch.py, render.py), and implemented an automatic HTML minifier for output files, optimizing page size.
  • UI/UX Refinements: Updated the overall design, integrated a favicon, and streamlined the manifest.json for better Progressive Web App (PWA) support.
Ignored Files
  • Ignored by pattern: .github/workflows/** (1)
    • .github/workflows/deploy.yml
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a significant refactoring of the application's data loading and rendering mechanism, moving from client-side DOM parsing to fetching user data from a users.json file. Key changes include updating the fetch.py script to gather more comprehensive user details such as total stars, top languages, last repository activity, and last public commit dates, utilizing both GitHub's GraphQL and REST APIs. The render.py script was updated to generate a static HTML shell and export the processed user data into docs/users.json, which is now loaded asynchronously by script.js. The script.js file was heavily modified to dynamically build user cards from this JSON data, rather than parsing existing HTML, and new filtering and sorting options were added for total stars, programming languages, and activity dates. Corresponding UI updates were made in layouts/layout.html (which now consolidates the previous header.html, footer.html, and card.html templates), docs/styles.css for new filter inputs and card elements, and docs/manifest.json and docs/service-worker.js for updated PWA assets. Review comments highlighted the need to use innerHTML instead of textContent for rendering HTML in script.js, corrected a conditional check for last_public_commit_at, and suggested removing dead code (parseUserCard, extractLocation, extractStats) and simplifying a redundant variable assignment in fetch.py.

BaseMax and others added 4 commits December 16, 2025 18:27
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@jbampton jbampton self-assigned this Dec 16, 2025
@jbampton jbampton added enhancement New feature or request help wanted Extra attention is needed labels Dec 16, 2025
@jbampton jbampton added this to Turbo Dec 16, 2025
@jbampton jbampton moved this to In Progress in Turbo Dec 16, 2025
@jbampton jbampton added this to the December 2025 milestone Dec 16, 2025
@BaseMax
Copy link
Copy Markdown
Member Author

BaseMax commented Dec 16, 2025

cc #85

@BaseMax BaseMax merged commit c5c22c6 into john-bampton:main Dec 16, 2025
1 check failed
@github-project-automation github-project-automation bot moved this from In Progress to Done in Turbo Dec 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request hacktoberfest help wanted Extra attention is needed

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants