Create your own interactive, web-based data visualization user studies by cloning/forking and editing configuration files and adding stimuli in the public folder.
reVISit 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.
To run this demo experiment locally, you will need to install node on your computer.
- Clone
https://github.com/revisit-studies/study - Run
yarn install. If you don't have yarn installed, runnpm i -g yarn. - To run locally, run
yarn serve. - Go to http://localhost:8080 to view it in your browser. The page will reload when you make changes.
Releasing 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 GitGub release should be created manually. The main branch is protected and requires two reviews before merging.
The workflow for release looks as follows: Develop features on feature branch | PRs Dev branch | PR (1 per release) Main branch | Run release workflow on merge References are updated and commit is tagged
The question mic "Summarize responses" flow needs a server-side endpoint because it calls OpenAI with a secret key. Local development uses the Vite dev server route, while deployed GitHub Pages should point at the Firebase HTTPS function in functions/src/index.ts.
Setup:
- Install the Firebase CLI:
npm install -g firebase-tools - Log in:
firebase login - Attach this repo to your Firebase project:
firebase use --add - Install function dependencies:
cd functions && npm install - Set the OpenAI secret:
firebase functions:secrets:set OPENAI_API_KEY - Deploy the function:
firebase deploy --only functions
After deploy, copy the micGroupSummary function URL and set it as the GitHub Actions environment variable VITE_MIC_GROUP_SUMMARY_API_URL. The GitHub Pages workflow now forwards that variable into the production build.