Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

[Version 0.2]

PEPFAR ICPI GIS CLUSTER

A repository containing geospatial scripts, web mapping examples, organizational materials & resources for the PEPFAR GIS community of practice


About this Repository:

This repository is a living resource that introduces knowledge and practical skills needed to develop geospatial visualizations for HIV epidemic control. The repository sections include code, data, issues, and project management, as well as a wiki that organizes a wide array of resources for the PEPFAR GIS Community of Practice.

This page organizes code, tools, and tutorials centered on technical skills. Below are tutorials on QGIS, a widely used GIS software. The tutorials found within this repository are meant to give users only the most basic geographic concepts. The purpose is to quickly facilitate the ability to use GIS in support of PEPFAR.

Users may contact ICPI for more information on anything contained withing this repository.


Table of Contents

Category 1 - QGIS Tutorials

Category 2 - Geospatial Scripts

Other Category - GIS Cluster Files

  • This folder contains working files for the GIS cluster.

Technical Skills and Foundational Knowledge

While this repo does contain foundational QGIS skills, code-based tools will vary depending on the use case. Each use case will have a skill level clearly labelled at the beginning. Users can expect the following to be used throughout this repo:


Commonly Asked Questions

Where can I find shapefile datasets?

  • Reference shapefiles can be found on PEPFAR's ArcGIS Online database. There are two way to access these data. 1) Esri organizational account holders (e.g. through USAID or CDC) can request to join the PEPFAR AGOL Group. 2) PEPFAR GIS users may also request administrative unit boundaries that include DATIM uid in the attribute table directly from the GIS Cluster.

Where can I find health facility coordinates?

  • Due to the sensitive nature of site level information, these datasets must be requested from the GIS cluster.

Where can I find UID information?

  • UID information can be found in the attribute tables of PEPFAR shapefiles, the MSDs, or through DATIM. Access to uid codes for complete DATIM organization unit hierarchies may be found in the DATIM Data Import and Exchange Resources page under “Org Unit”.

About

Organizational materials for the GIS Team & resources for the GIS community of practice

Resources

Stars

4 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages