jupytutor 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of jupytutor might be problematic. Click here for more details.

Files changed (25) hide show
  1. jupytutor/__init__.py +16 -0
  2. jupytutor/_version.py +4 -0
  3. jupytutor/labextension/package.json +213 -0
  4. jupytutor/labextension/static/237.fd7acad62cc218608a2d.js +1 -0
  5. jupytutor/labextension/static/312.773d93d591cc8c4a6cc9.js +1 -0
  6. jupytutor/labextension/static/392.33e1f70cd9533a43c220.js +2 -0
  7. jupytutor/labextension/static/392.33e1f70cd9533a43c220.js.LICENSE.txt +9 -0
  8. jupytutor/labextension/static/772.d11ebfddc127515acc55.js +1 -0
  9. jupytutor/labextension/static/remoteEntry.08121379e19594414d28.js +1 -0
  10. jupytutor/labextension/static/style.js +4 -0
  11. jupytutor/labextension/static/third-party-licenses.json +100 -0
  12. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/install.json +5 -0
  13. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/package.json +213 -0
  14. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/237.fd7acad62cc218608a2d.js +1 -0
  15. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/312.773d93d591cc8c4a6cc9.js +1 -0
  16. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/392.33e1f70cd9533a43c220.js +2 -0
  17. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/392.33e1f70cd9533a43c220.js.LICENSE.txt +9 -0
  18. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/772.d11ebfddc127515acc55.js +1 -0
  19. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/remoteEntry.08121379e19594414d28.js +1 -0
  20. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/style.js +4 -0
  21. jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/third-party-licenses.json +100 -0
  22. jupytutor-0.1.0.dist-info/METADATA +135 -0
  23. jupytutor-0.1.0.dist-info/RECORD +25 -0
  24. jupytutor-0.1.0.dist-info/WHEEL +4 -0
  25. jupytutor-0.1.0.dist-info/licenses/LICENSE +29 -0
