culture-compass / README.md
guicybercode's picture
Clarify app-level privacy wording
b1d9d4f verified
|
Raw
History Blame Contribute Delete
4.19 kB
---
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 <http://localhost:8000>. 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.