If you're launching it as "Portable", and you're launching it from your home directory, it's going to place the mutable data in the current directory. This is very standard for portable apps.
So no, "portable" is not what you want. If you launch it as non-portable and it drops a folder in ~, then that is a problem.
In both modes it creates a ~/Grayjay directory, even when launching from ~/tmp/grayjay/Grayjay.Desktop-linux-x64-v2/ so ~/Grayjay was inevitable. In portable mode it makes the directory and does nothing with it. In non-portable mode it dumps a ton of data into the directory. I didn't pay attention to what the data actually was. So yes you're probably right.
But either way, Portable mode isn't behaving portably because it's touching directories outside of the current directory, and non-portable mode is putting data in ~/Grayjay instead of ~/.config/Grayjay so it doesn't do what I want it to do in any mode.
I'm quite happy actually that while this is a HUGE annoyance... It's also only an annoyance, and VERY simple to fix (as long as they do). Which means that this app is likely going to wind up as a daily driver for me once a few things get ironed out. I see the concept and structure of the app, and I like it.
So no, "portable" is not what you want. If you launch it as non-portable and it drops a folder in ~, then that is a problem.