# Component and Services

Component and Service developement is done by making an Angular project where you write your component or service in typescript

On github there is a [NG1 to TiNG example](https://github.com/Servoy/servoyworld_component/tree/ting) that has a "master" branch that just has the NG1 example and the "ting" branch has the TiNG example with some documentation what is what and how to convert.

The specification what a component or service has (properties that can be set, api's that can be called, or events (handlers) that a component can trigger) are defined in a [spec](https://docs.servoy.com/reference/extension-dev/component_services/spec-file)

What types can be used for the properties on the model of the component or service are described [here](https://docs.servoy.com/reference/extension-dev/component_services/spec-file/property_types), those properties can have [tags](https://docs.servoy.com/reference/extension-dev/component_services/spec-file/property_types/tags) to give them a bit more configuration how they are used in developer or at runtime

The [ServoyApi (serverside)](https://docs.servoy.com/reference/extension-dev/component_services/servoyapi) and [Console](https://docs.servoy.com/reference/extension-dev/component_services/console) api objects are exposed in server size scripts that components can have.
