{"id":30737451,"url":"https://github.com/kyleprotho/question-cards","last_synced_at":"2025-09-03T21:16:05.199Z","repository":{"id":304527690,"uuid":"1019031697","full_name":"KyleProtho/Question-Cards","owner":"KyleProtho","description":"A web application that provides conversation starters for meaningful connections. Filter questions by intensity across multiple categories to create the perfect set of conversation prompts for any situation.","archived":false,"fork":false,"pushed_at":"2025-07-13T16:59:04.000Z","size":93,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-13T18:29:15.641Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KyleProtho.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-13T15:34:39.000Z","updated_at":"2025-07-13T16:59:07.000Z","dependencies_parsed_at":"2025-07-13T18:29:17.234Z","dependency_job_id":"7810c6f2-dfb9-4e73-8e94-9a625c8b5278","html_url":"https://github.com/KyleProtho/Question-Cards","commit_stats":null,"previous_names":["kyleprotho/question-cards"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/KyleProtho/Question-Cards","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KyleProtho%2FQuestion-Cards","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KyleProtho%2FQuestion-Cards/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KyleProtho%2FQuestion-Cards/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KyleProtho%2FQuestion-Cards/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KyleProtho","download_url":"https://codeload.github.com/KyleProtho/Question-Cards/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KyleProtho%2FQuestion-Cards/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273511108,"owners_count":25118661,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-09-03T21:16:04.200Z","updated_at":"2025-09-03T21:16:05.190Z","avatar_url":"https://github.com/KyleProtho.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎴 Question Cards\n\nA web application that provides conversation starters for meaningful connections. Filter questions by intensity across multiple categories to create the perfect set of conversation prompts for any situation.\n\n**🌐 Live Demo**: [https://kyleprotho.github.io/Question-Cards/](https://kyleprotho.github.io/Question-Cards/)\n\n## ✨ Features\n\n- **Customizable Filtering**: Set minimum intensity levels (1-5) across 8 different categories\n- **Interactive Interface**: Touch/swipe support for mobile devices plus keyboard navigation\n- **Smart Question Selection**: Randomly selects from filtered questions to ensure variety\n- **Progress Tracking**: Visual progress bar and navigation through your question set\n- **Persistent Preferences**: Saves your filter settings for future sessions\n\n## 🎯 Categories\n\nQuestions are rated across 8 dimensions:\n\n- 💔 **Vulnerability** - How emotionally open the question requires you to be\n- 💕 **Sexuality** - How intimate or romantic the topic is\n- 📖 **Personal History** - How much it delves into your past experiences\n- 😄 **Humor** - How funny or lighthearted the question is\n- 🤔 **Self-Reflection** - How much introspection the question requires\n- 😳 **Embarrassment Potential** - How potentially embarrassing the answer might be\n- 🔗 **Depth of Connection** - How much the question builds intimacy between people\n- ⚡ **Conflict Potential** - How likely the question is to cause disagreement\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n- Python 3.x (for data processing)\n- A local web server (built-in Python server works fine)\n\n### Installation\n\n1. Clone or download this repository\n2. Navigate to the project directory\n\n### Running the Application\n\nSince this application loads data via fetch(), you need to serve it through a web server:\n\n```bash\n# Using Python's built-in server\npython3 -m http.server 8000\n\n# Then open http://localhost:8000 in your browser\n```\n\n## 📊 Data Management\n\n### Adding New Questions\n\n1. Add questions to CSV files in the `decks/` directory\n2. Ensure each question has ratings (1-5) for all 8 categories\n3. Convert CSV to JSON format:\n\n```bash\npython3 scripts/csv_to_json.py\n```\n\n### CSV Format\n\nYour CSV should include these columns:\n- `Index` - Question number\n- `Question` - The question text\n- `Vulnerability` - Rating 1-5\n- `Sexuality` - Rating 1-5\n- `Personal History` - Rating 1-5\n- `Humor` - Rating 1-5\n- `Self-Reflection` - Rating 1-5\n- `Embarrassment Potential` - Rating 1-5\n- `Depth of Connection` - Rating 1-5\n- `Conflict Potential` - Rating 1-5\n\n## 🎮 How to Use\n\n1. **Set Your Filters**: Use the sliders to set minimum intensity levels for each category\n2. **Choose Question Count**: Select how many questions you want (up to available filtered questions)\n3. **Start Drawing Cards**: Begin your conversation session\n4. **Navigate**: Use arrow keys, swipe gestures, or navigation buttons to move between questions\n5. **New Game**: Reset to try different filters or get a new random selection\n\n## 🎯 Navigation Controls\n\n- **Desktop**: Arrow keys (←/→), Escape to return to setup\n- **Mobile**: Swipe left/right to navigate between questions\n- **Universal**: Click Previous/Next buttons\n\n## 📁 Project Structure\n\n```\nquestion_cards/\n├── index.html          # Main application interface\n├── script.js           # Application logic and interactions\n├── styles.css          # Styling and responsive design\n├── data/\n│   └── truth_or_drink.json  # Processed question data (412 questions)\n├── decks/\n│   └── truth_or_drink.csv   # Source question data\n└── scripts/\n    └── csv_to_json.py       # Data conversion utility\n```\n\n## 🤝 Contributing\n\n1. Add new questions to CSV files in the `decks/` directory\n2. Run the conversion script to update JSON data\n3. Test the application with your new questions\n4. Submit your changes\n\n## 🎲 Current Dataset\n\nThe application comes nearly 800 carefully curated conversation starter questions designed to foster meaningful connections while respecting boundaries through the category filtering system.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyleprotho%2Fquestion-cards","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkyleprotho%2Fquestion-cards","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyleprotho%2Fquestion-cards/lists"}