Complete guide to deploying O-ELIDDI on GitHub Pages
GitHub Pages provides free static website hosting, making it ideal for deploying O-ELIDDI studies. This guide covers forking the repository, configuring your study, and setting up automatic deployment.
Create your own copy of the O-ELIDDI repository:
Download your fork to make configuration changes:
Customize the application for your research study:
Edit settings/activities.json
with your study configuration:
{
"general": {
"experimentID": "YOUR_DATAPIPE_EXPERIMENT_ID",
"app_name": "Your Study Name",
"version": "1.0.0",
"author": "Your Name",
"language": "en",
"instructions": true,
"primary_redirect_url": "pages/thank-you.html",
"fallbackToCSV": true
},
"timeline": {
// Your timeline configuration
}
}
Edit pages/thank-you.html
to match your study completion message.
Modify pages/instructions.html
and pages/instructions.js
to customize participant instructions.
Before deploying, test your configuration locally:
Verify that:
Save your configuration to GitHub:
Configure GitHub to serve your repository as a website:
GitHub will provide a URL for your deployed study:
This process may take a few minutes. Check the Pages section in your repository settings for the exact URL and deployment status.
You can use a custom domain instead of the default github.io URL:
CNAME
file in your repository root with your domain nameGitHub Pages automatically rebuilds your site when you push changes to the main branch. However, you can create a custom GitHub Actions workflow for more control:
name: Deploy to GitHub Pages
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install dependencies
run: npm install
- name: Run tests (if available)
run: npm test --if-present
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
if: github.ref == 'refs/heads/main'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./
Once deployed, you can create participant-specific links by adding URL parameters:
See the URL Parameters guide for complete details on parameter configuration.
Monitor your study deployment through GitHub's built-in analytics:
For more detailed analytics, consider integrating:
O-ELIDDI is mobile-responsive by default, but consider: