Skip to content

Add new city selection feature.#396

Open
rjison wants to merge 2 commits intotronbyt:mainfrom
rjison:SkyLineAppDataUpdate
Open

Add new city selection feature.#396
rjison wants to merge 2 commits intotronbyt:mainfrom
rjison:SkyLineAppDataUpdate

Conversation

@rjison
Copy link
Contributor

@rjison rjison commented Mar 6, 2026

Pick which cities can appear.
Also updated St. Louis and added other cities.

@rjison rjison requested a review from tavdog as a code owner March 6, 2026 16:28
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello, 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 improves the user experience of the skyline display application by introducing a more flexible city selection mechanism. Users can now curate their preferred list of cities to display, moving beyond the previous limitation of selecting only one city or relying on a fully random choice. This enhancement, coupled with the addition of several new city skylines and an update to an existing one, provides greater customization and visual variety.

Highlights

  • Enhanced City Selection: Introduced a new "Pick from Selected" display option, allowing users to choose multiple cities via individual toggles instead of a single dropdown.
  • New City Skylines Added: Added detailed skyline data for Houston, Las Vegas, and Los Angeles.
  • St. Louis Skyline Update: Refined the existing skyline data for St. Louis.
  • Improved Randomization: Modified the random number generation to incorporate canvas dimensions, aiming for more varied star placements.
  • Code Refinements: Implemented a utility function get_safe_name for consistent naming and optimized animation frame handling.
Changelog
  • apps/skylines/skylines.star
    • Renamed the "Select a City" display option to "Pick from Selected" and updated its internal value from "Pick" to "List".
    • Modified the randomize function to include canvas.width() * canvas.height() in the random seed calculation.
    • Adjusted the star placement logic to ensure the sky height is non-negative.
    • Added a new get_safe_name helper function to convert city names into safe identifiers for configuration.
    • Rewrote the city selection logic in main to iterate through all cities and check for individual toggle configurations.
    • Introduced a last_frame variable to cache the final animation frame, improving rendering efficiency.
    • Updated the get_city_options function to dynamically generate schema.Toggle elements for each city, replacing the previous schema.Dropdown.
  • apps/skylines/skylines_data.star
    • Added new skyline dataset for "Houston".
    • Added new skyline dataset for "Las Vegas".
    • Added new skyline dataset for "Los Angeles".
    • Updated the existing skyline dataset for "St. Louis".
Activity
  • No specific activity was provided for this pull request.
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
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 new city selection mechanism in the Skylines app, allowing users to choose multiple cities via individual toggle checkboxes instead of a single dropdown. This change involved updating the display_type option from 'Pick' to 'List', implementing a get_safe_name helper function to generate unique IDs for city toggles, and modifying the city selection logic in the main function to process these new selections (falling back to a random city if none are chosen). Additionally, the randomize function was updated to incorporate canvas dimensions for improved randomness, and the handling of animation frames was refactored for clarity by introducing a last_frame variable. The pull request also expands the available content by adding four new cities: Houston, Las Vegas, Los Angeles, and St. Louis, each with its corresponding skyline data.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant