This project is a side project/ experiment.
The objective is as follows:
- support self directed learning via the user journey of figuring out what is the concept you want to learn while searching for resources.
- encourage metacognition by presenting the concept map first and encouraging users to explore/ search in terms of concepts.
See the live website here
Read some unrefined reasonings behind the website here
- Find resources by concepts, subconcepts, prerequisites, mediatype, and duration.
- Refine search or explore related resources by exploring foundations (prerequisites), alternatives (same concept), or deep dive (expanding on sub concepts).
- Loosely follows MVC
- app initialization can be found in
src/__init__.py
- models can be found in
src/models
- blueprints can be found in
src/blueprints
- templates can be found in
src/templates
Install Python3 Set up Postgresql
- create database and set the appropriate database url (elaborated below) Set up virtual environment
- create
virtualenv src
- set DATABASE_URL environment variable
- Start
source env/bin/activate
- Start virtual enviroment
source env/bin/activate
- Load requirements:
pip install -r requirements.txt
- Run app:
python3 src/__init__.py
To Upload a Dropbox Dump Database to Heroku
heroku pg:backups:restore 'https://dl.dropboxusercontent.com/<random string from dropbox link>/<file name>' DATABASE --app panorama-stage
To Update Db flask db migrate -m "comment" flask db upgrade
- Start virtual env
python3 -m unittest discover tests