Skip to content

This project attempts to help project creators understand how to market their project on Kickstarter vs Indiegogo. The purpose of this tool is to not only give them advice on platforms but be able to efficiently market their project and provide supporting data for whichever is the better platform.

Notifications You must be signed in to change notification settings

Best-Brain-Gang/Crowdfunding_Analysis

Repository files navigation

Girl in a jacket

 

Crowdfunding Analysis

This project attempts to help project creators understand how to market their project on Kickstarter vs Indiegogo. The purpose of this tool is to not only give them advice on platforms but be able to efficiently market their project and provide supporting data for whichever is the better platform.


Technologies

This project leverages python 3.7.9 with the following packages:

  • csv - This was used to be able to read and write csv files easier and that each csv data are separated by a comma.

  • fire - version 0.4.0 - This allows us to execute any fuction defined in a python file, using the terminal/ Command Line Interface so that you can call the function while on the terminal.

  • Jupyter Lab - version 2.2.6 - Used to create and share documents that contain live code, equations, visualizations and narrative text.

  • Mapbox API - This is used to get API data for this project's data visualization. To have access to Mapbox's API key the user needs to register for an account and save their own keys.

  • matplotlib - For the visualization of crowdfunding data.

  • numpy - This provides the ability to work with arrays and use different mathematical calculations on arrays.

  • pandas - For the analysis of crowdfunding data.

  • pathlib - version 1.0.1 - This was used to locate through the directory or file path. Also, it converts a string and converts that supplied string as a PosixPath that can be utilize by other functions such as reading or writing files to csv files.

  • Plotnine - This is a data visualisation package for Python based on the grammar of graphics.

  • pytest - version 6.2.3 - This was used as a testing tool to allow us to test our user defined functions following the unit testing process of arrange, act and assert. Unit test allows us to make our functionality more robust.

  • python-dotenv library - version 0.17.1 - This enables the user to read key-value pairs from an .env file and set them as an environment variables.

  • PyVizlot - Python visualization package that provides a single platform for accessing multiple visualization libraries. Two of the libraries are:

    • hvplot.pandas - version 0.7.2 - For the interactive visualization of the crowdfunding data.

    • plotly.express - version 4.13.0 - For the visualization of crowdfunding data.

  • questionary - version 1.9.0 - For interactive user prompts and dialogs. This was used to create interactive question inputs/options in the terminal for users to answer.

  • Seaborn - This was used to create statistical grahps.

  • Sqlalchemy - version 1.3.20 - This is the Python SQL toolkit and Object Relational Mapper that gives application developers the full power and flexibility of SQL.

  • Streamlit - version 0.84.2 - This will allow us to view our Crowdfunding Analysis on the web browser.

  • sys Module - This was used specifically for its sys.exit()funciton which was used to exit the program back to its command prompt. The sys module provides functions and variables used to manipulate different parts of the Python runtime environment. You will learn some of the important features of this module here.

  • Voilà - This will allow us to view our Crowdfunding Analysis on the web browser.

  • Wordcloud - This will allow us to create a wordcloud data visualization technique that is used for representing text data.


Installation Guide

  1. On the terminal, under the conda dev environment, install the following packages and dependencies before running the crowdfunding analysis tool:

      pip install pandas
      pip install plotly
      pip install hvplot
      pip install jupyterlab
      pip install streamlit
      pip install seaborn
      pip install fire
      pip install questionary
      pip install pytest
      pip install python-dotenv
      conda install -c pyviz hvplot
      conda list nodejs
      conda list sqlalchemy
      conda install -c conda-forge plotnine
      conda install -c conda-forge wordcloud
    
    
  2. To show your crowdfunding analysis tool on your web browser, use voila command on the conda dev terminal and while on the correct directory of your crowdfunding analysis application:

    voila crowdfunding_analyzer.ipynb

    • This will pop up on your web browser.
  3. To show your file on youryour web browser, use streamlit run command on the conda dev terminal and while on the correct directory of your crowdfunding analysis application: streamlit run [filename.py]


Examples

Sample plots for Kickstarter and Indiegogo.

![Plot Kickstater and Indiegogo](./Resources/Images/plot_ks_indiegogo.gif)

Usages

  1. We use crowdfunding_questionary.py and type in the category of your project. So that you can check which platform would work for you better.

    Questionary

  2. We use crowdfunding_analyzer.ipynb to get the comparison on Kickstarter versus Indiegogo. It will show data visualization of each main category.

    Plot Kickstater and Indiegogo Countries

  3. (WIP)We use crowdfunding_streamlit.py as a dashboard to view our analysis.

    Plot Kickstater and Indiegogo Countries


Contributors

UW FinTech Bootcamp

Colin Benjamin Linkedin    |     Justine Cho Linkedin    |     Christopher Henderson Linkedin    |     Nathan Patterson Linkedin


Deck

Click HERE to learn more from our presentation.

Crowdfunding Deck

License

MIT License

Copyright (c) [2021] [UW Fintech Bootcamp: Colin Benjamin | Justine Cho | Chris Henderson | Nathan Patterson]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

This project attempts to help project creators understand how to market their project on Kickstarter vs Indiegogo. The purpose of this tool is to not only give them advice on platforms but be able to efficiently market their project and provide supporting data for whichever is the better platform.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •