PIE++ (or "p3" for short) is a Chrome extension that adds some much-needed quality of life features to Indiana University's internal tool PIE (Personnel Information Environment) including:
- Seamlessly download queried historical Inventory Report data to a local file (CSV)
Features to be implemented in the future include:
- Download more reports like Location Evaluations, and Community Notes.
- Set a custom home screen (landing page) for each PIE instance
- Toggle on/off a "return to top" button on articles (they can sometimes get very long)
PIE++ can be installed from the Chrome Web Store
You can sign up for automated Github email reports (triggered on things like push
events) by subscribing to the p3-gh-notifs-l@iu.edu mailing list here!
This project is (and will always be) open-source; any and all are encouraged to contribute.
Have an idea for a feature, but don't know how to code? - Submit a feature request through Github Issues!
This guide will assume that you are a total noob to Git/Github.
- Google Chrome (obviously) version 92+
- Node.JS version 16
- Git
-
Run the following command from the terminal of your choice to clone the repository into a new folder in the cwd (download the source code):
git clone https://github.com/zacharygraber/pie-plus-plus.git
-
Enter the new directory with
cd ./pie-plus-plus
-
Open up the
pie-plus-plus/src
folder in the editor of your choice (VSCode works well)- Refer to the documentation (TODO) for an explanation of each file/folder, as well as tutorials and examples for editing/adding functionality.
-
That's it--You're ready to get to work! PIE++ is designed to be very portable.
After every change you make to .js
files, including both content scripts and the background service worker, you will need to rebuild the project. This is necessary due to project dependencies, namely the webextension-polyfill library from Mozilla.
- Open a terminal in the root directory of the
pie-plus-plus
folder (you can verify this withpwd
on linux/bash orecho %cd%
on Windows). - All build settings should already be configured in
webpack.config.js
, so unless you are adding files (or new dependencies) you shouldn't need to do much. - Run the following command in your terminal (again, from the project's root directory):
npx webpack build
PIE++ does not currently have any automated unit/integration tests, although we hope to implement these in the future. Testing out the extension in-browser is easy, though.
-
Open up Google Chrome
-
Navigate to the Extensions page by typing
chrome://extensions
in the navigation bar or viathree dots -> More Tools -> Extensions
-
Ensure that Developer Mode is toggled on, then click on
Load Unpacked
. -
A dialogue box should pop up. Select the
pie-plus-plus/extension
folder, then clickSelect Folder
. -
You should now see the PIE++ extension in your list.
NOTE: You will need to reload the extension after every change you make with the small refresh icon in the bottom-right corner. If your new changes aren't reflected in the browser, make sure you have also rebuilt the application--see above.