Skip to content

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

License

Notifications You must be signed in to change notification settings

elric97/feature-hunt

 
 

Repository files navigation

Feature Hunt

Codacy Badge DOI GitHub license made-with-javascript code style: prettier Docker GitHub issues GitHub closed issues Build Tests Coverage Status CodeQL Pylint Netlify

Have a look at Phase3-Video

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:

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

We have started using [MaterialUI] for styled components.

For more information, visit our wiki page on tools, hooks, and services.

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

Newest Features:

You can now create an account and mange the products you are a part of! This includes -

Project Submittal - You can instantly add new products to be reviewed by the community. Screen Shot 2021-09-19 at 5 24 43 PM

Tag Management - You can now give feature feedback though tags. Want to say that you are working on a feature? Add a IN DEVELOPMENT tag! Screen Shot 2021-09-19 at 5 24 43 PM

Phase 3 Enhancements :

We have fixed various bugs in the Project and we have also added new features. To know more details please check our Delta Document

Getting Started

Before you get started, if you are using Windows, please visit our wiki page on Windows development.

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/elric97/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/elric97/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 backend/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_PATH='Your mongoDb connection URL'

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

Check out our tutorial to get started with creating and connecting to a database.

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

Update :

Connecting with DB - We have introduced an environment variable DB_PATH, make sure that you set it to your local or deployed environment

Other Available Scripts

yarn test

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

yarn lint

Applies Prettier to all .js files.

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!

Deployment

We used Heroku and Netlify for deploying the application. We have deployed our application's front end you can check it out here , the application's backend can be found here.

Check out our wiki page to understand how to deploy the application.

Future Scope

We believe in the ability to add new features in any project (including our own).

Check out our ideas for the future: Future scope

Contributors 🎯

Group 27
Raj Shah

Nirav Patel


Parth Kanakiya


Mithil Dave


Bhargav Jethwa

Group 25
Emily Tracey

Peeyush Taneja


Jonathan Nguyen


Leila Moran


Shraddha Mishra

Group 29
Palvit Garg

Rachit Sharma


Aditi Bhagwat


Anumit Garg


Shree Lakshmi Ramasubramanian

About

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

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 69.0%
  • Python 24.2%
  • CSS 3.5%
  • SCSS 1.7%
  • HTML 1.2%
  • Dockerfile 0.3%
  • Shell 0.1%