Skip to content

mpi-astronomy/affirmation-ranker

Repository files navigation

Affirmation Ranker

A mobile-friendly web application for ranking affirmations from least to most acceptable. Results are collected anonymously for statistical analysis.

Features

  • Mobile-friendly Material Design UI
  • Drag-and-drop sorting of 3 random affirmations
  • Anonymous result collection (stored in Firebase Firestore)
  • Multiple surveys support
  • Admin dashboard to view and export results as CSV

Tech Stack

  • React + Vite
  • Material-UI (MUI)
  • Firebase Firestore (database)
  • Netlify (hosting)

Quick Start

Development

# Install dependencies
npm install

# Start development server
npm run dev

Deployment

The site is deployed on Netlify. Push to main branch to deploy automatically.

Survey Management

Adding a New Survey

  1. Edit src/data/affirmations.json
  2. Add a new survey entry:
{
  "surveys": [
    { "id": "pilot-2026", "name": "Pilot Survey 2026" },
    { "id": "survey-2027", "name": "Survey 2027" }
  ],
  "affirmations": [...]
}
  1. Update the hardcoded SURVEY_ID in src/pages/RankingPage.jsx

Ranking Scale

  • 1 = Most acceptable (green)
  • 2 = Neutral / Gray zone (gray)
  • 3 = Least acceptable (red)

Admin Access

The admin page is at /admin and allows:

  • Viewing all survey results
  • Filtering by survey
  • Exporting data as CSV

Authors

  • Morgan Fouesneau
  • Ivelina G. Momcheva

Max Planck Institute for Astronomy Department of Data Science

Acknowledgments

This application was primarily vibe-coded using Kilocode (v7.0.33) and the MiniMax model (MiniMax-M2.5).

License

Copyright (c) 2026 Max Planck Institute for Astronomy. See LICENSE for details.

About

rank affirmations according to what resonates most with you.

Resources

License

Stars

Watchers

Forks

Contributors