GithubHelp home page GithubHelp logo

chakshugautam / geoquery.in Goto Github PK

View Code? Open in Web Editor NEW
28.0 2.0 82.0 1.36 GB

Service to get Location from ipv4 and ipv6

Home Page: https://geoquery.in

JavaScript 85.79% HTML 5.33% Dockerfile 0.70% CSS 3.57% Shell 4.61%
hacktoberfest geoip maxmind-geoip

geoquery.in's Introduction

GeoQuery.in

Open Mapping Infrastructure

Vision

Our vision.

Example

See code example in the server folder.

Setup Server

Run ./setup.sh. This script will install bun and download required files to setup server

cd server
./setup.sh

Start Server

bun app.js

Docker Container Setup and Usage Guide

This guide provides instructions for using the Docker container to deploy and interact with the application. The Docker container contains an application that provides location information based on district centroids.

Prerequisites

Before getting started, ensure that you have Docker installed on your system. Refer to the Docker installation documentation for installation instructions based on your operating system.

Setup Docker Container

Once Docker is installed, follow the steps below to set up and run the Docker container:

  1. Clone the repository containing the Dockerfile and application files.

    git clone https://github.com/ChakshuGautam/geoquery.in
  2. Change working dir to server

    cd geoquery.in/server
  3. Build the Docker image using the provided Dockerfile with the following command:

    docker build . -t geoquery

    Note: After adding your user to the Docker group, you can run Docker commands without using sudo. If you haven't added your user to the Docker group, remember to use sudo before Docker commands.

  4. Run the Docker container using the following command:

    docker run -d geoquery

This command will start the Docker container in detached mode, allowing you to interact with the application.

Interacting with the Application

Once the Docker container is running, you can interact with the application using the provided commands.

  1. Check Docker Container Status

    To check the status of the Docker container, use the following command:

    docker ps

    This command will display a list of running Docker containers along with their details. Store "Container ID"

  2. Retrieve Container IP Address

    To retrieve the IP address of the Docker container, use the following command:

    docker inspect <container_id> | grep -i "ipaddress" | grep -o '"IPAddress": "[^"]*' | grep -o '[^"]*$' | head -n1

    Replace <container_id> with the ID of the running Docker container.

  3. Access Application Endpoint

    To access the application endpoint and retrieve location information, use the following command:

    curl "http://<container_ip_address>:3000/location/DISTRICT/centroid?query=<location_query>"

    Replace <container_ip_address> with the IP address of the Docker container obtained in the previous step, and <location_query> with the desired location query.

    Example:

    curl "http://172.17.0.2:3000/location/DISTRICT/centroid?query=lucknow"

    Here we have replaced <container_ip_address> with the actual IP address we obtained. This command will retrieve information about the centroid of the district "Lucknow".

API

Works with both ipv4 and ipv6.

Get geolocation corresponding to given IP

curl https://geoip.samagra.io/city/128.101.101.101

Get geolocation for given lat & lon

curl https://geoip.samagra.io/georev?lat=28.7041&lon=77.1025

Get polygon centroid for given STATE/DISTRICT/SUBDISTRICT with some query

curl https://geoip.samagra.io/location/DISTRICT/centroid?query=lucknow

Fuzzy search location by name with STATE/DISTRICT/SUBDISTRICT/VILLAGE levels with query & location level filters in request body, filter keys should one of these STATE/DISTRICT/SUBDISTRICT/VILLAGE.

curl --location 'https://geoip.samagra.io/location/VILLAGE/fuzzysearch' \
--header 'Content-Type: application/json' \
--data '{
    "query": "Arong",
    "filter": {
        "STATE": "Andaman & Nicobar Islands",
        "DISTRICT": "Nicobars"
    }
}'
# Response
{
    "matches": [
        {
            "state": "Andaman & Nicobar Islands",
            "district": "Nicobars",
            "subDistrict": "Car Nicobar",
            "village": "Arong"
        }
    ]
}

Notes

DB will remain updated automatically. Please create a ticket if you see some issues.

Contribution Guide

  1. Please consider issues up from grabs.
  2. It will only be assigned with a PR.

geoquery.in's People

Contributors

35c4n0r avatar ahsanayaz avatar aryanmishra29 avatar biswapremsahu77 avatar chakshugautam avatar dhruv-1001 avatar gauravdcap avatar harsh06-afk avatar jainvedant392 avatar ksauraj avatar kumarguddu609 avatar mayasatishrao avatar mr-sunglasses avatar sagarkori143 avatar singhalkarun avatar srijan-ss02 avatar sumsum1231 avatar sweetdevil144 avatar utkarshahuja2003 avatar vilol-04 avatar zeel991 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

