Here is a list of things which you will need to avoid.
Dynamic fonts are not yet supported. In order to use TextMesh or UI.Text you will need to switch your font objects to be in some other mode different from Dynamic, like shown on the screenshot:
Dynamic fonts will be coming to Export2Canvas, but for now they are not supported and no certain date yet when they will become available.
Shaders will simply not work and will be ignored. Export2Canvas relies on the <canvas> element, using the 2D rendering context, instead of WebGL, therefore the concept of shaders doesn't really exist here. Everything is rendered as if you are using a standard unlit sprite shader.
Perspective camera is another thing which will not work, because of not using WebGL. Make sure all your cameras are switched to Orthographic mode, like shown on the screenshot:
3D Meshes and MeshRenderer
There is no feasible way to render textured triangles in the browser without WebGL, therefore 3D meshes are not supported. While Export2Canvas has some support for MeshRenderer by detecting quads and their transformations (translation, rotation, skewing, scaling), you will not be able to render any 3D mesh more complex than that. Also, using SpriteRenderer to render 2D sprites will perform better than using MeshRenderer with quads, even though both will work.
TCP/UDP sockets, HTTP listeners, etc. are not supported and cannot be supported in a web browser, so do not use those. If you want to communicate with a server, we recommend using WWW, UnityWebRequest or WebSockets. Keep in mind that if you also want to target Internet Explorer 9, WebSockets will not work there.
We have deliberately excluded the XML functionality from the list of supported functionalities for a few reasons: The module takes a huge amount of space, the implementation is faulty, it's much better to use JSON via the JsonUtility static class as it relies on the built-in JSON functionality of the browsers.
Try to not use or minimise the usage of 3rd-party plugins as they are known to be problematic. Some of them will be compatible with E2C. Some of them won't be compatible. For a list of 3rd-party plugins known be compatible, click here.
E2C supports managed DLL files by decompiling them and then transpiling them, however that process is known to be problematic, so ultimately we recommend avoiding DLL files if possible and simply placing the C# code used to generate the DLL in a folder within the project.
Unmanaged DLLs (written in C++ for example) on the other hand are not supported at all and will not work.