Skip to content

A questions and answers platform written in Vue.js

Notifications You must be signed in to change notification settings

GameBear64/InquireHub

Repository files navigation

Inquire Hub

Share Your Thoughts, Spark Conversations!

A simple chat app for anonymous questions and answers featuring profiles and auth guards, themes, real time updates, form validations and more!

Instalation

Noteworthy dependencies:

Vue.js Vuelidate Pinia TailwindCSS
Socket.io jwt
Express.js joi Bcrypt Glob MongoDB

When installing all the app's dependencies youll need to run these two commands

npm i
cd api && npm i

After that you can start the application (both FE and BE) in development mode by simply writing

npm run dev

You should see something like this: example

Purpouse

This is a platform meant to provide anonymity when asking questions.

The concept is simple, you ask a question and then periodically check if you have answers from people. Other than asking questions you can answer questions. The more you answer the more the number on your profile goes up so you can show off to others how cool you are.
If you find someone cool that posts interesting public questions, you can also follow them and answer their questions without relying on chance to stumble upon them. Beware tho, you can only see their public questions.

Features

The whole app uses both a socket for real time connection and a REST API for regular requests.

FE

Main dependencies:

  • Vue js
  • Vuelidate
  • awesome-snackbar
  • Tailwind
  • Material Icons
  • Pinia

The front end features a combination of light and dark theme + an accent color inquire-hub-themes

Using Vuelidate we ensure the user knows where their errors are (and if they bypass it we have extra validation on the backend) image

Seemless updates with socket.io
Here the reaction updates whenever the server emits an event socket-events

BE

Main dependencies:

  • bcryptjs
  • express
  • express-file-routing
  • golb
  • joi validator
  • jwt
  • mongoose

Strong password encryption with bcrypt (this is an example document) image

Custom middleware for validation using joi validate image

Author

Developed designed by GamBar
For educational purposes, and the SoftUni VueJS course

About

A questions and answers platform written in Vue.js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published