EMInsight is a powerful toolkit designed to enhance the visualization, diagnostics, and analysis of marine geophysical controlled-source electromagnetic (CSEM) response data. This web-based application offers improved data visualizations and hopefully some insights for your CSEM data processing.
- Advanced Data Visualization: Interactive charts and plots for better understanding of marine CSEM responses. Currently only support MARE2DEM data files.
- Scalable Performance: Optimized for large-scale datasets, ensuring smooth performance even with high-resolution data.
- User-Friendly Interface: Built with React, Vite, and TypeScript for an intuitive and responsive user experience.
- Extended Data Format Support: Adding compatibility for more marine EM data and general geophysical data formats.
- Expanded Visualizations: e.g., Navigation dashboard
- Data Editing: Integrating in-app data editing functionality for streamlined workflows. For now, it is highly recommended to perform any data edits in the original data files before uploading them into the app for visualization and analysis. This approach ensures the integrity of the data and allows the app to serve as a powerful decision-making tool based on visualized insights.
- Export results: Export results for further analysis or publication.
Follow these steps to set up EMInsight on your local machine:
- Frontend
- Node.js (test on v22)
- Vite for project build and development
- React and TypeScript
- bun
- Backend
- Python (test on 3.12) for backend data pre-processing and scientific computation
For package manager, I'm using bun but feel free to choose other commonly used package managers, e.g., npm, yarn, etc.
-
Clone the repository:
git clone https://github.com/ycli0536/CSEMInsight.git cd CSEMInsight
-
Install the dependencies (frontend):
cd frontend bun install
-
Run the development server (frontend):
cd frontend bun run dev
-
Set up a Python environment (backend):
cd backend python -m venv env source env/bin/activate # On Windows, use `env\Scripts\activate` pip install -r requirements.txt
-
Run python script (backend) to deploy a development (Not Production!) server:
cd backend python main.py
-
Open the app in your browser at
http://localhost:5173
.
To create an optimized production build (frontend) under frontend/dist
:
cd frontend
bun run build
Once installed, you can upload your CSEM data file directly into the web app to visualize and analyze them. EMInsight provides tools to:
- Plot CSEM responses and perform interactive data visualization.
- Customize visualizations based on user preferences.
This project is licensed under the MIT License. See the LICENSE
file for details.