wiki:Obsolete/WorkInProgress/3rdparty guidelines

Version 8 (modified by scottmc, 8 years ago) (diff)

removed hard coded paths, replaced with find_directory() constants.

DRAFT Guidelines for 3rd-party software

The idea is a lot of software is either obsolete and running only on BeOS ; or weakly ported and using unixish style stuff. We want to avoid that. To help 3rd paty developpers improve their software, here is a list of things to check before releasing an application.

What rules should software follow

  • It should work on the latest stable release of Haiku
  • It should work on gcc2 hybrid - other flavors of Haiku may be ignored
  • configuration files should go in B_USER_SETTINGS_DIRECTORY; and the path should be obtained by the appropriate functions & constants, not hardcoded - use find_directory() (Examples for porting).
  • The app must not write anything to the hard disk except in its own directory (B_APPS_DIRECTORY/AppName, or whatever the user installed it), the configuration directories (B_USER_SETTINGS_DIRECTORY, B_COMMON_SETTINGS_DIRECTORY), unless the user explicitly asks for it (a save dialog is a good example). <-- This makes little sense, as an application usually won't have the rights to write anything into its own directory. It may write to the user's cache, data, or settings directory, though, and that's pretty much it (axeld).
  • HIG compliance (e.g. sentence casing, colour scheme, vector icons): it's better if your application fits in the look&feel of the whole system.

Similar documents elsewhere

  • Apple App Store Review Guidelines has a checklist we may borrow some entries from.

Other helpful resources