3 added 632 characters in body
source | link

So you want to create an extension and you are using an external resource/package for constructing it. In my opinion, whatever package you have used in your extension, your extension should follow Magento best practices. That means you should separate all js, css, images from the external resource and should place in base\default theme package directories.

ie there is no such unique location exists for placing third party package resources. Ultimately when you deliver a cool extension, all js, css and images related to your extension should be kept in a place where an another developer is normally going to look and which is in almost cases is the base/default theme package.

In short

All your extension js should come under

skin\frontent\base\default\js\[your_extension]\[all_of_your_js_files]
skin\frontent\base\default\css\[your_extension]\[all_of_your_css_files]
skin\frontent\base\default\images\[your_extension]\[all_of_your_images]

//for third parties, you can create an inner directory, to specify it
skin\frontent\base\default\js\[your_extension]\[your_external_resource]\[resource_js_files]
skin\frontent\base\default\css\[your_extension]\[your_external_resource]\[resource_css_files]
skin\frontent\base\default\images\[your_extension]\[your_external_resource]\[resource_image_files]

This way, an another developer can easily find js, css and images (of your external resources too) of your extension very easily. Since you are using an extra sub directory to indicate the external resource files inside your extension name directory, it will give others a best clue that your extension is relying on some third party packages.

So I recommend you to separate the external packages and make them a part of your extension so that, an another developer can easily find your dependencies. :-)

EDIT - 1

You should not make your extension burden for your site owner. You can avoid this difficulty by properly align your extension. That means, if you save all related files in the specified directory locations, then what all a site owner should do is, grab your extension and then Merge your extension from the application root directory. ie Align your extension properly. It should look like this.

/app
|_____code\community\Namespace\Module\...
|_____design
|        |_____frontend\base\defalt\...
|        |_____adminhtml\base\defalt\...

/skin
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files

EDIT - 2

If there are some packages, which should share across all Magento applications (such as a javascript library, or a php package etc), then you can put them in \lib directory.

It is true that, there may be duplicate file exist if two extension rely on the same resource packages. They may use different version of the same resource package too. But basically, your extension should use the resource of your extension only (and can rely on default Magento's resources) and it should not rely on other extension's resources, unless your extension is an "extending version" of a third party extension.

So you want to create an extension and you are using an external resource/package for constructing it. In my opinion, whatever package you have used in your extension, your extension should follow Magento best practices. That means you should separate all js, css, images from the external resource and should place in base\default theme package directories.

ie there is no such unique location exists for placing third party package resources. Ultimately when you deliver a cool extension, all js, css and images related to your extension should be kept in a place where an another developer is normally going to look and which is in almost cases is the base/default theme package.

In short

All your extension js should come under

skin\frontent\base\default\js\[your_extension]\[all_of_your_js_files]
skin\frontent\base\default\css\[your_extension]\[all_of_your_css_files]
skin\frontent\base\default\images\[your_extension]\[all_of_your_images]

//for third parties, you can create an inner directory, to specify it
skin\frontent\base\default\js\[your_extension]\[your_external_resource]\[resource_js_files]
skin\frontent\base\default\css\[your_extension]\[your_external_resource]\[resource_css_files]
skin\frontent\base\default\images\[your_extension]\[your_external_resource]\[resource_image_files]

This way, an another developer can easily find js, css and images (of your external resources too) of your extension very easily. Since you are using an extra sub directory to indicate the external resource files inside your extension name directory, it will give others a best clue that your extension is relying on some third party packages.

So I recommend you to separate the external packages and make them a part of your extension so that, an another developer can easily find your dependencies. :-)

EDIT

You should not make your extension burden for your site owner. You can avoid this difficulty by properly align your extension. That means, if you save all related files in the specified directory locations, then what all a site owner should do is, grab your extension and then Merge your extension from the application root directory. ie Align your extension properly. It should look like this.

/app
|_____code\community\Namespace\Module\...
|_____design
|        |_____frontend\base\defalt\...
|        |_____adminhtml\base\defalt\...

/skin
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files

So you want to create an extension and you are using an external resource/package for constructing it. In my opinion, whatever package you have used in your extension, your extension should follow Magento best practices. That means you should separate all js, css, images from the external resource and should place in base\default theme package directories.

