Go to file
2023-08-21 21:37:40 -07:00
cmd/tafparser Initial Commit 2023-08-21 16:56:17 -07:00
internal/parser Initial Commit 2023-08-21 16:56:17 -07:00
units Initial Commit 2023-08-21 16:56:17 -07:00
.gitignore Initial Commit 2023-08-21 16:56:17 -07:00
go.mod Initial Commit 2023-08-21 16:56:17 -07:00
go.sum Initial Commit 2023-08-21 16:56:17 -07:00
LICENSE Initial Commit 2023-08-21 16:56:17 -07:00
README.md Clarify README 2023-08-21 16:57:50 -07:00
taf_test.go Initial Commit 2023-08-21 16:56:17 -07:00
taf.go Fix issue where a sky condition without an altitude broke the interpreter 2023-08-21 21:37:40 -07:00
time.go Initial Commit 2023-08-21 16:56:17 -07:00
types.go Initial Commit 2023-08-21 16:56:17 -07:00

taf

This is a library and command-line tool that parses and decodes TAF forecasts.

TAF stands for Terminal Aerodrome Forecast. It's the weather forecast format used in aviation. TAF reports are useful as a free source of accurate weather.

Here's an example of a TAF report from JFK airport:

KJFK 212335Z 2200/2306 33012G18KT P6SM FEW060 BKN250
  FM220300 36014KT P6SM FEW060 SCT150
  FM221400 01015G21KT P6SM SCT060
  FM221900 04011KT P6SM SCT060
  FM230000 03007KT P6SM FEW060
  FM230300 35006KT P6SM FEW060

Try parsing it by installing the tafparser tool using

go install go.elara.ws/taf/cmd/tafparser@latest

and then running

tafparser <<EOF
KJFK 212335Z 2200/2306 33012G18KT P6SM FEW060 BKN250
  FM220300 36014KT P6SM FEW060 SCT150
  FM221400 01015G21KT P6SM SCT060
  FM221900 04011KT P6SM SCT060
  FM230000 03007KT P6SM FEW060
  FM230300 35006KT P6SM FEW060
EOF

That should return a JSON object containing all the decoded data from the TAF report.

You can also give the tafparser tool a file to read from using tafparser file.txt.

Units in TAF reports are inconsistent between different countries. tafparser can convert the units for you! Just pass it the units you want to use for speed and/or distance like so:

tafparser -s m/s -d m

This tells tafparser to convert all speed units to meters per second and distance units to meters.