Skip to content

Commit

Permalink
Merge pull request #3 from techthoughts2/Enhancements
Browse files Browse the repository at this point in the history
Enhancements
  • Loading branch information
techthoughts2 authored Dec 23, 2023
2 parents 744d47e + ed757d2 commit 286a8b9
Show file tree
Hide file tree
Showing 78 changed files with 1,874 additions and 932 deletions.
16 changes: 0 additions & 16 deletions .github/CHANGELOG.md

This file was deleted.

2 changes: 1 addition & 1 deletion .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,4 +72,4 @@ available at [https://www.contributor-covenant.org/version/1/4/code-of-conduct.h

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see [https://www.contributor-covenant.org/faq](https://www.contributor-covenant.org/faq)
For answers to common questions about this code of conduct, see [https://www.contributor-covenant.org/faq](https://www.contributor-covenant.org/faq)
2 changes: 1 addition & 1 deletion .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,4 @@ This project has a [Code of Conduct](CODE_OF_CONDUCT.md).

## Licensing

See the [LICENSE](LICENSE.txt) file for our project's licensing.
See the [LICENSE](../LICENSE) file for our project's licensing.
18 changes: 18 additions & 0 deletions .github/SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Security Policy

## Reporting a Vulnerability

<!--- Use this section to tell people how to report a vulnerability.
Tell them where to go, how often they can expect to get an update on a reported vulnerability, what to expect if the vulnerability is accepted or declined, etc. -->

If you discover a vulnerability in pwshPlaces, please follow the _following process_:

1. Open a generic bug issue advising you have discovered a vulnerability.
- Avoid sharing specifics or details of the vulnerability in an open GitHub issue.
2. A repo owner will reach out to you to establish a private form of communication.
3. We will evaluate the vulnerability and, if necessary, release a fix or mitigating steps to address it. We will contact you to let you know the outcome, and will credit you in the report.

Please **do not disclose the vulnerability publicly** until a fix is released!

4. Once we have either a) published a fix, or b) declined to address the vulnerability for whatever reason, you are free to publicly disclose it.
11 changes: 7 additions & 4 deletions .github/workflows/wf_Linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,17 @@ on:
push:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'
branches-ignore:
- doctesting
pull_request:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'

branches-ignore:
- doctesting
jobs:
test:
name: Run Tests
Expand All @@ -25,7 +28,7 @@ jobs:
fail-fast: false
steps:
- name: Check out repository
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Display the path
shell: pwsh
run: echo ${env:PATH}
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/wf_MacOS.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,17 @@ on:
push:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'
branches-ignore:
- doctesting
pull_request:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'
branches-ignore:
- doctesting
jobs:
test:
name: Run Tests
Expand All @@ -24,7 +28,7 @@ jobs:
fail-fast: false
steps:
- name: Check out repository
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Display the path
shell: pwsh
run: echo ${env:PATH}
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/wf_Windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,17 @@ on:
push:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'
branches-ignore:
- doctesting
pull_request:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'
branches-ignore:
- doctesting
jobs:
test:
name: Run Tests
Expand All @@ -24,7 +28,7 @@ jobs:
fail-fast: false
steps:
- name: Check out repository
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Display the path
shell: powershell
run: echo ${env:PATH}
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/wf_Windows_Core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,17 @@ on:
push:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'
branches-ignore:
- doctesting
pull_request:
paths-ignore:
- '**.md'
- 'media/**'
- 'docs/**'
- 'LICENSE'
branches-ignore:
- doctesting
jobs:
test:
name: Run Tests
Expand All @@ -24,7 +28,7 @@ jobs:
fail-fast: false
steps:
- name: Check out repository
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Display the path
shell: pwsh
run: echo ${env:PATH}
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
Archive
Artifacts
cov.xml
coverage.xml
# OS generated files #
######################
.DS_Store
Expand All @@ -9,4 +10,4 @@ cov.xml
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
Thumbs.db
25 changes: 25 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# https://docs.readthedocs.io/en/stable/config-file/index.html

# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

build:
os: ubuntu-22.04
tools:
python: "3.11"

mkdocs:
configuration: mkdocs.yml

python:
install:
- requirements: docs/requirements.txt

# # Build PDF & ePub
formats: all
# - epub
# - pdf
49 changes: 48 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,56 @@
{
"markdownlint.config": {
"default": true,
"MD007": {
"indent": 4
},
"no-hard-tabs": false
},
// When enabled, will trim trailing whitespace when you save a file.
"files.trimTrailingWhitespace": true,
// specifies the location of the explicity ScriptAnalyzer settings file
"powershell.scriptAnalysis.settingsPath": "PSScriptAnalyzerSettings.psd1",
// specifies the PowerShell coding style used in this project (https://github.com/PoshCode/PowerShellPracticeAndStyle/issues/81)
"powershell.codeFormatting.preset":"Stroustrup"
"powershell.codeFormatting.preset":"Stroustrup",
"cSpell.enableFiletypes": [
"!yaml",
"powershell"
],
"cSpell.words": [
"Alanui",
"Braunfels",
"Castell",
"Clixml",
"Eastlake",
"findplacefromtext",
"Geocode",
"geocoded",
"geocoder",
"Geocodes",
"Granzin's",
"inputtype",
"jakemorrison",
"Krause's",
"latlng",
"locationbias",
"maxprice",
"minprice",
"Moriyama",
"nearbysearch",
"opennow",
"pagetoken",
"phme",
"phonenumber",
"pwsh",
"Queeney",
"rankby",
"Rqst",
"sessiontoken",
"succcessful",
"textquery",
"textsearch",
"Wailea",
"Yxhme"
]
}

8 changes: 4 additions & 4 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -125,16 +125,16 @@
"command": "Invoke-Build -Task Build -File '${workspaceFolder}/src/pwshPlaces.build.ps1'"
},
{
"label": "BuildNoInfra",
"label": "BuildNoIntegration",
"type": "shell",
"problemMatcher": "$msCompile",
"command": "Invoke-Build -Task BuildNoInfra -File '${workspaceFolder}/src/pwshPlaces.build.ps1'"
"command": "Invoke-Build -Task BuildNoIntegration -File '${workspaceFolder}/src/pwshPlaces.build.ps1'"
},
{
"label": "InfraTest",
"label": "IntegrationTest",
"type": "shell",
"problemMatcher": "$msCompile",
"command": "Invoke-Build -Task InfraTest -File '${workspaceFolder}/src/pwshPlaces.build.ps1'"
"command": "Invoke-Build -Task IntegrationTest -File '${workspaceFolder}/src/pwshPlaces.build.ps1'"
}
]
}
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2021 Jake Morrison
Copyright (c) 2024 Jake Morrison

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
63 changes: 24 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# pwshPlaces

