AniDB Applet DEV
Goal
A very simple to use Java Applet which is directly integrated with the AniDB website and enables users to easily add files on their local harddrive to their AniDB mylist.
AniDB already offers a number of AniDB_Clients (UDP_Clients) which can be used for this pourpose and some can even be run as Java applets. However, none of the available clients is user friendly enough to be of use to the general userbase of AniDB. Thus, many people are still adding individual files manually to their mylists or are simply using generic files. The Java Applet is meant to bring the benefits of automated mylist maintenance which is possible by means of AniDB Clients to a new audience.
We are currently looking for people who'd be willing to take on this task. If you're interested, please drop by in #anidb on irc.synirc.net.
Requirements
- Extremely simple user interface
- Usage should be as intuitive as possible for novice users
- No options which are unlikely to be of interest to a large majority of users
- Advanced mode for everything else
- Tight integration with the AniDB website
- Directly available via a link in the AniDB navbar
- No additional login/authorisation
- Use of the UDP API, see: UDP_API_Definition
- Sun Java plug-in 1.5 compatible
- Targets: Firefox and Opera (latest versions) on Windows, Linux, MacOS
- Open Source
Possible Implementations
Suggestion 1
Wizard style interface with 4 pages.
Page 1 - Directory selection
Allows the user to select the file or directory which should be scanned for new files.
- Short two sentence introduction to applet
- File/Directory selection element which allows selection of a file or directory (with ctrl/shift also multiple elements)
- optional: support drag and drop of files/directories under windows
- Buttons
- Advanced Mode (jumps to different UI for advanced users, not specified here)
- Next
Page 2 - Hashing
Hashes the selected file or all media files located within the selected directories (or their subdirectories...) and identifies all files via a FILE command of the UDP API. No mylist modifications are made at this point.
- One sentence explanation of current activity
- Directory/Name of currently processed file
- Progress
- Per file progress bar
- Overall progress bar
- Some statistics
- i.e. files already hashed, files left to hash, size, speed, time elapsed, estimated time left, ...
- Buttons
- Back
- Next (deactivated while hashing)
Page 3 - Identified files
Displays an overview of all hashed files to the user together with their current status. This page/phase does not interact with the UDP API.
- One sentence explanation
- Tree or list view of hashed files and their status
- Unknown / Known / Already in mylist
- Optional: right click context menu in tree/list view, i.e. to remove a file/entire (sub)directory from the list
- Checkbox: "[ ] Rename known files according to AniDB naming scheme"
- Using AniDB profile title language settings for selecting anime and episode title
- Buttons
- Back (jumps to Page 1)
- Next
Page 4 - Adding Progress/Finished
Executes the actual mylist adding via the UDP API. Initially displays the progress of the adding process and later displays an "All done" message.
- One sentence explanation
- Overall progress bar
- Some statistics
- All done message after all known files which weren't yet in the users mylist have been added
- Buttons
- Back (jumps to Page 3, handling of already partly executed actions is undefined)
- Restart (jump to Page 1, clear file/directory selection)