MacPorts GSoC 2018: WebApp
Branch: master
Clone or download
mojca Database design: further brainstorming
* Add new tables for commits, obsolete ports, deleted ports.
* Delete portversion table.
* Minor improvements to the ports table.
Latest commit 3ac1960 May 17, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs Database design: further brainstorming May 17, 2018
static/port Add diff graphs May 14, 2018
.env add May 6, 2018
Database_Design.txt Added readme and Database design May 9, 2018
Procfile add May 6, 2018 Remove staticfiles/ and rename static/css to static/port/css May 11, 2018
app.json add May 6, 2018 added May 6, 2018

Welcome to MacPorts webapp.

The Idea is to create a final web app displaying these things about a particular port (eg: ) :

  • Port Information

All the port information will stored in port table .

  • Build History/Summary

All the history as far as available will be stored.

  • Installation Statistics

If a user volunteers for Statistics. Updated Statistics version will give wonderful insights.

  • Results of Livecheck

  • Git Log / Commit History

  • Links to track tickets for that port

  • Binary Package status

  • Links for Pull Request (Optional)

This project is currently active on :

Setup in Local Envirnoment

Install python

python3 --version
sudo apt-get install python3.6

Install pipenv

pip install --user pipenv

Install postgresql

sudo apt-get install python-pip python-dev libpq-dev postgresql postgresql-contrib
pip3 install psycopg2

Install gunicorn (Needed for heroku deployment)

pip3 install gunicorn

Run these

git clone
cd macports-webapp

Open settings ('macports/') and change the Database according to your database

    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'macports',
        'USER': 'postgres',
        'PASSWORD': 'qwerty',
        'HOST': 'localhost',
        'PORT': '5432',

Now run these commands

pip --three
pipenv install
pipenv shell
python migrate
python collectstatic
python runserver

open the ip provided. And add /port at the end of the ip.

Deploying to Heroku

$ heroku create
$ git push heroku master

$ heroku run python migrate
$ heroku open