Best methods of creating a minimap?

I’ve been trying to figure out how to create an efficient minimap for quite a bit now. I want it to rotate based on player camera rotation, adjust to how to player moves/show diff parts of map depending on player’s location, and show other players on the map.

Any ideas? The minimap plugin a lot of people I’ve seen recommend is trash.

I know a method of creating Minimap, do you know what ViewPortFrame is? you can place Constructions inside it, and you can connect it to a camera, and you can make the camera follow the Player’s position, change the Camera’s CFrame and make Minimap the way you want it
and without using a plugin

just load your map or regions into some app (custom made app or some app you can find online) and generate an image from it using a top-down view, then you can use other GuiObjects along with basic math to represent important things and entities on top of that image. (using viewport frames would be inefficient to represent maps because it would duplicate all of your workspace parts)

I’m aware of viewport frames, and I did that already but it doesn’t really work too well. I want it to rotate and show other players on the map and such.