ie there is no such unique location exists for placing third party package resources. Ultimately when you deliver a cool extension, all js, css and images related to your extension should be kept in a place where an another developer is normally going to look and which is in almost cases is the base/default theme package.

In short

All your extension js should come under

skin\frontent\base\default\js\[your_extension]\[all_of_your_js_files]
skin\frontent\base\default\css\[your_extension]\[all_of_your_css_files]
skin\frontent\base\default\images\[your_extension]\[all_of_your_images]

//for third parties, you can create an inner directory, to specify it
skin\frontent\base\default\js\[your_extension]\[your_external_resource]\[resource_js_files]
skin\frontent\base\default\css\[your_extension]\[your_external_resource]\[resource_css_files]
skin\frontent\base\default\images\[your_extension]\[your_external_resource]\[resource_image_files]

This way, an another developer can easily find js, css and images (of your external resources too) of your extension very easily. Since you are using an extra sub directory to indicate the external resource files inside your extension name directory, it will give others a best clue that your extension is relying on some third party packages.

So I recommend you to separate the external packages and make them a part of your extension so that, an another developer can easily find your dependencies. :-)

EDIT - 1

You should not make your extension burden for your site owner. You can avoid this difficulty by properly align your extension. That means, if you save all related files in the specified directory locations, then what all a site owner should do is, grab your extension and then Merge your extension from the application root directory. ie Align your extension properly. It should look like this.

/app
|_____code\community\Namespace\Module\...
|_____design
|        |_____frontend\base\defalt\...
|        |_____adminhtml\base\defalt\...

/skin
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files

EDIT - 2

If there are some packages, which should share across all Magento applications (such as a javascript library, or a php package etc), then you can put them in \lib directory.

It is true that, there may be duplicate file exist if two extension rely on the same resource packages. They may use different version of the same resource package too. But basically, your extension should use the resource of your extension only (and can rely on default Magento's resources) and it should not rely on other extension's resources, unless your extension is an "extending version" of a third party extension.

2 added 775 characters in body
source | link

So you want to create an extension and you are using an external resource/package for constructing it. In my opinion, whatever package you have used in your extension, your extension should follow Magento best practices. That means you should separate all js, css, images from the external resource and should place in base\default theme package directories.

ie there is no such unique location exists for placing third party package resources. Ultimately when you deliver a cool extension, all js, css and images related to your extension should be kept in a place where an another developer is normally going to look and which is in almost cases is the base/default theme package.

In short

All your extension js should come under

skin\frontent\base\default\js\[your_extension]\[all_of_your_js_files]
skin\frontent\base\default\css\[your_extension]\[all_of_your_css_files]
skin\frontent\base\default\images\[your_extension]\[all_of_your_images]

//for third parties, you can create an inner directory, to specify it
skin\frontent\base\default\js\[your_extension]\[your_external_resource]\[resource_js_files]
skin\frontent\base\default\css\[your_extension]\[your_external_resource]\[resource_css_files]
skin\frontent\base\default\images\[your_extension]\[your_external_resource]\[resource_image_files]

This way, an another developer can easily find js, css and images (of your external resources too) of your extension very easily. Since you are using an extra sub directory to indicate the external resource files inside your extension name directory, it will give others a best clue that your extension is relying on some third party packages.

So I recommend you to separate the external packages and make them a part of your extension so that, an another developer can easily find your dependencies. :-)

EDIT

You should not make your extension burden for your site owner. You can avoid this difficulty by properly align your extension. That means, if you save all related files in the specified directory locations, then what all a site owner should do is, grab your extension and then Merge your extension from the application root directory. ie Align your extension properly. It should look like this.

/app
|_____code\community\Namespace\Module\...
|_____design
|        |_____frontend\base\defalt\...
|        |_____adminhtml\base\defalt\...

/skin
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files

So you want to create an extension and you are using an external resource/package for constructing it. In my opinion, whatever package you have used in your extension, your extension should follow Magento best practices. That means you should separate all js, css, images from the external resource and should place in base\default theme package directories.

ie there is no such unique location exists for placing third party package resources. Ultimately when you deliver a cool extension, all js, css and images related to your extension should be kept in a place where an another developer is normally going to look and which is in almost cases is the base/default theme package.