geoquery.in's Issues

Village data collection

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

List to track data collection progress

Note: Comment on this issue if you are interested. And i'll create and assign the state ticket for you.

Village Data Collection - Chhattisgarh

Description

This issue tracks the village data collection for state - Chattisgarh

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - MANIPUR

Description

This issue tracks the village data collection for state - Manipur

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - PUDUCHERRY

Description

This issue tracks the village data collection for state - Puducherry

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - WEST BENGAL

Description

This issue tracks the village data collection for state - West Bengal

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Implement Reverse Geocoding Feature

Description

This issue tracks the implementation of a reverse geocoding feature in our application. Reverse geocoding is the process of converting geographic coordinates into a human-readable address or place name. This feature is essential for applications that need to translate location data into understandable location names.

Implementation Details

1. Define the API

  • Task: Design and define the API for reverse geocoding. The API definition needs to be added here - https://github.com/ChakshuGautam/geoip/blob/master/server/spec.yaml
  • Details: The API should be capable of accepting geographic coordinates (latitude and longitude) and returning the corresponding address or place name.
  • Approval: The API design needs to be reviewed and approved before proceeding with implementation.

2. Implement Server Logic

  • Task: Develop the server-side logic to handle the reverse geocoding requests.
  • Details: This involves integrating the approved OpenAPI Specification and ensuring the server correctly processes incoming requests and communicates with the geocoding service. The implementation will lie in this file - https://github.com/ChakshuGautam/geoip/blob/master/server/app.js
  • Dependence: This step is contingent upon the approval of the API design.

3. Add Tests

4. Update Documentation

  • Task: Update the main README file to include information about the new reverse geocoding feature.
  • Details: The documentation should clearly explain how to use the feature, any limitations, and provide examples.

Resources

  • GeoJSONs for testing and implementation can be found here.

Expected Outcomes

  • A fully functional reverse geocoding API integrated into our server.
  • Comprehensive tests ensuring the reliability of the feature.
  • Updated documentation for easy use and understanding of the new feature.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Node JS

Category

Feature

Mentor(s)

@ChakshuGautam

Complexity

High

[DMP 2024]: Setup Map Visualisation Infrastructure

Introduction

Integrate OpenStreetMap for India (with only Indian tiles). This integration involves setting up both frontend and server components. OpenLayers will be used as the UI library for rendering tiles, and tileserver-gl will serve the tiles. Additionally, basic searching functionalities for local government bodies, roads, and places of national interest will be implemented. Deployment scripts for large-scale infrastructure will be created, along with comprehensive documentation covering research and learnings.

Openlayers is a UI library that renders tiles. It expects an API server that serves tiles.
tileserver-gl is a server to serve tiles built by the same team behind OSM.

Goals & Mid-Point Milestone

References

  1. https://github.com/mapbox/awesome-vector-tiles/

Expected Outcome

A fully integrated OpenStreetMap solution tailored for India, allowing users to access Indian tiles and perform basic searches for local government bodies, roads, and places of national interest. Deployment scripts and comprehensive documentation will facilitate easy deployment and maintenance.

Acceptance Criteria

No response

Mockups/Wireframes

No response

Product Name

GeoQuery.in

Organisation Name

SamagraX

Domain

Maps

Tech Skills Needed

JavaScript, Other

Mentor(s)

@ChakshuGautam

Category

API

Enhance Project Structure and Development Workflow

  • Add script to setup server
  • Project structure enhancement (Router Integration)
  • Add prettier for code formatting
  • Add API docs
  • Add monitoring
  • Add API health status
  • API to fetch data collection progress
  • Master ticket to track data fetched
  • Home page
  • Documenting how to fetch village data
  • Document Git LFS for storing village data
  • Script to convert .zip to geoJSON
  • Making sure our API matches google APIs
  • Deployment (only fetch files if .zip changes)
  • Version controlling
  • Document directory structure
  • Script to create all administrative boundary json
  • Design common property, for geoJSON

Different Data Sources

Village Data Collection - Andaman and Nicobar

Description

This issue tracks the village data collection for state - Andaman and Nicobar

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - UTTAR PRADESH

Description

This issue tracks the village data collection for state - Uttar Pradesh

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Geojson Data Indexing

Description

