{"id":24443721,"url":"https://github.com/endlessm/hack-web","last_synced_at":"2025-06-19T00:04:48.806Z","repository":{"id":42767559,"uuid":"237976526","full_name":"endlessm/hack-web","owner":"endlessm","description":"The Hack web version","archived":false,"fork":false,"pushed_at":"2023-01-07T04:48:01.000Z","size":40131,"stargazers_count":3,"open_issues_count":19,"forks_count":1,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-05-30T14:16:46.754Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/endlessm.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}},"created_at":"2020-02-03T13:52:25.000Z","updated_at":"2021-09-02T07:09:02.000Z","dependencies_parsed_at":"2023-02-06T12:16:52.623Z","dependency_job_id":null,"html_url":"https://github.com/endlessm/hack-web","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/endlessm/hack-web","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/endlessm%2Fhack-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/endlessm%2Fhack-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/endlessm%2Fhack-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/endlessm%2Fhack-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/endlessm","download_url":"https://codeload.github.com/endlessm/hack-web/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/endlessm%2Fhack-web/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260654641,"owners_count":23042673,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2025-01-20T22:17:15.077Z","updated_at":"2025-06-19T00:04:43.761Z","avatar_url":"https://github.com/endlessm.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hack-web\n\nThis is the web version of Hack.\n\n## Setup\n\n    yarn install\n    git submodule init\n    git submodule update\n    flatpak install org.freedesktop.Sdk.Extension.mono5//18.08\n\nYou will need the following dependencies: NodeJS and Yarn. See tips\nbelow for installing [NodeJS](#tip-installing-nodejs-in-endless-os)\nand [Yarn](#tip-installing-yarn-in-endless-os) on Endless OS.\n\n## Building\n\nTo build the app, call:\n\n    yarn build\n\nYou can find the built app inside the `build/` folder. You can also\ncall `yarn` in multiple ways while developing. See [the development\ndoc](./HACKING.md#run-test-build) for the available options.\n\n## Project maintenance\n\nSometimes you need to perform actions after you sync your checked-out\nversion of the project with master. There are 2 cases:\n\nEach time dependencies change in the `package.json` file, you should\nrun again:\n\n    yarn install\n\nEach time the submodules get updated in the remote, you'll see a diff\nin the `apps/` folder. You should run:\n\n    git submodule update\n\n## Target Devices\n\nHere are the target devices we support:\n\n- Medium and large screens. Specifically, 960 pixels wide and above.\n- Landscape view (not portrait).\n- \"Modern\" browsers. Specifically, those having:\n  - [Material-UI support](https://material-ui.com/getting-started/supported-platforms/#browser)\n  - [CSS Flexible Box Layout Module](https://caniuse.com/#feat=flexbox)\n  - [Video element](https://caniuse.com/#feat=video)\n\n## Authoring Content\n\nWe use the Ink DSL for user instructions in quests. See\n[WritingQuests](docs/WritingQuests.md) for the conventions added on\ntop of Ink stories to support Hack quests.\n\nSee [Translating](./docs/Translating.md) for how to contribute\ntranslations.\n\n## Development\n\nSee [HACKING.md](./HACKING.md) for general tips and instructions.\n\nSee [Toolbox](./docs/Toolbox.md) for information about defining a\ntoolbox and hooking it to a hackable app.\n\n## Tip: Installing NodeJS in Endless OS\n\nGo to [the NodeJS download page](https://nodejs.org/en/download/) and\ndownload the correct \"Linux Binaries\" package for your system. Most\nlikely, you will want the \"64-bit\" package. Create a `.local` folder\nin your home directory and unzip the downloaded package there:\n\n    mkdir -p ~/.local\n    tar -C ~/.local -xJf node-v12.14.1-linux-x64.tar.xz --strip-components=1\n\nCheck if `~/.local/bin` is in your path (`echo $PATH`) and if not, add\nthe following line to your `~/.bashrc` file:\n\n    export PATH=\"$HOME/.local/bin:$PATH\"\n\nIn the terminal, log in and log out for the changes to take effect.\n\n## Tip: Installing Yarn in Endless OS\n\nDownload the Yarn package:\n\n    wget https://yarnpkg.com/latest.tar.gz\n\nVerify the package:\n\n    wget -qO- https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --import\n    wget https://yarnpkg.com/latest.tar.gz.asc\n    gpg --verify latest.tar.gz.asc\n\nExtract the package in your home directory:\n\n    mkdir -p ~/.yarn\n    tar zvxf latest.tar.gz -C ~/.yarn --strip-components 1\n\nEdit your `~/.bashrc` profile to add the following path:\n\n    export PATH=\"$HOME/.yarn/bin:$PATH\"\n\nIn the terminal, log in and log out for the changes to take effect.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fendlessm%2Fhack-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fendlessm%2Fhack-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fendlessm%2Fhack-web/lists"}