EduAI, a website to help people learn and explore MOOCs in a more efficient way.
Our application will have two primary novel features:
- Features for exploring MOOCs based on knowledge concept dependencies.
- Personalized learning. Learners have various backgrounds, and traditional platforms ignore this diversity by suggesting the same courses for every learner.
OS X & Linux & Windows:
pip install -r requirements.txt
python application.py
Go to http://0.0.0.0:8080 by default. You can enter the browse mode. Search the relevant concept such as machine learning on the above search bar, you can find relevant courses to the concept.
- Part C
- Basic functional logics done
- Part B
- Basic Templates Done
- Part A
- Work in Progress
-
All the test cases codes could be found [here].
-
We have two level test cases.
-
module level. Test each sub-module.
- /testing/browse_test.py
- /testing/graph_test.py
- /testing/login_test.py
- /testing/logout_test.py
- /testing/search_test.py
- /testing/signup_test.py
- /testing/userdesc_test.py
- /testing/userimage_test.py
- /testing/userinfo_test.py
-
website level. Test all functions.
- /testing/all_test.py
-
- Fork it
- Create your feature branch (
git checkout -b feature/fooBar
) - Commit your changes (
git commit -am 'Add some fooBar'
) - Push to the branch (
git push origin feature/fooBar
) - Create a new Pull Request
The document of our this project can be found [here].
The system has been deployed on AWS, please check this link for you need.
Our demo can be found in this link.
- To meet the course requirement for Part C, we re-committed our repo at Feb. 18. Please just ingore all the previous records before that day. (@Professor, @TA)
- code
-
This file is for the functional codes, including data crawl and database construction.
-
/crawler
- crawl.py
- course data crawl.
- index_module.py
- build the inverted index database for search.
- crawl.py
-
/auth
- init.py
- initialization file for auth
- controller.py
- functions related to user management.
- models.py
- define user class.
- init.py
-
/browse
- init.py
- initialization file for browse mode.
- controller.py
- functions related to browse mode.
- generate_categories.py
- Parse the original course_taxonomy into sturctured data.
- init.py
-
/search
- init.py
- initialization file for search mode.
- controller.py
- functions related to search mode.
- search_engine.py
- search engine class.
- utils.py
- Define utility functions for search module.
- init.py
-
/testing
- all_test.py
- test all functions.
- browse_test.py
- test browse mode.
- graph_test.py
- test concept graph.
- login_test.py
- test login
- logout_test.py
- test logout.
- search_test.py
- test search
- signup_test.py
- test sign up.
- userdesc_test.py
- test user description
- userimage_test.py
- test user image.
- userinfo_test.py
- test user information.
- all_test.py
-
/users
- init.py
- initialization file for user.
- controller.py
- Controller for user home page
- /modules
- education.py
- Provide education level list for frontend.
- history,py
- Provide user history for frontend.
- interests.py
- Provide interest list for frontend.
- portfolio.py
- user information stored in database.
- recommendation.py
- recommend a course to user.
- education.py
- init.py
-
/visualization
- init.py
- initialization file for the visualization module.
- controllers.py
- functionality in visualization.
- init.py
-
application.py * The main file
-
config.py
- setting of support files.
-
config.ini
- instantiation of support files
-
init.py
- homepage backend.
-
/static
- resources for frontend.
-
/templates
- templates for frontend.
-
requirements.txt
- dependent libraries
-