Skip to content

bedrock-engineer/gef-app

Repository files navigation

Bedrock GEF Viewer

Free, open-source web application for viewing and visualizing GEF (Geotechnical Exchange Format) files. GEF is an outdated format, however GEF files are still ubiquitous in geotechnical engineering in the Netherlands and Flanders for CPT and bore data.

License

Live Demo: gef.bedrock.engineer

About

Bedrock Logo

This is a free web application by Bedrock that provides a fast, modern interface for viewing and analyzing GEF files directly in your browser. It also let's you download data from the GEF files as CSV or JSON, and the locations of multiple files as GeoJSON.

Supported GEF Types

GEF-SIEVE and GEF-DISS are not supported.

Technology Stack

Getting Started

Prerequisites

  • Node.js 20 or higher
  • npm

Local Development

git clone https://github.com/bedrock-engineer/gef-webapp.git
cd gef-webapp

npm install

npm run dev

The app will be available at http://localhost:5173

Development Commands

npm run dev        # Start development server with HMR
npm run build      # Create production build
npm run start      # Start production server
npm run typecheck  # Run TypeScript type checking
npm run lint       # Run ESLint
npm run format     # Format code with Prettier

Project Structure

gef-webapp/
├── app/
│   ├── components/       # React components
│   ├── gef/              # GEF file parsing and schemas
│   ├── locales/          # Translation files
│   ├── middleware/       # Request middleware
│   ├── routes/           # React-router route components
│   └── util/             # Utility functions
├── public/               # Static assets
└── workers/              # Cloudflare Workers

Deployment

This application can be deployed to various platforms. See React Router docs on deploying.

Contributing

Contributions are welcome. Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

Development Guidelines

  1. Run npm run typecheck, npm run lint, and npm run knip, read the warnings and use your best judgement before committing
  2. Follow the existing code style
  3. Adding tests for new features, or tests for existing code for that matter, is encouraged

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Support

Bedrock

About

Geotechnical Exchange Format (GEF) File Viewer Web Application

Topics

Resources

License

Stars

Watchers

Forks

Languages