Skip to content

This is a StackOverflow monitor where you can easily access the most trending and up-to-date questions on a particular set of tags. This project can be modified to support wider range of tags and provide functionalities.

License

Notifications You must be signed in to change notification settings

Superskyyy/StackOverseer

Repository files navigation

StackOverseer

See the titles of the 10 newest User-defined-related questions and the 10 most voted in the past week.

"core"

Core Feature:

  • On the left sidebar, a tools section gives the entrance to two pages.

  • Each serves a real-time monitored page on 10 latest or 10 trending Questions on "#Android".

  • By clicking on the buttons/ interactive UI, a user can

    1. Navigate to original Question page via new tab.
    2. Preview Question & Answer threads by clicking on the listed question.
    3. See the Votes & Answer count in a straightforward UI.
  • StackOverflow disallows accessing any answer-related-content via iFrames or API. Parsing the RSS feed became the next best option.

  • These pages can be stacked or modified to take user inputs on monitoring different tags/filters with few changes.

Limitations

Features like voting are not implemented as it requires complex auth process. UI components are in place though.

Bonus Features:

  • Following two features doesn't use real-time scraping due to API limits and costs. Few minor modifications will allow more frequent runs.

  • Almost responsive design.. smartphone compatible.

"heatmap"

  • Data visualization of "User heatmap who asked a Android related question over the past week"
    • This feature is implemented using Leaflet.js

"wordcloud"

  • Data visualization of "Technologies most related to Android over the past week"
    • This feature is implemented using wordcloud2.js and a Geocoder API.

Built With

Technologies

  • Django - The web framework for perfectionists with deadlines.
  • jQuery - jQuery JavaScript Library.
  • Bootstrap - The most popular HTML, CSS, and JavaScript framework for developing responsive, mobile first projects on the web.
  • Font-Awesome - The iconic SVG, font, and CSS toolkit.
  • Leaflet - JavaScript library for mobile-friendly interactive maps.
  • wordcloud2.js - Tag cloud/Wordle presentation on 2D canvas or HTML.
  • Feedparser - Parse feeds in Python.
  • Docker - Docker Engine.
  • Gunicorn - Python Http Server.

Services

TO DO LIST:

  • Cleanup code
  • Better Responsive Design

Deploy

Docker - Gunicorn - Tencent Cloud

This project is Dockerized

Configurations

  1. Modify settings.py in StackOverseer, make sure docker is set to True
  • To run the project in pure local env (Not recommended).

  • To build the source code in your local Docker

    • The docker container will automatically reflect latest change of source code. So don't build again, run > docker-compose up instead.
    1. Clone the code, make sure docker is running
    2. Make sure the DOCKER Variable is set to True in settings.py
    3. Run following commands
      [Windows Git Bash]> winpty docker-compose run web python manage.py createsuperuser
      
      [Unix & Powershell]> docker-compose run web python manage.py createsuperuser
      
      docker-compose build
      
      docker-compose up
      

PyLint

  • Pycharm - Preference - Plugin - Marketplace

  • Search for Pylint, Install it and reboot Pycharm. Pylint will appear as an icon in lower left corner, there's one inside VCS - Commit too.

Requirements

Python path can be found by

import sys
      
print("Python EXE : " + sys.executable)

About

This is a StackOverflow monitor where you can easily access the most trending and up-to-date questions on a particular set of tags. This project can be modified to support wider range of tags and provide functionalities.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published