├── .eslintrc.json ├── .firebaserc ├── .github └── workflows │ ├── firebase-deploy-test.yml │ ├── firebase-deploy.yml │ ├── node.js.yml │ └── run-migration.yml ├── .gitignore ├── .husky └── pre-commit ├── LICENSE ├── README.md ├── __tests__ ├── firestore-rules.test.js ├── index.test.jsx ├── validate-csv.test.js └── validate-json.test.js ├── components ├── AuthCheck.js ├── CodeBlock.js ├── CopyButton.js ├── Footer.js ├── JsPsychIcon.js ├── Loader.js ├── Navbar.js ├── OpenCollectiveIcon.js ├── SignInForm.js ├── account │ ├── ChangePassword.js │ ├── DeleteAccount.js │ └── OSFToken.js └── dashboard │ ├── CodeHints.js │ ├── ExperimentActive.js │ ├── ExperimentInfo.js │ ├── ExperimentValidation.js │ └── Title.js ├── firebase.json ├── firestore.indexes.json ├── firestore.rules ├── functions ├── .gitignore ├── __tests__ │ ├── base64data-emulator.test.js │ ├── data-emulator.test.js │ └── get-condition-emulator.test.js ├── api-base64.js ├── api-condition.js ├── api-data.js ├── api-messages.js ├── app.js ├── index.js ├── package-lock.json ├── package.json ├── put-file-osf.js ├── validate-csv.js ├── validate-json.js └── write-log.js ├── jest.config.js ├── lib ├── context.js ├── firebase.js ├── theme.js └── utils.js ├── next.config.js ├── package.json ├── pages ├── _app.js ├── admin │ ├── [experiment_id].js │ ├── account.js │ ├── deleted-account.js │ ├── index.js │ └── new.js ├── api-docs.js ├── contact.js ├── faq.js ├── getting-started.js ├── index.js ├── redirect.js ├── reset-password.js ├── signin.js └── signup.js ├── public ├── android-chrome-192x192.png ├── android-chrome-512x512.png ├── apple-touch-icon.png ├── favicon-16x16.png ├── favicon-32x32.png ├── favicon.ico ├── homepipe.png ├── logo.png ├── site.webmanifest └── vercel.svg └── styles ├── Home.module.css └── globals.css /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["next/core-web-vitals", "prettier"] 3 | } 4 | -------------------------------------------------------------------------------- /.firebaserc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/.firebaserc -------------------------------------------------------------------------------- /.github/workflows/firebase-deploy-test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/.github/workflows/firebase-deploy-test.yml -------------------------------------------------------------------------------- /.github/workflows/firebase-deploy.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/.github/workflows/firebase-deploy.yml -------------------------------------------------------------------------------- /.github/workflows/node.js.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/.github/workflows/node.js.yml -------------------------------------------------------------------------------- /.github/workflows/run-migration.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/.github/workflows/run-migration.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/.gitignore -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/.husky/pre-commit -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/README.md -------------------------------------------------------------------------------- /__tests__/firestore-rules.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/__tests__/firestore-rules.test.js -------------------------------------------------------------------------------- /__tests__/index.test.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/__tests__/index.test.jsx -------------------------------------------------------------------------------- /__tests__/validate-csv.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/__tests__/validate-csv.test.js -------------------------------------------------------------------------------- /__tests__/validate-json.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/__tests__/validate-json.test.js -------------------------------------------------------------------------------- /components/AuthCheck.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/AuthCheck.js -------------------------------------------------------------------------------- /components/CodeBlock.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/CodeBlock.js -------------------------------------------------------------------------------- /components/CopyButton.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/CopyButton.js -------------------------------------------------------------------------------- /components/Footer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/Footer.js -------------------------------------------------------------------------------- /components/JsPsychIcon.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/JsPsychIcon.js -------------------------------------------------------------------------------- /components/Loader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/Loader.js -------------------------------------------------------------------------------- /components/Navbar.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/Navbar.js -------------------------------------------------------------------------------- /components/OpenCollectiveIcon.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/OpenCollectiveIcon.js -------------------------------------------------------------------------------- /components/SignInForm.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/SignInForm.js -------------------------------------------------------------------------------- /components/account/ChangePassword.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/account/ChangePassword.js -------------------------------------------------------------------------------- /components/account/DeleteAccount.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/account/DeleteAccount.js -------------------------------------------------------------------------------- /components/account/OSFToken.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/account/OSFToken.js -------------------------------------------------------------------------------- /components/dashboard/CodeHints.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/dashboard/CodeHints.js -------------------------------------------------------------------------------- /components/dashboard/ExperimentActive.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/dashboard/ExperimentActive.js -------------------------------------------------------------------------------- /components/dashboard/ExperimentInfo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/dashboard/ExperimentInfo.js -------------------------------------------------------------------------------- /components/dashboard/ExperimentValidation.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/dashboard/ExperimentValidation.js -------------------------------------------------------------------------------- /components/dashboard/Title.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/components/dashboard/Title.js -------------------------------------------------------------------------------- /firebase.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/firebase.json -------------------------------------------------------------------------------- /firestore.indexes.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/firestore.indexes.json -------------------------------------------------------------------------------- /firestore.rules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/firestore.rules -------------------------------------------------------------------------------- /functions/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ -------------------------------------------------------------------------------- /functions/__tests__/base64data-emulator.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/__tests__/base64data-emulator.test.js -------------------------------------------------------------------------------- /functions/__tests__/data-emulator.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/__tests__/data-emulator.test.js -------------------------------------------------------------------------------- /functions/__tests__/get-condition-emulator.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/__tests__/get-condition-emulator.test.js -------------------------------------------------------------------------------- /functions/api-base64.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/api-base64.js -------------------------------------------------------------------------------- /functions/api-condition.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/api-condition.js -------------------------------------------------------------------------------- /functions/api-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/api-data.js -------------------------------------------------------------------------------- /functions/api-messages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/api-messages.js -------------------------------------------------------------------------------- /functions/app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/app.js -------------------------------------------------------------------------------- /functions/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/index.js -------------------------------------------------------------------------------- /functions/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/package-lock.json -------------------------------------------------------------------------------- /functions/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/package.json -------------------------------------------------------------------------------- /functions/put-file-osf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/put-file-osf.js -------------------------------------------------------------------------------- /functions/validate-csv.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/validate-csv.js -------------------------------------------------------------------------------- /functions/validate-json.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/validate-json.js -------------------------------------------------------------------------------- /functions/write-log.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/functions/write-log.js -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/jest.config.js -------------------------------------------------------------------------------- /lib/context.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/lib/context.js -------------------------------------------------------------------------------- /lib/firebase.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/lib/firebase.js -------------------------------------------------------------------------------- /lib/theme.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/lib/theme.js -------------------------------------------------------------------------------- /lib/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/lib/utils.js -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/package.json -------------------------------------------------------------------------------- /pages/_app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/_app.js -------------------------------------------------------------------------------- /pages/admin/[experiment_id].js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/admin/[experiment_id].js -------------------------------------------------------------------------------- /pages/admin/account.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/admin/account.js -------------------------------------------------------------------------------- /pages/admin/deleted-account.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/admin/deleted-account.js -------------------------------------------------------------------------------- /pages/admin/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/admin/index.js -------------------------------------------------------------------------------- /pages/admin/new.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/admin/new.js -------------------------------------------------------------------------------- /pages/api-docs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/api-docs.js -------------------------------------------------------------------------------- /pages/contact.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/contact.js -------------------------------------------------------------------------------- /pages/faq.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/faq.js -------------------------------------------------------------------------------- /pages/getting-started.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/getting-started.js -------------------------------------------------------------------------------- /pages/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/index.js -------------------------------------------------------------------------------- /pages/redirect.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/redirect.js -------------------------------------------------------------------------------- /pages/reset-password.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/reset-password.js -------------------------------------------------------------------------------- /pages/signin.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/signin.js -------------------------------------------------------------------------------- /pages/signup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/pages/signup.js -------------------------------------------------------------------------------- /public/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/android-chrome-192x192.png -------------------------------------------------------------------------------- /public/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/android-chrome-512x512.png -------------------------------------------------------------------------------- /public/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/apple-touch-icon.png -------------------------------------------------------------------------------- /public/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/favicon-16x16.png -------------------------------------------------------------------------------- /public/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/favicon-32x32.png -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/homepipe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/homepipe.png -------------------------------------------------------------------------------- /public/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/logo.png -------------------------------------------------------------------------------- /public/site.webmanifest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/site.webmanifest -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/public/vercel.svg -------------------------------------------------------------------------------- /styles/Home.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/styles/Home.module.css -------------------------------------------------------------------------------- /styles/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jspsych/datapipe/HEAD/styles/globals.css --------------------------------------------------------------------------------