Landscape Explorer is a React-based web application for visualizing geospatial data using interactive maps. It enables users to explore landscapes through administrative boundaries, filters, and pattern-based visualizations.
Tech Stack
- React
- OpenLayers
- Node.js / npm
- GeoServer
📦 Prerequisites
Ensure the following are installed:
- Node.js (v16+ recommended)
- npm
🛠️ Setup & Installation
1. Clone the repository
git clone https://github.com/core-stack-org/landscape-explorer.git
cd landscape-explorer2. Install dependencies
npm install
3. Environment Variables Setup
Create a .env file in the root directory of the project where the package.json is located.
touch .env
Add the following variables to .env
REACT_APP_API_URL="https://geoserver.core-stack.org/api/v1" REACT_APP_GOOGLE_KEY="xxx" REACT_APP_GEOSERVER_URL="https://geoserver.core-stack.org:8443/geoserver/" # Google Analytics REACT_APP_GA_MEASUREMENT_ID="xxx" REACT_APP_API_KEY="xxx" REACT_APP_WATERBODYREJ_USERNAME="xxx" REACT_APP_WATERBODYREJ_PASSWORD="xxx" REACT_APP_BASEURL="https://geoserver.core-stack.org"
4. Running the Application
npm run start
The application will be available at:
http://localhost:3000
Common Issue: react-icons/gi Not Found
In some cases, after running npm install, the application may fail to start due to a missing react-icons/gi module.
Fix
Install the missing dependency manually:
npm install react-icons
Then restart the development server:
npm run start
🤝 Contributing
We welcome contributions to Landscape Explorer. Please follow the guidelines below to ensure a smooth collaboration process.
Getting Started
-
Fork the Repository
Create your own fork of the repository to start working on the codebase. -
Clone Your Fork
git clone https://github.com/core-stack-org/landscape-explorer.git cd landscape-explorer -
Work on the development Branch Always switch to the development branch before starting your work:
git checkout development
Working on Issues
If you want to work on an existing issue:
- Comment on the issue expressing your interest.
- Tag any of the repository maintainers.
- Wait until the issue is officially assigned to you.
- After assignment, start working on the implementation.
- Submit your changes through a Pull Request.
Submitting a Pull Request
Ensure your branch is updated with the latest development branch.
- Push your changes to your fork.
- Create a Pull Request (PR) targeting the
developmentbranch. - Provide a clear description of:
- What changes were made
- Why the changes were made
- Any related issue number (if applicable)