Respond to your audience in real time through live Q&A rooms
Project developed during the NLW week (Next Level Week) #06 of Rocketseat. Application that aims to answer the doubts of your audience in real time through question and answer rooms (Q&A).
The project is currently in the following structure.
👈 Click to expand
.
├── docs
│ └── README-PT_BR.md
├── public
│ ├── favicon.svg
│ └── index.html
├── src
│ ├── assets
│ │ ├── animations
│ │ │ └── 404-space-error.json
│ │ └── images
│ │ ├── answer.svg
│ │ ├── check.svg
│ │ ├── copy.svg
│ │ ├── delete.svg
│ │ ├── empty-questions.svg
│ │ ├── google-icon.svg
│ │ ├── illustration.svg
│ │ ├── like.svg
│ │ ├── logo-dark.svg
│ │ ├── logo-white.svg
│ │ ├── moon.svg
│ │ ├── profile.svg
│ │ └── sun.svg
│ ├── components
│ │ ├── Button
│ │ │ ├── index.tsx
│ │ │ └── style.ts
│ │ ├── CustomToast
│ │ │ └── index.tsx
│ │ ├── Header
│ │ │ ├── index.tsx
│ │ │ └── style.ts
│ │ ├── Modal
│ │ │ ├── index.tsx
│ │ │ └── style.ts
│ │ ├── ProfileDropdown
│ │ │ ├── index.tsx
│ │ │ └── style.ts
│ │ ├── Question
│ │ │ ├── index.tsx
│ │ │ └── style.ts
│ │ └── RoomCode
│ │ ├── index.tsx
│ │ └── styles.ts
│ ├── contexts
│ │ ├── AuthContext.tsx
│ │ ├── ModalYesNoContext.tsx
│ │ └── ThemeSwitchContext.tsx
│ ├── hooks
│ │ ├── useAuth.ts
│ │ ├── useRoom.ts
│ │ └── useTheme.ts
│ ├── pages
│ │ ├── Error
│ │ │ └── 404.tsx
│ │ ├── Others
│ │ │ └── Contact.tsx
│ │ ├── Room
│ │ │ ├── AdminRoom.tsx
│ │ │ ├── NewRoom.tsx
│ │ │ └── Room.tsx
│ │ └── Home.tsx
│ ├── services
│ │ └── firebase.ts
│ ├── styles
│ │ ├── pages
│ │ │ ├── auth.ts
│ │ │ ├── contact.ts
│ │ │ ├── notfound.ts
│ │ │ └── room.ts
│ │ ├── themes
│ │ │ ├── dracula.ts
│ │ │ └── nlw.ts
│ │ └── global.ts
│ ├── @types
│ │ ├── auth-context.d.ts
│ │ ├── button.d.ts
│ │ ├── firebase-questions.d.ts
│ │ ├── header.d.ts
│ │ ├── profile-dropdown.d.ts
│ │ ├── question.d.ts
│ │ ├── room-code.d.ts
│ │ ├── room.d.ts
│ │ ├── styled.d.ts
│ │ └── theme-switch-context.d.ts
│ ├── utils
│ │ └── usePersistedState.tsx
│ ├── App.tsx
│ ├── index.tsx
│ └── react-app-env.d.ts
├── package.json
├── README.md
├── tsconfig.json
└── yarn.lock
What features does the `letmeask` app currently have? 🤔
- Option to login through google account.
- Option to choose between light 🌕 / dark 🌑 theme.
- Room creation option.
- Option to access via code/id of the Q&A room (user does not need to be logged in).
- Option to “share” the code / id of the question and answer room.
- Option to add questions (only for normal user and need to be logged in).
- Option to leave a like on a question (only for normal user and need to be logged in).
- Option to highlight question(s) (only the room administrator has this option.).
- Option to mark questions as answered (only the room administrator has this option.).
- Option to remove a question (only the room administrator has this option.).
- Option to close the room (only the room administrator has this option.).
This project was developed using the following technologies 👇.
Below are some screenshots that demonstrate certain features of the `letmeask` web application.
This project was developed "based" on the prototype defined below, found in figma.
This project is under license MIT
created by @antonionarcilio