The packaging of your component refers to how it appears to a potential component user. Think of it as posting an iPhone app in the iTunes store. It can be the greatest app in the world, but if it has an incomprehensible name and no description, then nobody will buy it anyway. Similarly, people will not use your component if it is not presented, or packaged, in an attractive way. A few simple guidelines follow.
- Name: As with parameter names, your component name should be concise but descriptive. It should contain enough information to give at least a general idea of what the component does in as few words as possible. It should not include the word “component”.
- Thumbnail: The thumbnail should be clean and simple. A lot of the time, your company logo, or the graphic you use as your Twitter icon, is a good way to go. Don’t make the thumbnail overly detailed – that makes it look cluttered, and users will have a difficult time processing it visually. We do not recommend using photos in your thumbnail for this reason.
- Brief description: The description should be a short paragraph that elaborates on the name. It should clearly explain what the component does and why somebody would want to use it, but without going into exhaustive detail – that’s what the component documentation is for. The description will be used on the component's homepage, and anywhere else that a brief component description is warranted.
- Good documentation: See here for details about the kind of component documentation we expect. Good documentation is very important for building a satisfied user base for your component.
- Good defaults. Make sure you have a default component that looks professional and attractive, and demonstrates what the component can do at its best. This means setting all parameters to their best-practice defaults, providing attractive graphics, making sure the layout makes the component’s intent easy to understand, including clear text snippets where necessary, and so on. See here for more about the defaults needed for certification.