š§ Work in Progress š§
SvelteTurk is a desktop application for interacting with Amazon's Mechanical Turk service (e.g. creating HITs, contacting workers, getting HIT and Assignment meta-data etc). Designed to be a lightweight and simple tool for managing Mturk without the need to write any code, setup any servers, databases, etc. The goal of the project is to offer a modern graphical alternative to something like PsiTurk.
Check out the official docs and website for full instructions on how to install SvelteTurk and use it. No coding required!
If you do find any issues or would like to request new features open any issue on github. Please attach your log file to any bug reports you open. You find the location of your log file under the SvelteTurk Data Store section on this page.
SvelteTurk is happy to take contributions from the community! Feel free to open pull-requests with changes to the code and/or checkout the public development roadmap on Trello.
More information coming soon...
main/
renderer/
brew install entr
on macOSnpx create-electron-app svelte-turk
cd svelte-turk && npm install --save-dev electron-reload eslint eslint-config-airbnb eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-react eslint-plugin-svelte3 prettier rollup rollup-plugin-livereload rollup-plugin-postcss rollup-plugin-node-resolve rollup-plugin-svelte rollup-plugin-terser rollup-plugin-commonjs svelte concurrently @fullhuman/postcss-purgecss postcss postcss-load-config svelte-preprocess tailwindcss
npm run start
Icons are sourced from hero icons and tabler icons
brew install gh
npm run package
out/SvelteTurk-darwin-x64.zip
gh release create vX.X.X out/SvelteTurk-darwin-x64.zip
npm run release
to do everythingnpm install -g docsify presite serve
mkdir docs-dev
docs
folder: "presite": { "outDir": "docs" }
to package.json
npm run
commands to scripts
in package.json
: "docs-dev": "docsify serve docs"
npm run docs
The following additional steps are deprecated
"docs-dev": "docsify serve docs-dev"
"docs-build": "rm -r docs && presite docs-dev --wait 10000 && touch docs/.nojekyll"
npm run docs-build
serve docs
electron-reload
is configured to just watch the renderer directory (i.e. Svelte) and will auto-refresh to any changes made to the svelte code. entr
is used to restart the entire electron server on any changes to the main.js
file which is the main electron process ("server").
If you encounter issues in which changes to the front-end svelte code are not updating the app it's likely because you have an orphaned rollup process running in the background. Just use your favorite method (e.g. ps aux | grep rollup
, procs
, etc) to find it and kill it and then relaunch the app.