Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GeoJSON module #3413

Open
charlieforward9 opened this issue Feb 25, 2025 · 5 comments
Open

GeoJSON module #3413

charlieforward9 opened this issue Feb 25, 2025 · 5 comments
Labels
c: feature Request for new feature p: 1-normal Nothing urgent s: pending triage Pending Triage s: waiting for user interest Waiting for more users interested in this feature
Milestone

Comments

@charlieforward9
Copy link

Clear and concise description of the problem

I work with a buunch of maps, it would be suuuper helpful to have a faker module for GeoJSON related data in order to alleviate a lot of the manual mock data I have filled in the codebase.

Suggested solution

I propose that each GeoJSON type have its own mock, and common parameters be used to control things like where it shows up, how big the features can be, etc. Posting this a bit rushed to curious to see a response before diving deeper into proposal.

Alternative

No response

Additional context

No response

@charlieforward9 charlieforward9 added c: feature Request for new feature s: pending triage Pending Triage s: waiting for user interest Waiting for more users interested in this feature labels Feb 25, 2025
Copy link
Contributor

Thank you for your feature proposal.

We marked it as "waiting for user interest" for now to gather some feedback from our community:

  • If you would like to see this feature be implemented, please react to the description with an up-vote (:+1:).
  • If you have a suggestion or want to point out some special cases that need to be considered, please leave a comment, so we are aware about them.

We would also like to hear about other community members' use cases for the feature to give us a better understanding of their potential implicit or explicit requirements.

We will start the implementation based on:

  • the number of votes (:+1:) and comments
  • the relevance for the ecosystem
  • availability of alternatives and workarounds
  • and the complexity of the requested feature

We do this because:

  • There are plenty of languages/countries out there and we would like to ensure that every method can cover all or almost all of them.
  • Every feature we add to faker has "costs" associated to it:
    • initial costs: design, implementation, reviews, documentation
    • running costs: awareness of the feature itself, more complex module structure, increased bundle size, more work during refactors

View more issues which are waiting for user interest

@ST-DDT
Copy link
Member

ST-DDT commented Feb 25, 2025

FFR:

@ST-DDT ST-DDT added the p: 1-normal Nothing urgent label Feb 25, 2025
@ST-DDT ST-DDT added this to the vFuture milestone Feb 25, 2025
@xDivisionByZerox
Copy link
Member

xDivisionByZerox commented Feb 25, 2025

I was sceptical since the only thing i saw first was json. Historicaly, we do not return json that has dynamic content. On the other side we abrace feature which are standardized (RFC, ISO, etc). I'd say the later argument has more weigt in this scenario since we could follow RFC 7946.

Without having discussed that with the team: I'm fine with such a module in general. Would be great if other team members could reflect their opinion with a simple thumbs up ( 👍 ) or thumbs down ( 👎 ) reaction to this comment.

If my comment gets at least one upvote, could you be so kind @charlieforward9 and suggest a potential API for the implementation? This does not mean that there is a guarantee that the feature will be implemented in the near future, but it will help us evaluate the scope, technical dept and maintainance burdens of such a feature.

@ST-DDT
Copy link
Member

ST-DDT commented Feb 25, 2025

I think it should have its own module as it is too much for the location module.

There are 2 things that I'm unsure about:

  • does it contain localized data
  • we would kind of have to duplicate the entire set of types for GeoJson types (at least 7 for Geometries + some more for features)

@matthewmayer
Copy link
Contributor

I think one of the things to bear in mind you probably don't want the data to be utterly random. For example, a common use case for geoJSON might be showing a route like a GPS trace or hiking trail, or locations of restaurants in a city.

In that case you would want points fairly close together not scattered all over the globe

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c: feature Request for new feature p: 1-normal Nothing urgent s: pending triage Pending Triage s: waiting for user interest Waiting for more users interested in this feature
Projects
None yet
Development

No branches or pull requests

4 participants