There is a good one here: https://github.com/DavidSpriggs/ConfigurableViewerJSAPI.
Click here to View Live app. Includes:
- Growler
- Draw
- Geolocation
- Advanced
- Help
- Measure
- Directions
- Editor
- Scalebar
- Bookmarks
Another one is in another answer, Esri CIS did a great work developing such an application. Pity it is in Russian.
Most of other apps I've seen tend to be more ArcGIS Online specific: here you can find some of the templates (some are really good and would cover most of the needs).
Esri has also released a bunch of JS apps with some viewer-like functionality which you could reuse for building own viewer with perhaps a more complete functionality set. These apps can be found at ArcGIS for Local Government resource center. Very many of them have a live version to play with and include simple geocode search function, basemap gallery, and print.