@@ -0,0 +1,135 @@
1
+ Metadata-Version: 2.4
2
+ Name: jupytutor
3
+ Version: 0.1.0
4
+ Summary: A Jupyter extension for providing students LLM feedback based on autograder results and supplied course context.
5
+ Project-URL: Homepage, https://github.com/kevyg03/jupytutor
6
+ Project-URL: Bug Tracker, https://github.com/kevyg03/jupytutor/issues
7
+ Project-URL: Repository, https://github.com/kevyg03/jupytutor.git
8
+ Author-email: Kevin Gillespie <kevin.gillespie@berkeley.edu>
9
+ License: BSD 3-Clause License
10
+
11
+ Copyright (c) 2025, Kevin Gillespie
12
+ All rights reserved.
13
+
14
+ Redistribution and use in source and binary forms, with or without
15
+ modification, are permitted provided that the following conditions are met:
16
+
17
+ 1. Redistributions of source code must retain the above copyright notice, this
18
+ list of conditions and the following disclaimer.
19
+
20
+ 2. Redistributions in binary form must reproduce the above copyright notice,
21
+ this list of conditions and the following disclaimer in the documentation
22
+ and/or other materials provided with the distribution.
23
+
24
+ 3. Neither the name of the copyright holder nor the names of its
25
+ contributors may be used to endorse or promote products derived from
26
+ this software without specific prior written permission.
27
+
28
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
29
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
30
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
31
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
32
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
33
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
34
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
35
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
36
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
37
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
38
+ License-File: LICENSE
39
+ Keywords: jupyter,jupyterlab,jupyterlab-extension
40
+ Classifier: Framework :: Jupyter
41
+ Classifier: Framework :: Jupyter :: JupyterLab
42
+ Classifier: Framework :: Jupyter :: JupyterLab :: 4
43
+ Classifier: Framework :: Jupyter :: JupyterLab :: Extensions
44
+ Classifier: Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt
45
+ Classifier: License :: OSI Approved :: BSD License
46
+ Classifier: Programming Language :: Python
47
+ Classifier: Programming Language :: Python :: 3
48
+ Classifier: Programming Language :: Python :: 3.9
49
+ Classifier: Programming Language :: Python :: 3.10
50
+ Classifier: Programming Language :: Python :: 3.11
51
+ Classifier: Programming Language :: Python :: 3.12
52
+ Classifier: Programming Language :: Python :: 3.13
53
+ Requires-Python: >=3.9
54
+ Description-Content-Type: text/markdown
55
+
56
+ # jupytutor
57
+
58
+ [![Github Actions Status](https://github.com/kevyg03/jupytutor/workflows/Build/badge.svg)](https://github.com/kevyg03/jupytutor/actions/workflows/build.yml)
59
+ [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/kevyg03/jupytutor/main?urlpath=lab)
60
+
61
+ A Jupyter extension for providing students LLM feedback based on autograder results and supplied course context.
62
+
63
+ ## Requirements
64
+
65
+ - JupyterLab >= 4.0.0
66
+
67
+ ## Testing Locally
68
+
69
+ Create a new conda environment and enter it, then run:
70
+
71
+ ```bash
72
+ pip install jupytutor
73
+ ```
74
+
75
+ From another terminal in the same environment, run
76
+
77
+ ```bash
78
+ jupyter lab
79
+ ```
80
+
81
+ Right click and hit "Inspect Element" and navigate to "Console" to confirm everything is activated.
82
+
83
+ src/config.ts currently controls the settings. This may have to chance based on hosting needs.
84
+
85
+ ## Contributing
86
+
87
+ ### Development install
88
+
89
+ Note: You will need NodeJS to build the extension package.
90
+
91
+ The `jlpm` command is JupyterLab's pinned version of
92
+ [yarn](https://yarnpkg.com/) that is installed with JupyterLab. You may use
93
+ `yarn` or `npm` in lieu of `jlpm` below.
94
+
95
+ ```bash
96
+ # Clone the repo to your local environment
97
+ # Change directory to the jupytutor directory
98
+ # Install package in development mode
99
+ pip install -e "."
100
+ # Link your development version of the extension with JupyterLab
101
+ jupyter labextension develop . --overwrite
102
+ # Rebuild extension Typescript source after making changes
103
+ jlpm build
104
+ ```
105
+
106
+ You can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension.
107
+
108
+ ```bash
109
+ # Watch the source directory in one terminal, automatically rebuilding when needed
110
+ jlpm watch
111
+ # Run JupyterLab in another terminal
112
+ jupyter lab
113
+ ```
114
+
115
+ With the watch command running, every saved change will immediately be built locally and available in your running JupyterLab. Refresh JupyterLab to load the change in your browser (you may need to wait several seconds for the extension to be rebuilt).
116
+
117
+ By default, the `jlpm build` command generates the source maps for this extension to make it easier to debug using the browser dev tools. To also generate source maps for the JupyterLab core extensions, you can run the following command:
118
+
119
+ ```bash
120
+ jupyter lab build --minimize=False
121
+ ```
122
+
123
+ ### Development uninstall
124
+
125
+ ```bash
126
+ pip uninstall jupytutor
127
+ ```
128
+
129
+ In development mode, you will also need to remove the symlink created by `jupyter labextension develop`
130
+ command. To find its location, you can run `jupyter labextension list` to figure out where the `labextensions`
131
+ folder is located. Then you can remove the symlink named `jupytutor` within that folder.
132
+
133
+ ### Packaging the extension
134
+
135
+ See [RELEASE](RELEASE.md)
@@ -0,0 +1,25 @@
1
+ jupytutor/__init__.py,sha256=bGjXMm-o_QRNle1yb6n27PgCOL5riErUjMmNFoACnp8,576
2
+ jupytutor/_version.py,sha256=ac3tgjoOzsODOlacRPCwz99LbZv0NK7ZYAaBWulFo7E,171
3
+ jupytutor/labextension/package.json,sha256=atQW8c-bHqiywNuRWA2iC3gytn0GJViw1-xuwAUilx4,6221
4
+ jupytutor/labextension/static/237.fd7acad62cc218608a2d.js,sha256=_XrK1izCGGCKLbt2KDeTrZTLm6Vud18EAlcBIaf8atg,17901
5
+ jupytutor/labextension/static/312.773d93d591cc8c4a6cc9.js,sha256=dz2T1ZHMjEpsyZUSMbz_oRnZOY7VxyecvNCmHZvBtus,551
6
+ jupytutor/labextension/static/392.33e1f70cd9533a43c220.js,sha256=FCQZIoL_eOQdGF3_cP3A7Tho911WQRANrc1bZeMs7uo,26966
7
+ jupytutor/labextension/static/392.33e1f70cd9533a43c220.js.LICENSE.txt,sha256=eNJ8gc9n9IF8nW1d9sI9niuHstYzjNz5vqXx9UgWSPc,249
8
+ jupytutor/labextension/static/772.d11ebfddc127515acc55.js,sha256=0R6_3cEnUVrMVUK5Vm5_GuA30PSutaQ__9VO8w4rp1A,130313
9
+ jupytutor/labextension/static/remoteEntry.08121379e19594414d28.js,sha256=CBITeeGVlEFNKA3LOGLE7xdv6h61Z8n93tjrXdQDWqk,7542
10
+ jupytutor/labextension/static/style.js,sha256=xsBa7SD45FxHR9Klaumc_Pj0O3uiVjI4Xir8BHRl7XE,152
11
+ jupytutor/labextension/static/third-party-licenses.json,sha256=Ho1rEPfNb5HxzpgkhkmyBfIHh331pZnESTwHrCzRvUI,20563
12
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/package.json,sha256=atQW8c-bHqiywNuRWA2iC3gytn0GJViw1-xuwAUilx4,6221
13
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/237.fd7acad62cc218608a2d.js,sha256=_XrK1izCGGCKLbt2KDeTrZTLm6Vud18EAlcBIaf8atg,17901
14
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/312.773d93d591cc8c4a6cc9.js,sha256=dz2T1ZHMjEpsyZUSMbz_oRnZOY7VxyecvNCmHZvBtus,551
15
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/392.33e1f70cd9533a43c220.js,sha256=FCQZIoL_eOQdGF3_cP3A7Tho911WQRANrc1bZeMs7uo,26966
16
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/392.33e1f70cd9533a43c220.js.LICENSE.txt,sha256=eNJ8gc9n9IF8nW1d9sI9niuHstYzjNz5vqXx9UgWSPc,249
17
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/772.d11ebfddc127515acc55.js,sha256=0R6_3cEnUVrMVUK5Vm5_GuA30PSutaQ__9VO8w4rp1A,130313
18
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/remoteEntry.08121379e19594414d28.js,sha256=CBITeeGVlEFNKA3LOGLE7xdv6h61Z8n93tjrXdQDWqk,7542
19
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/style.js,sha256=xsBa7SD45FxHR9Klaumc_Pj0O3uiVjI4Xir8BHRl7XE,152
20
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/static/third-party-licenses.json,sha256=Ho1rEPfNb5HxzpgkhkmyBfIHh331pZnESTwHrCzRvUI,20563
21
+ jupytutor-0.1.0.data/data/share/jupyter/labextensions/jupytutor/install.json,sha256=5sCSi6Dbbz7r6g-oAaLi85RMOwdBAV45z4d96J8sTkE,179
22
+ jupytutor-0.1.0.dist-info/METADATA,sha256=-QDTIlyncD0lY_KMgQl2Vup_5ihj64i79XAxP_niGao,5722
23
+ jupytutor-0.1.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
24
+ jupytutor-0.1.0.dist-info/licenses/LICENSE,sha256=7qm1oVKOP9HWHYGz7DcN6l7JxgxcwOGh9XIwy5xap98,1523
25
+ jupytutor-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.27.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,29 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) 2025, Kevin Gillespie
4
+ All rights reserved.
5
+
6
+ Redistribution and use in source and binary forms, with or without
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ 1. Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ 2. Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ 3. Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.