{"id":45643087,"url":"https://github.com/revisit-studies/study","last_synced_at":"2026-03-04T09:03:12.541Z","repository":{"id":161276387,"uuid":"567894372","full_name":"revisit-studies/study","owner":"revisit-studies","description":"Create your own study by cloning and editing configs; or check out the code behind the study components.","archived":false,"fork":false,"pushed_at":"2026-02-24T01:37:41.000Z","size":900204,"stargazers_count":38,"open_issues_count":72,"forks_count":209,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-02-24T07:59:26.094Z","etag":null,"topics":["experimentation","research","user-study","visualization"],"latest_commit_sha":null,"homepage":"https://revisit.dev/study/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/revisit-studies.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2022-11-18T20:54:55.000Z","updated_at":"2026-02-24T01:19:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"40ab7c5b-9a4f-4845-a785-2cce2dc68f62","html_url":"https://github.com/revisit-studies/study","commit_stats":null,"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"purl":"pkg:github/revisit-studies/study","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revisit-studies%2Fstudy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revisit-studies%2Fstudy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revisit-studies%2Fstudy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revisit-studies%2Fstudy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/revisit-studies","download_url":"https://codeload.github.com/revisit-studies/study/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revisit-studies%2Fstudy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30076935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T08:01:56.766Z","status":"ssl_error","status_checked_at":"2026-03-04T08:00:42.919Z","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":["experimentation","research","user-study","visualization"],"created_at":"2026-02-24T03:12:03.307Z","updated_at":"2026-03-04T09:03:12.536Z","avatar_url":"https://github.com/revisit-studies.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ReVISit study – Interactive, Web-Based User Studies.\n\nCreate your own interactive, web-based data visualization user studies by cloning/forking and editing configuration files and adding stimuli in the `public` folder.\n\nReVISit introduces reVISit.spec, a DSL for specifying study setups (consent forms, training, trials, etc.) for interactive web based studies. You describe your experimental setup in reVISit.spec, add your stimuli as images, forms, HTML pages, or React components, build and deploy — and you're ready to run your study. For tutorials and documentation, see the [reVISit website](https://revisit.dev).\n\n## Build Instructions\n\nTo run this demo experiment locally, you will need to install Node.js on your computer.\n\n* Clone `https://github.com/revisit-studies/study`\n* Run `yarn install`. If you don't have Yarn installed, run `npm i -g yarn`.\n* To run locally, run `yarn serve`.\n* Go to [http://localhost:8080](http://localhost:8080) to view it in your browser. The page will reload when you make changes.\n\n## Adding Tests\n\nThis repo uses two test types:\n\n* **Unit tests** with **Vitest** for parser, utility, and component logic.\n* **End-to-end (E2E) tests** with **Playwright** for participant/designer flows in a running app.\n\n### Unit tests (Vitest)\n\n* Co-locate unit tests with the source file they cover.\n* Use the same base filename and add `.spec.` (for example: `src/parser/parser.ts` -\u003e `src/parser/parser.spec.ts`).\n* Use `vitest` APIs (`describe`, `test`/`it`, `expect`).\n* Run unit tests with:\n\n```bash\nyarn unittest\n```\n\n### E2E tests (Playwright)\n\n* Put E2E tests in the root `tests/` directory.\n* Name files with `.spec.ts` (for example: `tests/demo-vlat.spec.ts`).\n* Keep tests focused on user-observable behavior (navigation, input, progression, reviewer/designer behavior).\n* Run E2E tests with:\n\n```bash\nyarn test\n```\n\n## Release Instructions\n\nReleasing reVISit.dev happens automatically when a PR is merged into the `main` branch. The name of the pull request should be the title of the release, e.g. `v1.0.0`. Releasing creates a tag with the same name as the PR, but the official GitHub release should be created manually. The `main` branch is protected and requires two reviews before merging.\n\nThe workflow for release looks as follows:\nDevelop features on feature branch\n| PRs\nDev branch\n| PR (1 per release)\nMain branch\n| Run release workflow on merge\nReferences are updated and commit is tagged\n\n### Release Follow-Up\n\n- [ ] Verify docs links in the [Study Repository](https://github.com/revisit-studies/study) are up to date and point to the current reVISit documentation pages.\n- [ ] After the release is complete, run the template update process so downstream study templates include the latest release changes.\n\n\n## QC Checklist\n\n### [Study Repository](https://github.com/revisit-studies/study)\n\n**Studies**\n- [ ] Review all studies for any crashes/bugs\n- [ ] Check provenance data (audio, screen, etc.)\n\n**File Download**\n- [ ] JSON export\n- [ ] Tidy download export\n- [ ] Download audio recordings\n- [ ] Download screen recordings\n- [ ] Download configs\n\n**Docs**\n- [ ] Update comments in `store/types.ts`, `parser/types.ts`, `storage/types.ts`, `storage/engines/types.ts`\n- [ ] Update `typedocReadMe.md`\n\n### [Documentation Repository](https://github.com/revisit-studies/reVISit-studies.github.io)\n- [ ] Review docs\n- [ ] Review [library list](https://revisit.dev/docs/designing-studies/plugin-libraries/)\n- [ ] Check for typos / outdated docs\n- [ ] Validate example code\n- [ ] Update screenshots\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frevisit-studies%2Fstudy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frevisit-studies%2Fstudy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frevisit-studies%2Fstudy/lists"}