Use `geopandas` to open shapefiles. ```python import geopandas as gpd gdf = gpd.read_file('path/to/shapefile.shp') ``` To read the CRS ```python gdf.crs --- <Projected CRS: EPSG:3857> Name: WGS 84 / Pseudo-Mercator Axis Info [cartesian]: - X[east]: Easting (metre) - Y[north]: Northing (metre) Area of Use: - name: World between 85.06°S and 85.06°N. - bounds: (-180.0, -85.06, 180.0, 85.06) Coordinate Operation: - name: Popular Visualisation Pseudo-Mercator - method: Popular Visualisation Pseudo Mercator Datum: World Geodetic System 1984 ensemble - Ellipsoid: WGS 84 - Prime Meridian: Greenwich ``` For most web applications, you will want to use EPSG code 4326 (WGS 84), a geographic coordinate system. ```python gdf.to_crs(epsg=4326) gdf.crs --- <Geographic 2D CRS: EPSG:4326> Name: WGS 84 Axis Info [ellipsoidal]: - Lat[north]: Geodetic latitude (degree) - Lon[east]: Geodetic longitude (degree) Area of Use: - name: World. - bounds: (-180.0, -90.0, 180.0, 90.0) Datum: World Geodetic System 1984 ensemble - Ellipsoid: WGS 84 - Prime Meridian: Greenwich ``` Plot the data to quickly visualize with ```python gdf.plot() ``` To convert to GeoJSON, use ```python gdf.write_file('out.geojson', driver='GeoJSON') ```