--- title: Culture Compass sdk: static app_file: index.html license: mit datasets: - guicybercode/japan-math-philosophy-prompts - guicybercode/iceland-tech-christian-ethics-prompts tags: - education - multilingual - mathematics - philosophy - technology-ethics --- # Culture Compass Culture Compass is a dependency-free static interface for exploring two small, multilingual datasets published on Hugging Face: - [`guicybercode/japan-math-philosophy-prompts`](https://huggingface.co/datasets/guicybercode/japan-math-philosophy-prompts), with content in `pt-BR`, English, and Japanese; - [`guicybercode/iceland-tech-christian-ethics-prompts`](https://huggingface.co/datasets/guicybercode/iceland-tech-christian-ethics-prompts), with content in `pt-BR` and English. The interface chrome can be switched independently between Brazilian Portuguese, English, and Simplified Chinese. Dataset, content language, and topic filters are kept separate so the interface language never implies that a content translation exists. ## Important status notice Both source datasets are **experimental AI-generated drafts**. They have passed structural checks but have not completed independent human review. Human review is required before classroom use, model use, or promotion as curated material. The interface preserves the source datasets' fictionality, pluralism, cultural boundary, and review notices; it does not turn them into verified cultural or religious claims. ## How it works The browser fetches each selected dataset's public `data/train.jsonl` file from an immutable, reviewed Hugging Face commit: `0b472efffdcd5b0b6a166cab21ca318108711629` for the Japan dataset and `99a46bd5df9d6af3d7226e4836cb28d4d754f3b7` for the Iceland dataset. Updating either snapshot requires an explicit code change and a new Space review. Responses are cached only in memory for the current page session. The app itself adds no analytics, account access, local storage, tracking, server-side processing, or bundled copy of either dataset. Hugging Face serves the page and injects its small public `window.huggingface.variables` metadata object into Static Spaces; Culture Compass does not read or use that object. All remote fields are inserted into the page with DOM `textContent`. The app does not use `innerHTML`, `eval`, or remote templates. Source links and fetch URLs come from a fixed local allowlist. The interface includes loading, empty, error, and retry states. Dataset changes cancel obsolete requests, while successful responses are cached in memory. Remote responses have explicit time, byte-size, and record-count limits. ## Local preview No build step or package installation is needed: ```bash cd activities/culture-compass-space python3 -m http.server 8000 ``` Then open . Network access to `huggingface.co` is needed to load the live source data. ## Tests The suite uses Node's built-in test runner and has no third-party dependencies: ```bash node --test tests/app.test.js ``` The tests exercise JSONL parsing, stable group identity, language/topic filtering, random selection, small schema fixtures, Hugging Face metadata, accessible HTML contracts, remote-text rendering safeguards, responsive CSS, dark mode, and reduced-motion behavior. Fixtures intentionally contain only a few synthetic shape examples rather than copies of the published datasets. ## Accessibility and visual system Culture Compass uses semantic landmarks, a skip link, persistent labels, keyboard-visible focus, an atomic live region, at least 44px control targets, and CSS that remains usable at 375px. The palette and twelve-column editorial grid follow a Swiss Modernism 2.0 direction for adults and educators. Dark mode follows the operating-system preference, and nonessential transitions are removed when reduced motion is requested. Only local system font fallbacks are used; the Space makes no font, image, script, or stylesheet requests to CDNs. ## License The interface code and documentation are licensed under the MIT License. The remote dataset contents are not relicensed or bundled here; each remains under the license and terms stated in its own repository.