Skip to content

A datamine of the PRONOTE.net server executable to understand changes done to publicly exposed JS modules.

Notifications You must be signed in to change notification settings

Vexcited/PRONOTE.modules.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PRONOTE.net server datamine

A datamine concerning JS modules publicly exposed contained in the PRONOTE.net server executable.

Motivation

Because of new features in PRONOTE and potential breaking changes, we have to follow them in order to make projects like Pawnote and pronotepy work smoothly.

Prerequisites

You may need to have some tools pre-installed depending on your platform.

  • Bun to execute the main script
  • 7z command available at C:\Program Files\7-Zip\7z.exe on Windows, and available globally on any other platform
  • wine command available globally if you're on anything else than Windows, it will allow us to run tools that are only running on Windows

Usage

git clone https://github.com/Vexcited/PRONOTE.modules.js
cd PRONOTE.modules.js

# Install dependencies
bun install

# Run the whole process
bun run src/index.ts

# You can now read every extracted modules
ls modules

It should work on every platform, if not please open an issue !

Where to find?

You can watch the previous runs in the modules branch. It is filled by a CI that runs every two hours and checks if any update has been released.

What is the unused folder?

This is a folder where we put modules that are not used in any require(...) statement in the whole codebase.

There's some issues with parsing require so that's why we put them there in case we need them later, notably for scripts imported directly via the <script> tag and not tracked here.

Credits

I'd like to thank those projects for making this available.

  • Cheerio to scrap the setup download URL from PRONOTE's frontpage
  • ISx to extract files from the InstallShield installer
  • unshield to extract data2.cab file from the InstallShield installer
  • Prettier to format modules after processing

About

A datamine of the PRONOTE.net server executable to understand changes done to publicly exposed JS modules.

Topics

Resources

Stars

Watchers

Forks