Skip to content

shahrk/feature-hunt

Repository files navigation

Feature Hunt

Build Status DOI made-with-javascript GitHub license GitHub issues code style: prettier Docker Coverage Status

INTRODUCTION ⚡️

Stop letting ideas slip through the cracks. Collect, analyze, and organize feedback and feature requests in your product's feedback board to make better product decisions.

Feature Hunt is a platform that allows you to do just that. Users can share/vote/discuss feature requests and product owners can organize them to make better product decisions 🎯.

Watch this short video to know more:

Feature-Hunt-Demo.mp4

The following technologies were used for the development of this project:

react js mongo js python css

React (P.S. we use hooks)
JavaScript
Python3
Flask
MongoDB
HTML
CSS

Although we haven't used any CSS library for the FrontEnd, the users can easily merge it with any CSS library of their choice (e.g. Tailwind CSS, react-bootstrap).

Preview

The Home Page - It has a list of different products for which you can provide feature requests Screen Shot 2021-09-19 at 5 24 43 PM

The Product Page - It has a list of feature requests added by users Screen Shot 2021-09-19 at 5 25 04 PM

The Comment Section - Each product page has a comment section (Powered by utteranc.es) Screen Shot 2021-09-19 at 5 25 15 PM

Add Your Project

Want to gather feedback and maintain your project's roadmap more efficiently?

You can add your project to Feature Hunt by filling this form, our team will review the response and add it to our database after doing our due diligence.

Getting Started

There are two ways to install and develop for featurehunt

  1. Using Docker

  2. Using Local machine

Installation With Docker.

1. Follow the steps to install Docker for your OS

https://docs.docker.com/get-docker

2. Git clone the Repository using

git clone https://github.com/shahrk/feature-hunt.git

3. Run the following Commands

cd feature-hunt

docker-compose up --build (This is only needed when you're running the project for the first time. Upon building once, you can run this command without providing --build option)

This will run two docker containers. The frontend will run on port 3000 and the backend will run on port 5000

Installation in Local Machine without Docker.

First Time Setup

1. Git clone the Repository using

git clone https://github.com/shahrk/feature-hunt.git

2. Run the following Commands

cd feature-hunt

Optional: In the project directory run git config --local core.hooksPath hooks to make sure you have access to the Git Hooks. Run the following commands in order:

3. npm install

Installs the dependencies for the React App

4. pip install -r api/requirements.txt

Installs the requirements for the Flask API

5. yarn start

Runs the frontend React app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

To run backend flask api in development mode export DB="mongodb+srv://bot:bot123@feature-hunt.6gqvj.mongodb.net/feature-hunt?retryWrites=true&w=majority"

export ROOT_PATH="./"

6. yarn start-api

Runs the backend flask API in development mode.
The API runs on http://localhost:5000.

Requests made to http://localhost:3000 that don't exist on the react server are automatically forwarded to this API

Connecting with a Database

We use Mongo Cloud Atlas for our project as we find it very convenient. You may choose to use a local mongodb instance or run a docker container

Make the corresponding changes in docker-compose.yml and backend/config.yml

You can also connect to the database from your shell using mongosh

Other Available Scripts

yarn test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

yarn build

Builds the app for production to the build folder.
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.
Your app is ready to be deployed!

See the section about deployment for more information.

Deployment

This section has moved here: https://facebook.github.io/create-react-app/docs/deployment

Future Scope

  1. Product owner dashboard: There can be a separate dashboard to manage product feature feedback. Owners will be allowed to prioritize any feature for development.
  2. Owners can download the data about the product and feature feedbacks in a CSV format. It can be used for analysis of the user responses.
  3. Can have a separate page to show "Trending" products. Several filters i.e "Newest", "Most Popular", "Trending" etc can be applied.
  4. Product owners can have a separate page to track the progress of development of any feature. They can decide timelines, select developers or assign reviewers.
  5. Users will be allowed to see if their feature suggestions are "Under consideration" or have been "Rejected".
  6. The product feature review dashboard can be modified to allow only selected group of users to post a review.
  7. The website can allow anonymous posting & upvoting to gather honest reviews.
  8. Recieving feedback from a specific customers groups i.e students, commuters, doctors etc should be available. One can send out personalized invite to these groups automatically, asking for a product review.

Contributors 🎯


Raj Shah

Nirav Patel


Parth Kanakiya


Mithil Dave


Bhargav Jethwa

About

A feature collection platform where users can share/vote/discuss feature requests and product owners can organize them

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published