A mod for Possession must be in a self-contained folder, which must be placed in the following location:
Linux: ~/.local/share/possessionroguelike/mods/
Windows: C:\Users(YourUserName)\AppData\Roaming\possessionroguelike\mods
Mac: ~/Library/Application Support/possessionroguelike/mods/
There's a work-in-progress Modding Guide available that describes how to create content for the game.
An example mod, the Sunken City, is available as a reference. (No guarantees how fun it is to play, it's mainly just there as an example)
You can also download a blank mod template.
Source code for the engine is available on GitHub. It will not run; it's missing all of the content. It's mainly intended as a reference for modders, but it is offered under the MIT license in case anyone wants to use anything in it for their own game. Possession is built using the LÖVE framework Framework (currently built for version 11.2).
But if you're interested in using anything for your own game, I recommend using Roguelove instead, which is the version of the engine I plan on updating with more features than are used in Possession (like items). It's built to use the LÖVE Framework as well, and is also offered under the MIT license.