@speleotica/frcsdata

parser for Chip Hopper's survey data format used in Fisher Ridge Cave System

Usage no npm install needed!

<script type="module">
  import speleoticaFrcsdata from 'https://cdn.skypack.dev/@speleotica/frcsdata';
</script>

README

@speleotica/frcsdata

CircleCI Coverage Status semantic-release Commitizen friendly npm version

Parser for Chip Hopper's survey data format used in Fisher Ridge Cave System

Parse function variants

AsyncIterable: parseFrcsXFile(file: string, lines: AsyncIterable<string>): Promise<FrcsXFile>

These can be imported from the package root (@speleotica/frcsdata). The other variants wrap these.

String: parseFrcsXFile(file: string, data: string): Promise<FrcsXFile>

These can be imported from @speleotica/frcsdata/string.

Node: parseFrcsXFile(file: string): Promise<FrcsXFile>

These can be imported from @speleotica/frcsdata/node and read the given file from disk. They require Node >=12.

File types

I'm not going to document this much right now but there are three types of files:

Survey Files

These files typically look like cdata.fr where the extension is actually an abbrevation of the cave name.

import { parseFrcsSurveyFile } from '@speleotica/frcsdata'
import { parseFrcsSurveyFile } from '@speleotica/frcsdata/node'
import { parseFrcsSurveyFile } from '@speleotica/frcsdata/string'

These functions return a Promise that resolves to an FrcsSurveyFile.

Trip Summary Files

These files typically look like STAT_sum.txt.

import { parseFrcsTripSummaryFile } from '@speleotica/frcsdata'
import { parseFrcsTripSummaryFile } from '@speleotica/frcsdata/node'
import { parseFrcsTripSummaryFile } from '@speleotica/frcsdata/string'

These functions return a Promise that resolves to an FrcsTripSummaryFile.

Plot Files

These files typically look like FOR008.fr where the extension is actually an abbrevation of the cave name.

import { parseFrcsPlotFile } from '@speleotica/frcsdata'
import { parseFrcsPlotFile } from '@speleotica/frcsdata/node'
import { parseFrcsPlotFile } from '@speleotica/frcsdata/string'

These functions return a Promise that resolves to an FrcsPlotFile.