In short

All your extension js should come under

skin\frontent\base\default\js\[your_extension]\[all_of_your_js_files]
skin\frontent\base\default\css\[your_extension]\[all_of_your_css_files]
skin\frontent\base\default\images\[your_extension]\[all_of_your_images]

//for third parties, you can create an inner directory, to specify it
skin\frontent\base\default\js\[your_extension]\[your_external_resource]\[resource_js_files]
skin\frontent\base\default\css\[your_extension]\[your_external_resource]\[resource_css_files]
skin\frontent\base\default\images\[your_extension]\[your_external_resource]\[resource_image_files]

This way, an another developer can easily find js, css and images (of your external resources too) of your extension very easily. Since you are using an extra sub directory to indicate the external resource files inside your extension name directory, it will give others a best clue that your extension is relying on some third party packages.

So I recommend you to separate the external packages and make them a part of your extension so that, an another developer can easily find your dependencies. :-)

So you want to create an extension and you are using an external resource/package for constructing it. In my opinion, whatever package you have used in your extension, your extension should follow Magento best practices. That means you should separate all js, css, images from the external resource and should place in base\default theme package directories.

ie there is no such unique location exists for placing third party package resources. Ultimately when you deliver a cool extension, all js, css and images related to your extension should be kept in a place where an another developer is normally going to look and which is in almost cases is the base/default theme package.

In short

All your extension js should come under

skin\frontent\base\default\js\[your_extension]\[all_of_your_js_files]
skin\frontent\base\default\css\[your_extension]\[all_of_your_css_files]
skin\frontent\base\default\images\[your_extension]\[all_of_your_images]

//for third parties, you can create an inner directory, to specify it
skin\frontent\base\default\js\[your_extension]\[your_external_resource]\[resource_js_files]
skin\frontent\base\default\css\[your_extension]\[your_external_resource]\[resource_css_files]
skin\frontent\base\default\images\[your_extension]\[your_external_resource]\[resource_image_files]

This way, an another developer can easily find js, css and images (of your external resources too) of your extension very easily. Since you are using an extra sub directory to indicate the external resource files inside your extension name directory, it will give others a best clue that your extension is relying on some third party packages.

So I recommend you to separate the external packages and make them a part of your extension so that, an another developer can easily find your dependencies. :-)

EDIT

You should not make your extension burden for your site owner. You can avoid this difficulty by properly align your extension. That means, if you save all related files in the specified directory locations, then what all a site owner should do is, grab your extension and then Merge your extension from the application root directory. ie Align your extension properly. It should look like this.

/app
|_____code\community\Namespace\Module\...
|_____design
|        |_____frontend\base\defalt\...
|        |_____adminhtml\base\defalt\...

/skin
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files
|_____frontend\base\default\js|css|images\[your_extension]\all_theme_related_files
1
source | link

So you want to create an extension and you are using an external resource/package for constructing it. In my opinion, whatever package you have used in your extension, your extension should follow Magento best practices. That means you should separate all js, css, images from the external resource and should place in base\default theme package directories.

ie there is no such unique location exists for placing third party package resources. Ultimately when you deliver a cool extension, all js, css and images related to your extension should be kept in a place where an another developer is normally going to look and which is in almost cases is the base/default theme package.

In short

All your extension js should come under

skin\frontent\base\default\js\[your_extension]\[all_of_your_js_files]
skin\frontent\base\default\css\[your_extension]\[all_of_your_css_files]
skin\frontent\base\default\images\[your_extension]\[all_of_your_images]

//for third parties, you can create an inner directory, to specify it
skin\frontent\base\default\js\[your_extension]\[your_external_resource]\[resource_js_files]
skin\frontent\base\default\css\[your_extension]\[your_external_resource]\[resource_css_files]
skin\frontent\base\default\images\[your_extension]\[your_external_resource]\[resource_image_files]

This way, an another developer can easily find js, css and images (of your external resources too) of your extension very easily. Since you are using an extra sub directory to indicate the external resource files inside your extension name directory, it will give others a best clue that your extension is relying on some third party packages.

So I recommend you to separate the external packages and make them a part of your extension so that, an another developer can easily find your dependencies. :-)