I also ran into related problems with arkworks-circom and wasm, specifically it was trying to build wasmer & wasix support and it was a bit of a nightmare to build and run cleanly with wasm-pack.
So I made https://github.com/HarryR/ark-circom-witnesscalc
This uses circom-witnesscalc instead of the circom compiled wasm file, and I added support for direct bytes loading meaning no filesystem access is required, using this method I can build a single .wasm file that proves a circuit - requiring only that you provide the inputs as JSON, it then returns the proof as JSON.
Apparently circom-witnesscalc is faster too?
I also ran into related problems with arkworks-circom and wasm, specifically it was trying to build wasmer & wasix support and it was a bit of a nightmare to build and run cleanly with wasm-pack.
So I made https://github.com/HarryR/ark-circom-witnesscalc
This uses circom-witnesscalc instead of the circom compiled wasm file, and I added support for direct bytes loading meaning no filesystem access is required, using this method I can build a single .wasm file that proves a circuit - requiring only that you provide the inputs as JSON, it then returns the proof as JSON.
Apparently circom-witnesscalc is faster too?