StopStalk prod code ๐Ÿ˜Ž
Python JavaScript CSS HTML
Fetching latest commitโ€ฆ
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
controllers Russian translation complete Jan 22, 2017
cron Site added to the problem page + minor fixes Nov 29, 2015
languages Russian translation complete Jan 22, 2017
models [Issue #192]: StopStalk in Russian ^_^ Jan 9, 2017
modules minor temporary hack Jan 10, 2017
private Minor logging update Jan 18, 2017
static [Issue #189]: Minor bugfix Dec 19, 2016
views Minor code cosmetics and refactoring Jan 12, 2017
.gitignore [Issue #166]: Show tags button for problem page Oct 27, 2016
ABOUT MIT License update 2016 Jan 3, 2016
LICENSE Happy new year :) Jan 1, 2017 README and for UVa Dec 14, 2016 Repo initialized Jul 1, 2015


Stop stalking and Start StopStalking ๐Ÿ˜Ž

Module Requirements

Note: Apply sudo if required for your system.

Install the required packages by running:

pip install -r requirements.txt


  1. Install web2py in a directory

    • From source
    $ git clone --recursive
    • From zip

      Directly download appropriate zip and unzip it to get the web2py directory set up on your local machine.

      Note: In this method you will have a fixed version of web2py, whereas in the former you might as well keep on pulling the latest changes made in web2py source.

    If you have it already jump to step 2.

  2. Navigate into the applications directory in web2py directory.

    $ cd web2py/applications/
  3. Install StopStalk by cloning this repository

    git clone
    mv stopstalk-deployment stopstalk

    Note: Web2Py does not allow appname to contain hyphens.

  4. Install MySQL - here Make sure you remember the root password for mysql server.

  5. Create a database in MySQL

    $ mysql -u root -p        # Enter your mysql root password after this.
    mysql> CREATE DATABASE migration;
    mysql> CREATE DATABASE uvajudge;
  6. Copy to models/

    $ cd stopstalk/
    $ cp models/ models/
  7. Open and change the settings.

    current.mysql_user = "root" # Change if you have given access to any other user in mysql
    current.mysql_password = "" # As per your mysql password
    current.mysql_server = "localhost"
    current.mysql_dbname = "migration" # Will remain same as long as you followed 5.
    current.mysql_uvadbname = "uvajudge" # Will remain same as long as you followed 5.
    # Configure mail options
    current.smtp_server = "logging" # Mails will not be sent. Will be logged where the web2py server is running
                                    # Else you can set it to your smtp server.
    current.sender_mail = ""        # Not required if logging
    current.sender_password = ""    # Not required if logging
    current.bulk_smtp_server = "logging"
    current.bulk_sender_mail = ""        # Not required if logging
    current.bulk_sender_password = ""    # Not required if logging
    current.analytics_id = "" # Leave it empty if you don't want Google Analytics on Localhost
    current.calendar_token = "" # Leave it empty if you don't have an access token ID for Google Calendar API
    current.mailboxlayer_key = "" # Leave it empty for very basic email validation

    In case if you want to send emails - Install postfix for your respective OS and configure the above smtp server accordingly.

  8. Navigate back to the web2py folder and start the web2py server.

    $ cd web2py
    $ python -a yourPassword // Choose any password
  9. Open the browser and go to the URL -



    • The database will be completely empty after installation
  10. Done. ๐Ÿ˜„

Project Dependencies

StopStalk is built on the Web2Py Framework, which is a Python based MVC framework. The project also depends on a number of other open source packages, some of which are


  1. Fork the repository
  2. Clone your forked repository
  3. Find any of the issues from here - Issues and try solving it or any other enhancements
  4. Solve the bug or enhance the code and send a Pull Request!

    Note: Make sure to add the issue number in the commit message.

    Example Commit message: Solved Issue #5

  5. We will review it as soon as possible.


Configure the models/ file as per your requirement.

Configuring Calendar API client ID

  1. Goto Google developers console and click on New Project.
  2. Give the project a name like stopstalk-test and create the project.
  3. Goto API Manager.
  4. Search and select Google Calendar API and enable it.
  5. Click on Go To Credentials and fill out the form
  6. Copy client ID and paste it in models/
  7. Done. ๐Ÿ˜„



Contact Us Page:

Creator Website:

Social Links