Roadmap for Dimbola =================== Dimbola 1.0 ----------- This is the feature set that 1.0 will hopefully have. Since Dimbola is a hobby project, changes are always possible. * Copy photos from camera/memory card to hard disk. (dimbola-copy is a command line program that most of this, but needs to be integrated into the GUI.) * Optionally rename files. * Optionally copy files to two locations. * Also add to currently open database. * Add photos to database from hard disk. * Individual, hand-picked images. **Done.** * Recursively for a whole directory tree. * Tag, rate, rotate photos efficiently. * Tags can be created. **Done.** * Tags can be arranged in a hierarchy. **Done.** * One or more tags can be added to one or more photos in one operation. * Tags can be added to photos when they're exported. * Tag lists can be exported and imported (merged to current list), so people can share them. * Tags have flags for controlling export to photos, sharing. * Import and display EXIF fields. * Display all fields. * Display user-specified selection of fields. * Display a basic, pre-configured set of fields. **Done.** * Display/edit all IPTC fields. * Display all fields. * Display user-specified selection of fields. * Display a basic, pre-configured set of fields. * Search photos based on various criteria. * Which folder they're in. **Done.** * Tags they have. **Done.** * Rating. **Done.** * EXIF fields. * IPTC fields. * Searches can be saved. * Search results (saved or not) are updated automatically when something changes. * Virtual folders ("collections" in Lightroom). * View photos in another window, which can be made fullscreen (perhaps on a second monitor). **Done.** * Export original or JPEG versions of photos. **Done.** * Exported files contain or are accompanied by metadata. * Generate a simple HTML gallery from selected photos. * Databases can be synchronized between different computers. * For example, between desktop and laptop (sync everything), or two collaborating people (sync just some stuff). * Two-way synchronization: changes to either end will be combined to the other, without overwriting the other's changes. * Everything that sensibly can, can be done with only mouse or keyboard.