{"id":42760421,"url":"https://github.com/open-innovations/yff-data","last_synced_at":"2026-01-29T20:32:42.893Z","repository":{"id":46902839,"uuid":"509464462","full_name":"open-innovations/yff-data","owner":"open-innovations","description":"Source of the Youth Futures Foundation data dashboard","archived":false,"fork":false,"pushed_at":"2024-07-12T07:45:49.000Z","size":13281,"stargazers_count":0,"open_issues_count":33,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-07-13T11:50:41.673Z","etag":null,"topics":["deno","lume"],"latest_commit_sha":null,"homepage":"https://data.youthfuturesfoundation.org/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/open-innovations.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-01T13:25:29.000Z","updated_at":"2024-07-15T09:10:10.435Z","dependencies_parsed_at":"2024-01-08T14:55:42.273Z","dependency_job_id":"31604fff-2422-4ace-b2f0-78ef852df235","html_url":"https://github.com/open-innovations/yff-data","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/open-innovations/yff-data","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-innovations%2Fyff-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-innovations%2Fyff-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-innovations%2Fyff-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-innovations%2Fyff-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-innovations","download_url":"https://codeload.github.com/open-innovations/yff-data/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-innovations%2Fyff-data/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28884291,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-29T19:55:09.949Z","status":"ssl_error","status_checked_at":"2026-01-29T19:55:08.490Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deno","lume"],"created_at":"2026-01-29T20:32:42.122Z","updated_at":"2026-01-29T20:32:42.889Z","avatar_url":"https://github.com/open-innovations.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# yff-data\n\n\u003e Source of the Youth Futures Foundation data portal\n\nTo run the latest version of the code, set the VERSION environmment variable. On a macos / Linux platform this can be done as follows:\n\n```sh\nVERSION=v2 deno task serve\n```\n\n## Data\n\nData to drive visualisations is managed in the `_data/sources` directory.\nThis allows it to be loaded as [Lume shared data](https://lume.land/docs/creating-pages/shared-data/).\nDuring the build process, this directory is first copied to the `src/data` directory, and from there\nto the `/data` path in the built site. This provides the exact data used as a static asset.\n\nIn visualisations, the path to data files is provided in the format `/data/path/to/data.csv`.\nThis is converted to the loaded data path (e.g. `sources.path.to.data`) by the visualisation components.\nPlease note, that the extension is ignored. Note that data files with the same name but a different\nextension will be merged at the object level. Any keys will be taken from the last loaded value, which is \npotentially indeterminate! The safest thing is to ensure no potential clashes.\n\n### Importing external data\n\nRemote data is imported using the `dvc import-url` command.\n\n```sh\ndvc import-url \u003cremote_url\u003e (\u003clocal_filename\u003e)\n```\n\nThis creates a `\u003clocal_filename\u003e.dvc` which tracks the remote file. It can be refreshed using the command `dvc update \u003clocal_filename\u003e.dvc`. To refresh a whole directory, run\n\n```sh\ndvc update -R working\n```\n\nIf the entry `frozen: true` is removed from the `\u003clocal_filename\u003e.dvc` file, the `repro` subcommand can also be used. To run all the pipelines, including pulling data updates, this should suffice.\n\n```sh\ndvc repro -R scripts\n```\n\n## Pre-requisites\n\nYou will need to have [`deno` installed](https://deno.land/#installation) and in your path.\n\n## Building / Serving\n\nThe `deno.json` file includes useful tasks:\n\n`deno task serve` - serves the site at https://localhost:3000/.\n\n`deno task build` - builds the site into `_site`\n\n## Versioned content\n\nNavigation order and inclusion is set on a per-page basis by including the nav_order data in the front-matter for a page. It takes the following format:\n\n```\nnav_order:\n  \u003cversion_tag\u003e: \u003cordering\u003e\n```\n\nin `_config.ts`, the `version` global data is set. By convention this is set to `v1`, `v2`, etc - but could be anything.\n\nThe `nav` component interprets this and selects the pages to include based on the presence of the relevant key.\n\nSimilarly, the homepage versions (`/home/v1.njk`, `/home/v2.njk`) are set to be the site homepage by comparison between their slug (`v1`, `v2`) and the global data version. If the slug matches the version, the url for the page is set to `/`, otherwise it defaults to `/home/v\u003cx\u003e/`. This is done in the `/home/_data.ts` file.\n\n## Troubleshooting\n\nIf the site fails to build based on memory errors, you can try adding the following to the invocation of `deno` in the `deno.json` file.\n\n```\ndeno run --v8-flags=--max-old-space-size=2048...\n```\n\n## License\n\nThe code to build this portal is [licensed under the terms of an MIT License](./LICENSE) by [Open Innovations](https://open-innovations.org).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-innovations%2Fyff-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopen-innovations%2Fyff-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-innovations%2Fyff-data/lists"}