A no-frills embeddable mix between professional portfolios and lightweight job boards.
- Directory listings for companies or people doing a thing
- Geocoding and tagging / categorizing those listings
- Jobs board that complements those directory listings
This is a project of Gleap LLC with copyright 2014.
- Sam Pottinger (samnsparky)
- Rory Olsen (rolsen)
FollowThru uses a standard set of Python libraries and frameworks common to web application development including:
- MongoDB
- Flask
- Backbone.js
- pymox (server-side testing)
Ensure Python 2.7.*, PIP, and MongoDB.
If you are using TinyClassified as a standalone app, make sure you have
flask_config.cfg set up. For example:
$ cp flask_config.cfg.start flask_config.cfg
If you are using TinyClassified as part of Occam, the config attributes in flask_config.cfg.start still need to be defined in the flask_config.json of Occam.
Install VirtualEnv
$ easy_install pip
Create virtual environment
$ virtualenv venv
Start virtual environment
$ source venv/bin/activate
Install software
$ pip install -r requirements.txt
Leave virtual environment
$ deactivate
Start virtual environment
$ source venv/bin/activate
Run automated tests
$ python run_tests.py
Start local server
$ python tiny_classified.py
Leave virtual environment
$ deactivate
Due to the potential for mutliple deployment and client-driven modification outside of Gleap (the original developer), this project values high test coverage and style adherence.
- The project asks for 80% test coverage on server-side. Models do not count towards or against that 80% requirement.
- Server-side modules, classes, and functions should be documented using epydoc.
- Server-side code should conform to Google's Python Style Guide.
- The project uses plain old CSS but should have element, class, and finally ID-based rules in that order.
- Client-side JS should follow Google's JavaScript Style Guide.
- Client-side files, classes, and functions should be documented using JSDoc.
- Client-side automated tests are optional but encouraged. For help with getting started on client-side testing, see Addy Osmani's tutorial.
- All code checked in (via Gleap) to master or a version release branch should go through code review.
- Code produced during pair programming or for initial project bootstrapping does not require code review. However, the results of pair programming should still go through a pull request.
- Engineers can perform a code review for themselves if another enigneer is not available within one working day.