Skip to content

Instantly share code, notes, and snippets.

@Kimeiga
Last active August 30, 2023 23:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Kimeiga/700535e641980e5df5a32350289b5f6c to your computer and use it in GitHub Desktop.
Save Kimeiga/700535e641980e5df5a32350289b5f6c to your computer and use it in GitHub Desktop.
draft 1 of ruumii questions
const questions = [
{
type: 'text',
you: {
question: 'What is your name?',
id: 'name'
}
// autofill with name from google account
},
{
id: 'age',
you: {
question: 'How old are you?',
type: 'number'
},
preference: {
question: 'What age range would you prefer to room with?',
type: 'bounds',
bounds: [0, 100],
default: [16, 30]
}
},
{
id: 'gender',
you: {
type: 'choice',
question: 'What is your gender?',
options: ['Male', 'Female', 'Non-binary', 'Prefer not to say'],
other: true
},
preference: {
type: 'select', // choice = radio button, select = checkbox
question: 'What genders would you prefer to room with?',
options: ['Male', 'Female', 'Non-binary', 'Other']
// here we are collapsing "other" and "prefer not to say" into just "Other"
}
},
{
id: 'orientation',
you: {
type: 'choice',
question: 'What is your sexual orientation?',
options: ['Heterosexual', 'Homosexual', 'Prefer not to say'],
other: true
},
preference: {
type: 'select',
question: 'What sexual orientations would you prefer to room with?',
options: ['Heterosexual', 'Homosexual', 'Other']
}
},
{
id: 'location-preference',
preference: {
type: 'choice',
question: 'Where do you want to live?',
subtitle: 'Choose all that apply',
options: [
'San Francisco City',
'SF Bay Area',
'New York',
'Los Angeles',
'Seattle',
'San Diego',
'Toronto',
'Chicago',
'London',
'Tokyo',
'Seoul'
],
other: true // other adds a text input
},
you: {
type: 'text',
question: 'Where do you live right now?',
optional: true // optional adds a "skip" button
}
},
{
id: 'move-in-date',
you: {
multi: true,
1: {
type: 'date',
question: 'When do you want to move in?',
subtitle: 'This is the date you want to move in, not the date you want to start looking',
default: new Date()
},
2: {
type: 'number',
question: 'How many months do you want to stay?',
default: 12
}
}
},
{
id: 'rent',
you: {
type: 'bounds', // for lower and upper bounds
question: 'What are you willing to pay for rent per month?',
subtitle: 'This is you individually, not the entire apartment',
bounds: [0, 6000],
default: [1000, 2000]
}
},
{
id: 'occupation',
you: {
multi: true,
1: {
type: 'text',
question: 'What is your occupation?',
subtitle: "or projected occupation, if you're a student"
},
2: {
type: 'choice',
question: 'Are you currently employeed?',
options: ['Yes', 'No, Student', 'No, Unemployed']
},
3: {
type: 'text',
question: 'Where do you work?',
optional: true
}
}
},
{
id: 'cleanliness',
you: {
type: 'range',
question: 'How clean are you?',
subtitle: '1 means I tend to let things get messy, 5 means I make everything spotless',
bounds: [1, 5],
default: 3
},
preference: {
type: 'range',
question: 'How clean must your roommates be?',
subtitle:
"1 means it's ok for things to be messy, 5 means everything must always be spotless",
bounds: [1, 5],
default: 3
}
},
{
id: 'guests',
preference: {
multi: true,
1: {
type: 'range',
question: 'Are you ok with guests coming over?',
subtitle:
"1 means never, 5 means every day.\n'Guests' means anyone who doesn't live in the apartment, including your or other roommates' significant others",
bounds: [1, 5],
default: 3
},
2: {
type: 'range',
question: 'Can they stay overnight?',
subtitle: '1 means never, 5 means every day.',
bounds: [1, 5],
default: 3
}
},
you: {
multi: true,
1: {
type: 'range',
question: 'How often will you have guests over?',
subtitle:
"1 means never, 5 means every day.\n'Guests' means anyone who doesn't live in the apartment, including your or other roommates' significant others",
bounds: [1, 5],
default: 3
},
2: {
type: 'select',
question: 'Who are these guests?',
options: ['Friends', 'Boyfriend', 'Girlfriend', 'Other significant other', 'Family'],
other: true
}
}
},
{
id: 'parties',
preference: {
type: 'range',
question: 'Is it ok for your roommates to have parties?',
subtitle: '1 means never, 5 means every day.',
bounds: [1, 5],
default: 3
},
you: {
type: 'range',
question: 'How often do you want to have parties?',
subtitle: '1 means never, 5 means every day.',
bounds: [1, 5],
default: 3
}
},
{
id: 'sleep',
you: {
type: 'range',
question: 'When do you sleep?',
subtitle: '1 = 8pm, 2 = 10pm, 3 = 12am, 4 = 2am, 5 = 4am', // for this, we should have the range slider have ticks...
bounds: [1, 5],
default: 3
},
preference: {
type: 'range',
question: 'By when would you prefer your roommates to be asleep?',
subtitle: '1 = 8pm, 2 = 10pm, 3 = 12am, 4 = 2am, 5 = 4am',
bounds: [1, 5],
default: 3
}
},
{
id: 'smoke',
you: {
multi: true,
1: {
type: 'range',
question: 'Do you smoke?',
subtitle:
'1 = no, never, 2 = a few times a year, 3 = once a month, 4 = every other weekend, 5 = each weekend',
bounds: [1, 5],
default: 1
},
2: {
type: 'select',
question: 'If so, what do you smoke?',
options: ['Cigarettes', 'Weed', 'Vape', 'Hookah', 'Other'],
other: true,
// should be conditional on the first one being 2 or higher
condition: 'you.1 >= 2'
}
},
preference: {
type: 'choice',
question: 'Are you ok with your roommates smoking?',
options: ['Yes', 'No', 'Only outside', 'Only in their room']
}
},
{
id: 'alcohol',
you: {
type: 'range',
question: 'How often do you drink alcohol?',
subtitle:
'1 = no, never, 2 = a few times a year, 3 = once a month, 4 = every other weekend, 5 = each weekend',
bounds: [1, 5],
default: 3
},
preference: {
type: 'choice',
question: 'Are you ok with your roommates drinking alcohol?',
options: ['Yes', 'No']
}
},
{
id: 'closeness',
preference: {
type: 'range',
question: 'How close do you want to be with your roommates?',
subtitle:
"1 = I wanna just live with y'all but do my own things, 5 = I want to hang out a lot, play games, go out together, etc",
bounds: [1, 5],
default: 3
}
},
{
id: 'animals',
you: {
type: 'select',
question: 'Will you be bringing any pets?',
options: ['Cat', 'Dog', 'Rabbit', 'Hampster', 'Bird', 'Fish'],
other: true
},
preference: {
multi: true,
1: {
type: 'choice',
question: 'Do you have any pet allergies?',
options: ['Cat', 'Dog', 'Rabbit', 'Hampster', 'Bird', 'Fish', 'No'],
default: 'No'
},
2: {
type: 'range',
question: 'How ok are you with your roommates bringing pets?',
subtitle: '1 = not at all, 5 = totally',
bounds: [1, 5],
default: 3
}
}
},
{
id: 'cooking',
you: {
type: 'range',
question: 'How often do you cook?',
subtitle:
'1 = never, 2 = a few times a year, 3 = once a month, 4 = every other week, 5 = every day',
bounds: [1, 5],
default: 3
},
preference: {
multi: true,
1: {
type: 'range',
question: "Preference for your roommate's use of the kitchen?",
subtitle:
"1 = it's ok if the kitchen is messy, 5 = everything must be put away immediately after use",
bounds: [1, 5],
default: 3
},
2: {
type: 'range',
question: 'Is it ok if your roommates eat your food/use your groceries?',
subtitle: '1 = never, 5 = always',
bounds: [1, 5],
default: 3
}
}
},
{
id: 'temperature',
preference: {
type: 'range',
question: 'What temperature would you prefer to keep the apartment at?',
subtitle:
'1 = 66F (), 2 = 68F (), 3 = 70F (21.1C), 4 = 72F (23.9C), 5 = 74F (26.7C), 6 = 76 (24.4C), 7 = 78F (25.6C)',
bounds: [1, 7], // for this one definitely try to get a range with ticks, and try having it do 60F - 80F
default: 3
}
},
{
id: 'ethnicity',
you: {
multi: true,
1: {
type: 'choice',
question: "What's you ethnicity?",
options: [
'White/European Descent',
'Black/African Descent',
'East Asian',
'South Asian',
'Hispanic/Latino',
'Pacific Islander',
'Middle Eastern',
'Native American',
'Near Eastern',
'Central Asian'
],
other: true
},
2: {
type: 'text',
question: 'More detail (optional)',
optional: true
},
3: {
type: 'text',
question: "What's your nationality (optional)",
default: 'American',
optional: true
}
},
preference: {
type: 'select',
question: 'Would you prefer your roommates be some ethnicity?',
options: [
'White/European Descent',
'Black/African Descent',
'East Asian',
'South Asian',
'Hispanic/Latino',
'Pacific Islander',
'Middle Eastern',
'Native American',
'Near Eastern',
'Central Asian'
],
openToAll: true, // when this flag is set in a select or choice for preferences, it adds an option for "Open to all"
default: 'openToAll'
}
},
{
id: 'student',
you: {
type: 'text',
question: 'Are you a student? If so, where?',
na: true, // this adds an option for "N/A" to the choice
default: 'N/A'
},
preference: {
type: 'choice',
question: 'Would you prefer to room with another student?',
options: ['Yes', 'No', 'Does not matter'],
default: 'Does not matter'
}
},
{
id: 'religion',
you: {
type: 'choice',
question: 'Do you have religious beliefs?',
options: [
'Christian (Protestant)',
'Catholic',
'Muslim',
'Jewish',
'Hindu',
'Buddhist',
'Sikh',
'Taoist',
'Shinto',
'Atheist',
'Agnostic'
],
other: true,
preferNotToAnswer: true, // adds an option for "Prefer not to answer"
default: 'preferNotToAnswer'
},
preference: {
type: 'choice',
question: 'Do you have a preference for your roommates religious beliefs?',
options: ['Prefer same to mine', 'Prefer not religious', 'Does not matter'],
default: 'Does not matter'
}
},
{
id: 'food-preference',
you: {
type: 'choice',
question: 'Do you have any dietary restrictions?',
options: ['Vegetarian', 'Vegan', 'Kosher', 'Halal', 'Gluten-free', 'Pescatarian'],
other: true,
na: true,
default: 'N/A'
},
preference: {
type: 'choice',
question: 'Do you have a preference for your roommates dietary restrictions?',
options: [
'Prefer same as mine',
'Prefer not having dietary restrictions',
'Does not matter'
],
default: 'Does not matter'
}
},
// personality time
{
id: 'extraversion-introversion',
you: {
type: 'range',
question: 'How extroverted are you?',
subtitle:
'1 = I prefer to be alone, 2 = I prefer to be alone but I like hanging out with people sometimes, 3 = I like hanging out with people sometimes, 4 = I like hanging out with people a lot, 5 = I prefer to be with people',
bounds: [1, 5],
default: 3
},
preference: {
type: 'range',
question: 'How extroverted do you want your roommates to be?',
subtitle:
'1 = I prefer to be alone, 2 = I prefer to be alone but I like hanging out with people sometimes, 3 = I like hanging out with people sometimes, 4 = I like hanging out with people a lot, 5 = I prefer to be with people',
bounds: [1, 5],
openToAll: true,
default: 'openToAll'
}
},
{
id: 'sensing-intuition',
you: {
type: 'range',
question:
'How do you take in information? (Sensing vs Intuition on the Myers Briggs scale)',
subtitle:
'1 = Prefers real information coming from the five senses. Focuses on what is real., 5 = Prefers information coming from associations. Focuses on possibilities and what might be.',
bounds: [1, 5],
default: 3
},
preference: {
type: 'range',
question: 'How do you prefer your roommates take in in information?',
subtitle:
'1 = Prefers real information coming from the five senses. Focuses on what is real., 5 = Prefers information coming from associations. Focuses on possibilities and what might be.',
bounds: [1, 5],
openToAll: true,
default: 'openToAll'
}
},
{
id: 'thinking-feeling',
you: {
type: 'range',
question: 'How do you make decisions? (Thinking vs Feeling on the Myers Briggs scale)',
subtitle:
'1 = Steps out of situations to analyze them dispassionately. Prefers to make decisions on the basis of objective logic. 5 = Steps into situations to weigh human values and motives. Prefers to make decisions on the basis of values.',
bounds: [1, 5],
default: 3
},
preference: {
type: 'range',
question: 'How do you prefer your roommates make decisions?',
subtitle:
'1 = Steps out of situations to analyze them dispassionately. Prefers to make decisions on the basis of objective logic. 5 = Steps into situations to weigh human values and motives. Prefers to make decisions on the basis of values.',
bounds: [1, 5],
openToAll: true,
default: 'openToAll'
}
},
{
id: 'judging-perceiving',
you: {
type: 'range',
question:
'How do you approach the outside world? (Judging vs Perceiving on the Myers Briggs scale)',
subtitle:
'1 = Prefers to live life in a planned and organized manner. Enjoys coming to closure and making a decision. 5 = Prefers to live life in a spontaneous and adaptable way. Enjoys keeping options open.',
bounds: [1, 5],
default: 3
},
preference: {
type: 'range',
question: 'How do you prefer your roommates approach the outside world?',
subtitle:
'1 = Prefers to live life in a planned and organized manner. Enjoys coming to closure and making a decision. 5 = Prefers to live life in a spontaneous and adaptable way. Enjoys keeping options open.',
bounds: [1, 5],
openToAll: true,
default: 'openToAll'
}
},
{
id: 'communication-style',
you: {
type: 'range',
question: 'What is your communication style, especially when resolving conflict?',
subtitle: "1 = I'm direct and to the point, 5 = I'm indirect and subtle",
bounds: [1, 5],
default: 3
},
preference: {
type: 'range',
question:
'What communication style do you prefer your roommates have, especially when resolving conflict?',
subtitle: "1 = I'm direct and to the point, 5 = I'm indirect and subtle",
bounds: [1, 5],
openToAll: true,
default: 'openToAll'
}
},
{
id: 'hobbies',
you: {
type: 'long-text', // should be a select i think..., or a select with a text input like that one js project i forgot but it was in the js newsletter a while ago
question: 'What are your hobbies?',
optional: true
},
preference: {
type: 'long-text',
question: 'Are there hobbies you would like to have in common with your roommates?',
optional: true
}
},
{
id: 'bio',
you: {
type: 'long-text',
question: 'Tell us about yourself and why you would be a good person to live with!',
optional: true
}
}
];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment