almadhoob / ocean-threads

A collective intelligence app project for General Assembly bootcamp.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo

oceanThreads Project

Ignite exciting threads with like-minded people

πŸ“— Table of Contents

πŸ“– About the Project

oceanThreads is a modern question-and-answer (Q&A) website that is built different using web technologies for the students and instructors of General Assembly.

It is inspired by other knowledge markets such as stackoverflow.com, quora.com, etc. oceanThreads is a kind of Collective Intelligence (CI) solution which can be considered as an alternative to Artificial intelligence (AI) to provide students with an interactive, progressive and human-oriented learning journey.

β€œNow is no time to think of what you do not have. Think of what you can do with that there is.” ― Ernest Hemingway, The Old Man and the Sea

Screenshot

(back to top)

🌟 Key Features

  • Minimal, clean, responsive layout based on Bootstrap boilerplate.
  • Vanilla Node.js code from scratch with no additional frameworks.
  • OAuth 2.0 Authentication: Login/Logout seamlessly through Google.
  • Simple navigation bar to let users surf between different pages.
  • Threads listing page with user avatars and filtering feature.
  • Thread standalone viewing page with commenting functionality.
  • User dashboard that shows threads with update/delete ability.
  • Leaderboard page to rank users by the number of threads created.

(back to top)

πŸ›  Tech Stack

Client
Server
Database

(back to top)

πŸ’» Getting Started

To get a local copy up and running, follow these steps.

Prerequisites

It is recommended to have the following software (or newer versions) to run the project properly:

  • git v2.41.0
  • npm v9.8.1
  • Node.js v20.5.0
  • MongoDB v6.0.8
  • Chrome v115.0.0

Download

Clone this repository to your desired folder:

  git clone git@github.com:almadhoob/ocean-threads.git

Install

Touch an '.env' file and include the following keys: DATABASE_URL, GOOGLE_CLIENT_ID, GOOGLE_SECRET, GOOGLE_CALLBACK, and a random SECRET. After that, install the project with:

  cd ocean-threads
  npm install
  npm start

(back to top)

πŸ‘₯ Team Members

πŸ‘€ Ali Haji (El CapitΓ‘n) | GitHub - LinkedIn

  • The shipmaster, a Full-stack Engineer who manages everything on the watercraft starting from task assignment to implementation. He also utilises creative skills to wireframe maps before navigation.

πŸ‘€ Ahmed Almadhoob | GitHub - LinkedIn

  • The navigator, a DevOps Engineer who deals with clean codebase initialisation, pull requests handling, testing and deployment. He also interacts with the terminal as a back-end developer on demand.

πŸ‘€ Hamad Alhibshi | GitHub - LinkedIn

  • The engineering officer, a pure Back-end Engineer who works 24/7 to add many lines of code for routes and controllers. He also deals with database schemas to make sure it runs smoothly with the engine.

πŸ‘€ Rashid Althawadi | GitHub - LinkedIn

  • The communications officer, a pure Front-end Engineer who deals with designing webpages and adding styling sheets. As a multimedia specialist, he creates wonderful logos, images and video clips.

(back to top)

πŸ“… Future Features

  • Full-text search for all the threads and comments.
  • Adding experience points (XP) to the leaderboard.
  • Push notification to email using OneSignal API.

(back to top)

🀝 Contributing

Contributions, issues, and feature requests are welcome. Feel free to check the issues page.

To create a new branch each time:

git checkout main
git pull origin main
git checkout -b yourNewBranch

To push your branch:

git add .
git commit -m "yourComment"
git push -u origin yourBranch

(back to top)

🫰 Show Support

If you like this project then support us by donations or buy a cup of coffee for each team member at least.

(back to top)

πŸ™ Acknowledgments

We would like to thank Tor Johnson, Avan Sardar, Ahlam Almutawa, Mohamed Faris and Ernest Hemingway.

(back to top)

πŸ“ License

This is an MIT-licensed project.

(back to top)

About

A collective intelligence app project for General Assembly bootcamp.

License:MIT License


Languages

Language:EJS 55.1%Language:CSS 22.9%Language:JavaScript 22.1%