Code Monkey home page Code Monkey logo

whiskyton's Introduction

Whiskython

About

This web based app uses an open database about whisky to help you find whiskys you'd probably like. It uses mathematics to run through the tastes classified in that database, and to find the best matches. We were inspired by this data visualization shared on Reddit.

What really matters

This is our very first project in Python (and we are not professional coders) -- so all feedback is important to help us through our learning process. Don't hesitate to criticize our code and software design! To be true, that is what we are expecting :)

Installation

  1. Clone the repository: $ git clone [email protected]:cuducos/whiskyton.git.

  2. Go to the repository folder: $ cd whiskyton (if you want, get your virtualenv running there).

  3. Install the dependencies: $ pip install -r requirements.txt.

  4. You should have the coffee command line tool working: probably $ apt-get install nodejs and $ npm install coffee-script should do the job.

  5. Create and feed the database: $ python manage.py db upgrade.

  6. Run the server: $ python manage.py runserver.

If you wanna deploy to Heroku, you need to use heroku-buildpack-multi.

Tests

To run tests: $ nosetests.

Nose has serious difficulties in finding tests in executable files. That said, you might wanna change the permissions of the tests files: $ chmod -x $(find whiskyton/tests/ -name '*.py').

Some tests use your local Firefox through Selenium.

Managing the application

Charts cache

If you want to get rid of all the cached SVG charts: $ python manage.py charts delete.

If you want to create all possible charts and cache the SVG files: $ python manage.py charts create (it is not necessary, the app creates and caches them on the fly; however pre-caching them can optimize page loading time).

Page views data

If you want to export analytics data (date, whisky and page views) as a CSV file to an external FTP server, you will need to set these ENV variables: FTP_SERVER, FTP_USER and FTP_PASSWORD. Once you have these variables, just run: $ python manage.py analytics save.

Thanks

We had a lot of Python teachers, we are so glad we could count on you, guys:

In sum, we had the best teachers of the world in Python. Any mistake here is completely our fault.

Also we are glad to have contributions from Henrique Bastos, Lucretiel, Justin Velluppillai and Chris Loverchio.

License

Copyright (c) 2015 Eduardo Cuducos and Gabriel Vicente

Licensed under the MIT license (see MIT-LICENSE file)

whiskyton's People

Contributors

cloverchio avatar cuducos avatar henriquebastos avatar lucretiel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.