This issue tracks progress on indexing of boundary locations. Once you setup the server, PARSED_MASTER_LOCATION_NAMES.json file gets added to /server/geojson-data directory. This files contains all of the administrative boundaries of India, from state level down to village level as such State -> District -> Sub-District -> Village.
Create a script, that uses this file, and then generates a JSON which indexes on what all data do we have available of state, district, sub-district & village. On top of that, design an API that read & returns from this generated JSON based on user query.

Implementation Details

1. Define the feature

  • Task: Design the indexing script & APIs
  • Details: Explain on how the indexing script would be working, and what will be the structure for API.
  • Approval: This needs to be reviewed and approved before proceeding with implementation.

2. Implementing the limiter

  • Task: Implementation of the script & APIs
  • Details: Script should be automatically be able to pickup new geojson-data files added, and create the index json accordingly. APIs should be optimised to return response with low latency. This index will be displayed on front-end application as an expandable tree, so implement the API accordingly.
  • Dependence: This step is contingent upon the approval of this feature

Expected Outcomes

  • Having a check, that ensures that no client tries to intentionally stress the server.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Node JS

Category

Feature

Mentor(s)

@ChakshuGautam

Complexity

High

Village Data Collection - MEGHALAYA

Description

This issue tracks the village data collection for state - Meghalaya

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - Jharkhand

Description

This issue tracks the village data collection for state - Jharkhand

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - TRIPURA

Description

This issue tracks the village data collection for state - Tripura

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - HIMACHAL PRADESH

Description

This issue tracks the village data collection for state - Himachal Pradesh

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - Delhi

Description

This issue tracks the village data collection for state - Delhi

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - LAKSHADWEEP

Description

This issue tracks the village data collection for state - Lakshadweep

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Add Proper Logging

Description

This issue tracks the implementation of a Proper Logging in our application.

Implementation Details

1. Define the API

  • Task: Design Logger class.
  • Details: Design a Logger class which have 4 levels of logging [debug, info, warn, error]. Omit logging for debug & info in case of production build.
  • Approval: The class design needs to be reviewed and approved before proceeding with implementation.

2. Implement Logger Class Logic

  • Task: Adding logger to required places.
  • Details: Add proper logging throughout the application, where there is need for logging both in deployment & production mode.
  • Dependence: This step is contingent upon the approval of the API design.

Resources

  • winston package can be used for logging.

Expected Outcomes

  • Useful logs throughout the application
  • Logger should work in 2 modes development & production [value to be picked up from .env]

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Node JS

Category

Feature

Mentor(s)

@ChakshuGautam

Complexity

Low

Add API that returns geoJSON for a query

Description

This issue tracks the implementation of an API that return geoJSON for given query

Implementation Details

1. Define the API

  • Task: Design and define the API /getGeoJSON. The API definition needs to be added here - https://github.com/ChakshuGautam/geoip/blob/master/server/spec.yaml
  • Details: The API should be capable of accepting location name in query and should be able to perform search on multiple geolocation levels that is <district|state|subdistrct|city|ward> and should return geoJSON based on the search. This can have multiple hits for locations with similar names. There should be additional query parameters to filter out the data accordingly.
  • Approval: The API design needs to be reviewed and approved before proceeding with implementation.

2. Implement Server Logic

  • Task: Develop the server-side logic to handle the above defined API
  • Details: This involves integrating the approved OpenAPI Specification and ensuring the server correctly processes incoming requests and communicates with the geocoding service. The implementation will lie in this file - https://github.com/ChakshuGautam/geoip/blob/master/server/app.js
  • Dependence: This step is contingent upon the approval of the API design.

3. Add Tests

4. Update Documentation

  • Task: Update the main README file to include information about the new API
  • Details: The documentation should clearly explain how to use the feature, any limitations, and provide examples.

Resources

  • GeoJSONs for testing and implementation can be found here.

Expected Outcomes

  • A fully functional reverse getGeoJSON API integrated into our server.
  • Comprehensive tests ensuring the reliability of the feature.
  • Updated documentation for easy use and understanding of the new feature.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Node JS

Category

Feature

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - PUNJAB

Description

This issue tracks the village data collection for state - Punjab

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

API Rate Limiter

Description

This issue tracks progress on adding rate limiter to APIs

Implementation Details

1. Define the feature

  • Task: Design how the limiter would work.
  • Details: Explain on how the limiter would be working, and how does the server handle the request once the user hits the limit of requests for them.
  • Approval: This needs to be reviewed and approved before proceeding with implementation.

2. Implementing the limiter

  • Task: Implementation of the limiter
  • Details: Implement rate limiter feature according to the approved feature design.
  • Dependence: This step is contingent upon the approval of this feature

Expected Outcomes

  • Having a check, that ensures that no client tries to intentionally stress the server.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Node JS

