{"id":13685279,"url":"https://github.com/dfinity/cancan","last_synced_at":"2025-09-02T16:56:01.084Z","repository":{"id":39003622,"uuid":"365059366","full_name":"dfinity/cancan","owner":"dfinity","description":"A scalable video sharing service.","archived":false,"fork":false,"pushed_at":"2025-08-28T13:43:24.000Z","size":14600,"stargazers_count":339,"open_issues_count":32,"forks_count":68,"subscribers_count":27,"default_branch":"main","last_synced_at":"2025-08-28T20:58:15.200Z","etag":null,"topics":["canister","dfx","ic","internet-computer","motoko"],"latest_commit_sha":null,"homepage":"http://sdk.dfinity.org","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dfinity.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-05-06T23:11:55.000Z","updated_at":"2025-08-28T13:43:27.000Z","dependencies_parsed_at":"2024-01-07T18:05:09.874Z","dependency_job_id":"68139a12-a45f-46cf-8250-5c0a6ba96945","html_url":"https://github.com/dfinity/cancan","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dfinity/cancan","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fcancan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fcancan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fcancan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fcancan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dfinity","download_url":"https://codeload.github.com/dfinity/cancan/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dfinity%2Fcancan/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273317764,"owners_count":25084037,"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","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["canister","dfx","ic","internet-computer","motoko"],"created_at":"2024-08-02T14:00:48.089Z","updated_at":"2025-09-02T16:56:01.054Z","avatar_url":"https://github.com/dfinity.png","language":"TypeScript","readme":"# CanCan\n\n[![Build Status](https://github.com/dfinity/cancan/workflows/CI/badge.svg)](https://github.com/dfinity/cancan/actions)\n\n\u003e A scalable video-sharing service.\n\n## Installation\n\n### Prerequisites\n\n- [Internet Computer SDK](https://sdk.dfinity.org)\n- [Node.js](https://nodejs.org)\n- [Python](https://www.python.org)\n- [Vessel@0.6.0](https://github.com/dfinity/vessel/releases/tag/v0.6.0)\n\nIf you don't have vessel yet you can install it by running an install script included in the project:\n\n```shell\n$ ./scripts/vessel-install.sh\n```\nMacOS might ask if you're sure you trust this package. You can safely accept\n\nDouble-check you have [vessel](https://github.com/dfinity/vessel) installed at version 0.6.*, then clone this repository and navigate to the `cancan` directory.\n\n\n```shell\n$ vessel --version\n# vessel 0.6.0\n\n$ git clone git@github.com:dfinity/cancan.git\n$ cd cancan\n```\n\nStart a local Internet Computer replica.\n\n```shell\n$ dfx start\n```\n\nExecute the following commands in another terminal tab in the same directory.\n\n```shell\n$ npm ci # \u003c- This installs packages from the lockfile for consistency\n\n$ ./bootstrap.sh\n```\n\nThis will deploy a local canister called `cancan_ui`. To open the front-end, get the asset canister id by running `dfx canister id cancan_ui`. Then open your browser, and navigate to `http://\u003ccancan_ui-canister-id\u003e.localhost:8000/sign-in`.\n\n## Frontend Development\n\nTo run a development server with fast refreshing and hot-reloading, you can use this command in the app's root directory:\n\n```shell\n$ npm run start\n```\n\nYour default browser will open (or focus) a tab at `localhost:3000`, to which you must then append `/?canisterId=${cancan_ui_canister_id}`, where `cancan_ui_canister_id` is typically (at current) `ryjl3-tyaaa-aaaaa-aaaba-cai`.\n\nNow you can make changes to any frontend code and see instant updates, in many cases not even requiring a page refresh, so UI state is preserved between changes. Occasionally adding a CSS rule won't trigger an update, and the user has to manually refresh to see those changes.\n\n## Internet Identity Locally\n\nClone and setup [the project](https://github.com/dfinity/internet-identity) and make sure that `internet_identity` is deployed, and you have the front-end available. That should allow you to do auth locally to try out the new Internet Identity service. For production, we will probably configure `identity.ic0.app` to be running this canister, but for now this is how to get it running.\n\n","funding_links":[],"categories":["DAPP","Applications","TypeScript"],"sub_categories":["ICP \u0026 Cycles","Video"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdfinity%2Fcancan","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdfinity%2Fcancan","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdfinity%2Fcancan/lists"}