Mobile development platforms give developers a single environment possessing all of the tools developers need to create a mobile application. Most platforms are geared toward creating iOS or Android applications, but others are cross-platform applications and provide an environment with specific native tools. Others will possess hybrid functionality and tools to create applications across multiple operating systems. Companies in need of a mobile application provide their developers with a platform to write, manage, and deploy mobile applications. This process usually takes place entirely within a development or IT department but can occur throughout a small company or on an individual basis. The products can be used to create anything from games to e-commerce applications.