Abstract: A method of deploying an application is provided. The method includes publishing a first code package to a package registry and publishing one or more further code packages to the package registry. The first code package can include code specifying a first definition of a class and at least one of the one or more further code packages comprises code specifying a further definition of the class. The further definition of the class comprises prototype merging so that on compilation the first definition of the class and the extended definition of the class are loaded as a single class, and module augmentation so that the first and extended definitions of the class are treated as a single merged class by development tools.