Skip to content

Add Geographical Distribution widget endpoint#86

Merged
borfast merged 2 commits intomainfrom
feature/ins-78-geographical-distribution-data
Mar 11, 2025
Merged

Add Geographical Distribution widget endpoint#86
borfast merged 2 commits intomainfrom
feature/ins-78-geographical-distribution-data

Conversation

@borfast
Copy link
Copy Markdown
Contributor

@borfast borfast commented Mar 10, 2025

Summary by CodeRabbit

  • New Features
    • Introduced advanced filtering for geographic distribution data, allowing users to refine analytics using specific activity metrics with a sensible default applied.
    • Enhanced data processing to provide more comprehensive and granular insights into contributor and organization activity by region.

@borfast borfast self-assigned this Mar 10, 2025
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 10, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

This pull request introduces enhancements for geographic distribution data. It adds a new metric property to the filter objects used both in the API endpoint and in type definitions, defaulting to a specific metric if not provided. Additionally, it expands the data-fetching capabilities by integrating a new method in the data source and introducing a new Tinybird data source file to support geographic distribution data retrieval and formatting.

Changes

File(s) Change Summary
frontend/server/api/.../contributors/geographical-distribution.get.ts Added a new metric property to the filter object, sourcing its value from the query parameter with a default of FilterActivityMetric.ALL; updated import statements accordingly.
frontend/server/data/{data-sources.ts, tinybird/geographic-distribution-data-source.ts, types.ts} Expanded geographic distribution support by adding the GeographicDistributionFilter.metric property in types, introducing new type definitions and a fetch function (fetchGeographicDistribution) in the Tinybird module, and updating the DataSource interface and implementation to include this new method.

Sequence Diagram(s)

sequenceDiagram
    participant C as Client
    participant API as API Endpoint
    participant DS as DataSource
    participant TB as Tinybird Service

    C->>API: Request geographic distribution (with optional metric)
    API->>API: Build filter with `metric` (default if absent)
    API->>DS: Invoke fetchGeographicDistribution(filter)
    DS->>TB: Call Tinybird API via fetchFromTinybird(queryPath)
    TB-->>DS: Return raw geographic distribution data
    DS->>DS: Process and format data into response format
    DS-->>API: Return GeographicDistributionResponse
    API-->>C: Respond with formatted geographic distribution data
Loading

Possibly related PRs

Suggested reviewers

  • emlimlf
  • gaspergrom

📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 66ba4ec and aeb4609.

📒 Files selected for processing (6)
  • frontend/server/api/project/[slug]/contributors/geographical-distribution.get.ts (2 hunks)
  • frontend/server/data/data-sources.ts (3 hunks)
  • frontend/server/data/tinybird/geographic-distribution-data-source.ts (1 hunks)
  • frontend/server/data/types.ts (1 hunks)
  • frontend/server/api/project/[slug]/contributors/geographical-distribution.get.ts (2 hunks)
  • frontend/server/data/types.ts (1 hunks)
✨ Finishing Touches
  • 📝 Generate Docstrings

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@borfast borfast requested review from emlimlf and gaspergrom March 10, 2025 23:34
@borfast borfast force-pushed the feature/ins-76-organization-dependency-data branch 2 times, most recently from f0037c6 to ceef2e5 Compare March 10, 2025 23:39
@borfast borfast force-pushed the feature/ins-78-geographical-distribution-data branch 2 times, most recently from e17f503 to 3ca5130 Compare March 10, 2025 23:39
@borfast borfast force-pushed the feature/ins-76-organization-dependency-data branch 2 times, most recently from 60ecc3d to 2af5fa4 Compare March 10, 2025 23:41
@borfast borfast force-pushed the feature/ins-78-geographical-distribution-data branch 3 times, most recently from 962600e to 30a66f4 Compare March 10, 2025 23:43
@borfast borfast force-pushed the feature/ins-76-organization-dependency-data branch 2 times, most recently from f17937c to 8256eab Compare March 11, 2025 15:21
@borfast borfast force-pushed the feature/ins-78-geographical-distribution-data branch 2 times, most recently from 69068c3 to ab1567f Compare March 11, 2025 15:21
@borfast borfast force-pushed the feature/ins-76-organization-dependency-data branch 2 times, most recently from b2b5825 to 0987918 Compare March 11, 2025 15:25
@borfast borfast force-pushed the feature/ins-78-geographical-distribution-data branch 2 times, most recently from cc97f8d to 918482b Compare March 11, 2025 15:26
@borfast borfast force-pushed the feature/ins-76-organization-dependency-data branch from 0987918 to f42bb24 Compare March 11, 2025 15:35
@borfast borfast force-pushed the feature/ins-78-geographical-distribution-data branch 2 times, most recently from b4322aa to a6d0256 Compare March 11, 2025 15:35
Base automatically changed from feature/ins-76-organization-dependency-data to main March 11, 2025 15:38
borfast added 2 commits March 11, 2025 15:38
Signed-off-by: Raúl Santos <4837+borfast@users.noreply.github.com>
Signed-off-by: Raúl Santos <4837+borfast@users.noreply.github.com>
@borfast borfast force-pushed the feature/ins-78-geographical-distribution-data branch from a6d0256 to aeb4609 Compare March 11, 2025 15:38
@borfast borfast merged commit 0302257 into main Mar 11, 2025
1 of 2 checks passed
@borfast borfast deleted the feature/ins-78-geographical-distribution-data branch March 11, 2025 15:39
@borfast borfast assigned borfast and unassigned borfast May 2, 2025
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.

3 participants