-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathresources.py
More file actions
113 lines (109 loc) · 6.92 KB
/
Copy pathresources.py
File metadata and controls
113 lines (109 loc) · 6.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
"""
Learning resources module - provides curated educational resources for each subject area
"""
def get_learning_resources(section_name, topic_performance, section):
"""
Generate curated learning resources (videos, tutorials, practice sites)
based on the section and weak topics
"""
# Filter topic performance for this section
if not topic_performance.empty:
section_topics = topic_performance[topic_performance['section'] == section]
weak_topics = section_topics[section_topics['is_weak'] == True]['topic'].tolist() if not section_topics.empty else []
else:
weak_topics = []
# Resource database organized by section
resources = {
'Math': {
'videos': [
{'title': 'Khan Academy - Mathematics Basics', 'url': 'https://www.khanacademy.org/math'},
{'title': 'Professor Leonard - Math Fundamentals', 'url': 'https://www.youtube.com/c/ProfessorLeonard'},
{'title': 'PatrickJMT - Math Tutorials', 'url': 'https://www.youtube.com/user/patrickJMT'},
{'title': '3Blue1Brown - Visual Math', 'url': 'https://www.youtube.com/c/3blue1brown'},
{'title': 'Organic Chemistry Tutor - Math Playlist', 'url': 'https://www.youtube.com/c/TheOrganicChemistryTutor'},
],
'practice': [
{'title': 'IXL Math Practice', 'url': 'https://www.ixl.com/math/'},
{'title': 'Brilliant - Problem Solving', 'url': 'https://brilliant.org/courses/math-fundamentals/'},
{'title': 'Art of Problem Solving', 'url': 'https://artofproblemsolving.com/'},
{'title': 'Math is Fun - Interactive Lessons', 'url': 'https://www.mathsisfun.com/'},
{'title': 'Prodigy Math Game', 'url': 'https://www.prodigygame.com/'},
],
'interactive': [
{'title': 'Desmos Graphing Calculator', 'url': 'https://www.desmos.com/calculator'},
{'title': 'GeoGebra - Interactive Math', 'url': 'https://www.geogebra.org/'},
{'title': 'Mathway - Problem Solver', 'url': 'https://www.mathway.com/'},
{'title': 'Wolfram Alpha', 'url': 'https://www.wolframalpha.com/'},
]
},
'Verbal': {
'videos': [
{'title': 'Grammar Hero - English Grammar', 'url': 'https://www.youtube.com/c/GrammarHero'},
{'title': 'English with Lucy - Vocabulary', 'url': 'https://www.youtube.com/c/EnglishwithLucy'},
{'title': 'Khan Academy - Grammar', 'url': 'https://www.khanacademy.org/humanities/grammar'},
{'title': 'Write to the Top - Writing Skills', 'url': 'https://www.youtube.com/c/WriteToTheTop'},
{'title': 'Vocabulary.com Videos', 'url': 'https://www.vocabulary.com/'},
],
'practice': [
{'title': 'Grammarly - Writing Assistant', 'url': 'https://www.grammarly.com/'},
{'title': 'Vocabulary.com', 'url': 'https://www.vocabulary.com/'},
{'title': 'Quizlet - Vocabulary Practice', 'url': 'https://quizlet.com/'},
{'title': 'ReadTheory - Reading Comprehension', 'url': 'https://readtheory.org/'},
{'title': 'NoRedInk - Grammar Practice', 'url': 'https://www.noredink.com/'},
],
'interactive': [
{'title': 'Duolingo - Language Learning', 'url': 'https://www.duolingo.com/'},
{'title': 'Memrise - Vocabulary Builder', 'url': 'https://www.memrise.com/'},
{'title': 'Grammar Bytes - Interactive Exercises', 'url': 'https://chompchomp.com/menu.htm'},
]
},
'Non-verbal': {
'videos': [
{'title': 'Logical Reasoning - Visual Patterns', 'url': 'https://www.youtube.com/results?search_query=non+verbal+reasoning+patterns'},
{'title': 'Spatial Reasoning Tutorials', 'url': 'https://www.youtube.com/results?search_query=spatial+reasoning+tutorial'},
{'title': 'Pattern Recognition Practice', 'url': 'https://www.youtube.com/results?search_query=pattern+recognition+practice'},
{'title': 'Abstract Reasoning Guide', 'url': 'https://www.youtube.com/results?search_query=abstract+reasoning+guide'},
],
'practice': [
{'title': 'Brilliant - Logic Puzzles', 'url': 'https://brilliant.org/courses/logic/'},
{'title': 'Lumosity - Brain Training', 'url': 'https://www.lumosity.com/'},
{'title': 'Peak - Brain Games', 'url': 'https://www.peak.net/'},
{'title': 'Elevate - Cognitive Training', 'url': 'https://www.elevateapp.com/'},
{'title': 'BrainBashers - Puzzles', 'url': 'https://www.brainbashers.com/'},
],
'interactive': [
{'title': 'Chess.com - Strategic Thinking', 'url': 'https://www.chess.com/'},
{'title': 'Puzzle Baron - Logic Puzzles', 'url': 'https://logic.puzzlebaron.com/'},
{'title': 'Simon Tatham\'s Puzzles', 'url': 'https://www.chiark.greenend.org.uk/~sgtatham/puzzles/'},
]
},
'Comprehension': {
'videos': [
{'title': 'Reading Comprehension Strategies', 'url': 'https://www.youtube.com/results?search_query=reading+comprehension+strategies'},
{'title': 'Critical Reading Skills', 'url': 'https://www.youtube.com/results?search_query=critical+reading+skills'},
{'title': 'Khan Academy - Reading & Vocabulary', 'url': 'https://www.khanacademy.org/ela'},
{'title': 'Speed Reading Techniques', 'url': 'https://www.youtube.com/results?search_query=speed+reading+techniques'},
],
'practice': [
{'title': 'ReadWorks - Comprehension Practice', 'url': 'https://www.readworks.org/'},
{'title': 'CommonLit - Free Reading Passages', 'url': 'https://www.commonlit.org/'},
{'title': 'ReadTheory - Adaptive Reading', 'url': 'https://readtheory.org/'},
{'title': 'Project Gutenberg - Free Books', 'url': 'https://www.gutenberg.org/'},
{'title': 'Newsela - Current Events Reading', 'url': 'https://newsela.com/'},
],
'interactive': [
{'title': 'Actively Learn - Interactive Texts', 'url': 'https://www.activelylearn.com/'},
{'title': 'Epic! - Digital Library', 'url': 'https://www.getepic.com/'},
{'title': 'Spreeder - Speed Reading Tool', 'url': 'https://www.spreeder.com/'},
]
}
}
# Get resources for this section, default to empty if not found
section_resources = resources.get(section_name, {
'videos': [],
'practice': [],
'interactive': []
})
# If we have weak topics, we could potentially filter/prioritize resources
# For now, return all curated resources for the section
return section_resources