Category

Feature

Mentor(s)

@ChakshuGautam

Complexity

Medium

Village Data Collection - ARUNACHAL PRADESH

Description

This issue tracks the village data collection for state - Arunachal Pradesh

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Add Script to convert .gdb to geoJSON

Description

This issue tracks progress on adding script that converts .gdb files to .geoJSON

Implementation Details

1. Define the Script

  • Task: Design how the script will work.
  • Details: List out how the script will read - parse - convert the .gdb data to required geoJSON. Data to be parse is defined in this issue #28.
  • Approval: This needs to be reviewed and approved before proceeding with implementation.

2. Add the script & Raise a PR

  • Task: Implementing the script
  • Details: The script should be able to perform all that is defined in step 1 of implementation details. And the output should be stored inside of <project_root>/geojson-data/
  • Dependence: This step is contingent upon the approval of the Script

Expected Outcomes

  • Have a script, that can fetch parse data from the data repository, and store it in a meaningful way that can be used by the server, inside of geojson-data folder. Rest of the file structure should be mimicked from the repository the data is fetched from.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Node JS

Category

Feature

Mentor(s)

@ChakshuGautam

Complexity

Medium

Village Data Collection - HARYANA

Description

This issue tracks the village data collection for state - Haryana

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - CHANDIGARH

Description

This issue tracks the village data collection for state - Chandigarh

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - MIZORAM

Description

This issue tracks the village data collection for state - Mizoram

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - Tamil Nadu

Description

This issue tracks the village data collection for state - Tamil Nadu

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - ASSAM

Description

This issue tracks the village data collection for state - Assam

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Village Data Collection - MADHYA PRADESH

Description

This issue tracks the village data collection for state - Madhya Pradesh

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Benchmarking different algo to speed up search.

Description

Right now we have 4 administrative boundaries. State, District, Sub District, Village.
After project setup, master list for this can be found under server/geojson-data as PARSED_MASTER_LOCATION_NAMES.json which is derived from MASTER_LOCATION_NAMES.json.

We have an API that does fuzzy search on all levels, and returns the matches.
Right now the implementation is using Fuse, which is really slow. (implementation inside server/location.search.js
We need to benchmark the search with different algo(s) that uses trie data structure. Do some research on what provides us with best results.

References:
https://gist.github.com/smhanov/94230b422c2100ae4218
https://docs.rs/rsmorphy/latest/rsmorphy/dawg/index.html
https://johnresig.com/blog/javascript-trie-performance-analysis/
https://github.com/gotenxds/WordGraphs

Village Data Collection - UTTARAKHAND

Description

This issue tracks the village data collection for state - Uttarakhand

Implementation Details

Visit onlinemaps.surveyofindia.gov.in
Complete Sign In
Update your profile.

Look for this GEODATABASE

Select Click to buy

Select State & Dist you want to download data for. Keep adding till you have added all the districts for a state.
Images for reference

Place order on next screen. Download data one-by-one.
Download page

Data downloaded will be in .zip format, with file names as such

  • Village Boundary Database.zip
  • Village Boundary Database (1).zip
  • Village Boundary Database (2).zip
  • ... and so on

Extract these files
You will have .gdb folders for districts you have downloaded as such

  • AGRA.gdb
  • ALIGARH.gdb
  • PRAYAGRAJ.gdb
  • ... and so on

Now convert these files to .zip, to have files like this

  • AGRA.zip
  • ALIGARH.zip
  • PRAYAGRAJ.zip
  • ... and so on
    .zip to be created using this tool.

Now that you have .zip files for all districts of a state. You now need to upload these files to this repository using git lfs.

How to upload .zip files using git lfs

Make sure you have git lfs installed. Follow instructions provided here.

Once you have installed git lfs. Add everything you have downloaded, inside server/geojson-data/indian_village_boundaries.zip/ folder inside of a folder named after the state you have downloaded village data for.
Following the example above, it would look like such.

  • indian_village_boundaries.zip
    • uttar_pradesh
      • AGRA.zip
      • ALIGARH.zip
      • PRAYAGRAJ.zip

Once you have files in this file structure, follows this documentation to add downloaded files using git lfs.

Once you are done, open up a PR to this repository

Resources

Expected Outcomes

  • Repository should have village data for all districts of given state.

Product Name

GeoIP

Project Name

GeoIP

Organization Name

SamagraX

Domain

NA

Tech Skills Needed

Git LFS

Category

Data Collection

Mentor(s)

@ChakshuGautam

Complexity

Low

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.