[![Minimum Supported PowerShell Version](https://img.shields.io/badge/PowerShell-5.1+-purple.svg)](https://github.com/PowerShell/PowerShell) [![PowerShell Gallery][psgallery-img]][psgallery-site] ![Cross Platform](https://img.shields.io/badge/platform-windows%20%7C%20macos%20%7C%20linux-lightgrey) [![License][license-badge]](LICENSE)
[![Minimum Supported PowerShell Version](https://img.shields.io/badge/PowerShell-5.1+-purple.svg)](https://github.com/PowerShell/PowerShell) [![PowerShell Gallery][psgallery-img]][psgallery-site] ![Cross Platform](https://img.shields.io/badge/platform-windows%20%7C%20macos%20%7C%20linux-lightgrey) [![License][license-badge]](LICENSE) [![Documentation Status](https://readthedocs.org/projects/pwshPlaces/badge/?version=latest)](https://pwshPlaces.readthedocs.io/en/latest/?badge=latest)

[psgallery-img]: https://img.shields.io/powershellgallery/dt/pwshPlaces?label=Powershell%20Gallery&logo=powershell
[psgallery-site]: https://www.powershellgallery.com/packages/pwshPlaces
Expand All @@ -10,38 +10,33 @@
Branch | Windows - PowerShell | Windows - pwsh | Linux | MacOS
--- | --- | --- | --- | --- |
main | [![Build Status Windows PowerShell main](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows.yml/badge.svg?branch=main)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows.yml) | [![Build Status Windows pwsh main](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows_Core.yml/badge.svg?branch=main)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows_Core.yml) | [![Build Status Linux main](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Linux.yml/badge.svg?branch=main)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Linux.yml) | [![Build Status MacOS main](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_MacOS.yml/badge.svg?branch=main)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_MacOS.yml)
dev | [![Build Status Windows PowerShell dev](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows.yml/badge.svg?branch=dev)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows.yml) | [![Build Status Windows pwsh dev](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows_Core.yml/badge.svg?branch=dev)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows_Core.yml) | [![Build Status Linux dev](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Linux.yml/badge.svg?branch=dev)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Linux.yml) | [![Build Status MacOS dev](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_MacOS.yml/badge.svg?branch=dev)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_MacOS.yml)
Enhancements | [![Build Status Windows PowerShell Enhancements](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows.yml/badge.svg?branch=Enhancements)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows.yml) | [![Build Status Windows pwsh Enhancements](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows_Core.yml/badge.svg?branch=Enhancements)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Windows_Core.yml) | [![Build Status Linux Enhancements](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Linux.yml/badge.svg?branch=Enhancements)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_Linux.yml) | [![Build Status MacOS Enhancements](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_MacOS.yml/badge.svg?branch=Enhancements)](https://github.com/techthoughts2/pwshPlaces/actions/workflows/wf_MacOS.yml)

## Synopsis

pwshPlaces is a PowerShell module that can help you discover places and search for points of interest around the globe.
pwshPlaces is a PowerShell module that integrates with leading mapping services like Google Maps and Bing Maps. Offering a suite of commands for interacting with maps, it enables you to perform searches, read reviews, and retrieve detailed information about locations worldwide. From discovering nearby restaurants to geocoding addresses, pwshPlaces equips you with a wealth of geographical data, accessible through simple and intuitive PowerShell commands.

## Description

pwshPlaces enables you to leverage the Google Maps and/or Bing Maps API(s) to perform a variety of maps related tasks using PowerShell:
pwshPlaces enables you to leverage the Google Maps and/or Bing Maps APIs to perform a variety of map-related tasks using PowerShell. This module simplifies accessing and analyzing geographical data with user-friendly commands, empowering users to search for locations, read reviews, and perform geocoding effortlessly. Ideal for discovery, travel planning, or enhancing automation scripts, pwshPlaces transforms complex mapping data into actionable insights using PowerShell.

- Search for places, entities, addresses, and other points of interest
- Discover locations near your or near a specified place
- Easily perform Geocoding and reverse Geocoding actions
- Get detailed place information including opening hours, website information, and contact information
### Features

[pwshPlaces](docs/pwshPlaces.md) provides the following functions:
- Support for both Bing Maps and Google Maps
- *Find Places with Ease*: Use commands to locate any place, from restaurants to landmarks, using simple queries.
- *Open-Text Search Capabilities*: Harness the power of flexible, text-based searches. Whether it’s "coffee shops in Amsterdam" or "art galleries in New York", get targeted results swiftly.
- *Discover Nearby Points of Interest*: Explore what's around you, be it parks, eateries, or museums, based on your current or specified location.
- *Efficient Geocoding and Reverse Geocoding*: Convert addresses to coordinates and vice versa, integrating geographical context into your data.
- *In-depth Place Details*: Dive deeper into specific locations to access comprehensive information like contact details, ratings, reviews, and more.
- *Time Zone Information*: Stay informed about the time zones of different places, making scheduling and planning across time zones simpler.
- *Rapid Comparison and Decision Making*: Compare ratings, prices, and other key information quickly and make informed decisions without wading through dense web pages.
- *Customizable Search Parameters*: Tailor your searches with various parameters like radius, price level, and types to get precisely what you're looking for.

- [Find-BingPlace](docs/Find-BingPlace.md)
- [Find-BingTimeZone](docs/Find-BingTimeZone.md)
- [Find-GMapPlace](docs/Find-GMapPlace.md)
- [Get-GMapPlaceDetail](docs/Get-GMapPlaceDetail.md)
- [Invoke-BingGeoCode](docs/Invoke-BingGeoCode.md)
- [Invoke-GMapGeoCode](docs/Invoke-GMapGeoCode.md)
- [Search-BingNearbyPlace](docs/Search-BingNearbyPlace.md)
- [Search-GMapNearbyPlace](docs/Search-GMapNearbyPlace.md)
- [Search-GMapText](docs/Search-GMapText.md)
## Getting Started

## Why
### Documentation

The Google Maps and Bing Maps API require very specific formatting and criteria for API map interaction. The goal of this project is to abstract that complexity away in favor of simple and direct PowerShell commands.

## Installation
Documentation for pwshPlaces is available at: [https://pwshPlaces.readthedocs.io](https://pwshPlaces.readthedocs.io)

### Prerequisites

Expand All @@ -54,11 +49,10 @@ Both of these Map API keys are *easy to create* and have *no cost* pricing tiers
- [How to get a Google Maps API Key](docs/GoogleMapsAPI.md#how-to-get-a-google-maps-api-key)
- [How to get a Bing Maps API Key](docs/BingMapsAPI.md#how-to-get-a-bing-maps-api-key)

### Install pwshPlaces
### Installation

```powershell
# Install pwshPlaces from the PowerShell Gallery
Install-Module -Name pwshPlaces -Repository PSGallery -Scope CurrentUser
Install-Module -Name 'pwshPlaces' -Repository PSGallery -Scope CurrentUser
```

## Quick start
Expand Down Expand Up @@ -113,23 +107,14 @@ Find-BingTimeZone -PointLatitude 29.70 -PointLongitude -98.11 -BingMapsAPIKey $b
#-------------------------------------------------------------------------------------
```

## FAQ

**[pwshPlaces - FAQ](docs/pwshPlaces-FAQ.md)**

## Author

[Jake Morrison](https://twitter.com/JakeMorrison) - [https://www.techthoughts.info/](https://www.techthoughts.info/)

## Notes

Read more about:
This PowerShell project was created with [Catesta](https://github.com/techthoughts2/Catesta).

- [Google Maps API](docs/GoogleMapsAPI.md)
- [Bing Maps API](docs/BingMapsAPI.md)
## Contributing

This PowerShell project was created with [Catesta](https://github.com/techthoughts2/Catesta).
If you'd like to contribute to pwshPlaces, please see the [contribution guidelines](.github/CONTRIBUTING.md).

## Changelog
## License

Reference the [Changelog](.github/CHANGELOG.md)
This project is [licensed under the MIT License](LICENSE).
Loading

0 comments on commit 286a8b9

Please sign in to comment.