Swipes for Science
First and foremost, Welcome!
Thank you for visiting the SwipesForScience app project repository.
This document (the README file) is a hub to give you some information about the project. Jump straight to one of the sections below, or just scroll down to find out more.
- What are we doing? (And why?)
- Who are we?
- What do we need?
- How can you get involved?
- Get in touch
- Find out more
- Understand the jargon
- Start developing!
What are we doing?
- Big data in biomedical research needs individual inspection, but this doesn’t scale for large datasets.
- For example, some researchers analyze MRI images to study the brain. But before they start the analysis, they have to visually inspect each image to make sure it is good quality. And at various stages in data processing, researchers have to check images to make sure the analysis is correct. This can get really unweildy when we have large datasets, which are needed to really understand the brain.
- Citizen science games like EyeWire have been really successful for brain analysis, but it is built for one specific type of data, and its really hard to adapt for a different use-case.
- Researchers need a way to easily spin up a citizen science game for their own large datasets, ideally without needing to know web-development (so they can focus on research!)
The SwipesForScience game template will:
- Generate a game from a configuration file provided by a researcher
- The game should be easy to deploy online, and require very little knowledge of web technologies/cloud technologies
- Be fun and easy for citizen scientists to use
Who are we?
The development of this app is supported by eLife Innovation
What do we need?
You! In whatever way you can help.
We need expertise in app development, user experience design, database maintenance, software sustainability, documentation, technical writing, and project management.
Our primary goal is to make it extremely easy for researchers to set up their own data-annotation game. This means that we need to simplify the dev-ops parts of setup, and we need very clear documentation. We also want to design annotation widgets that are easy and fun to use, so that citizen scientists enjoy playing these games.
If you think you can help in any of the areas listed above (and we bet you can) or in any of the many areas that we haven't yet thought of (and here we're sure you can) then please check out our contributors' guidelines and our roadmap.
Please note that it's very important to us that we maintain a positive and supportive environment for everyone who wants to participate. When you join us we ask that you follow our code of conduct in all interactions both on and offline.
If you want to report a problem or suggest an enhancement we'd love for you to open an issue at this github repository because then we can get right on it. But you can also contact Anisha by email (anishakeshavan AT gmail DOT com) or on twitter.
Find out more
Thank you so much for visiting the project and we do hope that you'll join us.
* Also thanks to Kirstie Whitaker for providing this README template
- README file: a document that introduces an open project to the public and any potential contributors
- repository or repo: a collection of documents related to your project, in which you create and save new code or content
- Roadmap: a document outlining the schedule of work to be done on a project
- Milestone: an event or state marking a specific stage in development on the project
- Issue: the GitHub term for tasks, enhancements, and bugs for your projects
First you should
git clone https://github.com/SwipesForScience/SwipesForScience. This app was built with the
vue-cli webpack template, so we've included their instructions on how to build below:
# install dependencies npm install # serve with hot reload at localhost:8080 npm run dev # build for production with minification npm run build # build for production and view the bundle analyzer report npm run build --report # run unit tests ./node_modules/.bin/firebase-server -p 5000 -f test/testDB.json & npm run unit # run e2e tests (we don't have these yet) npm run e2e # run all tests (we don't have these yet) npm test
The app structure looks like: