UX Remote LAB is a user-friendly platform for usability testing and heuristic evaluation. Designed and provided by UX Remote LAB, it is a web application developed to assist project creators in gathering valuable insights from their users.
UX Remote LAB is an open-source platform designed to collect usability feedback from users. It allows you to gather user reviews, analyze them, and create comprehensive reports to better understand your application's usability. Additionally, it offers heuristic tests, enabling experts to evaluate your application's compliance with usability principles.
UX Remote LAB provides a collaborative environment for creators to share their projects and receive voluntary assistance with usability reviews. You can communicate with evaluators and send them invitations for testing your applications.
For commercial support, academic collaborations, and answers to common questions, please use Get Support to contact us.
- Node.js version: β€ 24.12.0
- Vue.js version: 3.5.26
- Vue CLI version: 5.0.8
- Vuetify version: 3.11.6
- Python version: 3.11.8
- Recommended formatter: Prettier - Code formatter
# Clone the repository
git clone https://github.com/uramakilab/remote-usability-lab.git
cd remote-usability-lab
# Install dependencies
npm install
# Run development server
npm run serveWant to contribute or set up a complete development environment?
Please see our CONTRIBUTING.md guide for:
- π³ Docker setup with Firebase Emulators (recommended)
- π§ Production Firebase configuration
- π Contribution workflow and guidelines
- β Code standards and testing
- π Issue reporting
For a visual walkthrough of running RUXAILAB with Firebase Emulators, check out: Tutorial - Running RUXAILAB with Firebase Emulators π₯οΈ
- Add
firebase.jsonfile with the following code snippet:
{
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
},
"functions": [
{
"predeploy": ["npm --prefix \"$RESOURCE_DIR\" run lint"],
"source": "functions",
"codebase": "functions"
},
{
"source": "weight_function",
"codebase": "weight_function",
"ignore": ["venv", ".git", "firebase-debug.log", "firebase-debug.*.log"]
}
],
"hosting": {
"site": "ruxailab-dev",
"public": "dist",
"ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
},
"emulators": {
"auth": {
"port": 9099
},
"functions": {
"port": 5001
},
"firestore": {
"port": 8081
},
"hosting": {
"port": 5000
},
"ui": {
"enabled": true
},
"singleProjectMode": true,
"storage": {
"port": 9199
}
},
"storage": {
"rules": "storage.rules"
}
}Setup your Firebase Emulators by uncommenting the lines under 'emulators if running locally' in src/index.js.
Run:
firebase use (choose your option)
firebase emulators:start
To calculate heuristic weights, run:
# Run locally
firebase init functions
firebase use weight_function
firebase emulators:start --only functionsThen get the url, go to the .env file and add the following sentence:
// Your previous code
VUE_APP_FIREBASE_PYTHON_FUNCTION = 'url'If you want to deply the fuction, change your account from spark to blaze, run:
firebase deploy --only functionsGo to firebase panel -> functions -> on the right side of the function press "detailed usage statistics". There you can get the url and replace on .env file.
To build the Docker image for UX Remote LAB, navigate to the project's root directory and run the following command:
docker build -t uxremotelab .After building the image, you can run the application in a Docker container using:
Note: Ensure you have created the .env file and filled it with all required variables before running the following command:
docker run -d --env-file .env -p 5000:5000 uxremotelabVisit http://localhost:5000 in your browser to access the UX Remote LAB platform.
MIT Β© RUXAILAB



