Desktop Database Client
🏛 Underlying Architecture
As part of the design guidelines, Library Manager is a Client database programmed designed to be connected to a centralized database server. Instead of locally serving the database, the demo provided under Releases uses a sample dataset in order to showcase functionality.
Internally, Library Manager takes advantage of Microsoft’s flagship .NET UI framework, Windows Presentation Foundation, or WPF. WPF works through two components: the design is programmed in XAML, or Extensible Application Markup Language (different from XML), while the behavior is programmed in C#. This separation of design and behavior is key to the framework’s architecture, as it allows for the adoption of the Model-View-ViewModel design paradigm as outlined below.
Extensible documentation was developed via LaTeX in order to explain each feature of the program, and is available as a PDF document.
📐 Design Process
A brief slideshow discussing the development of the project has been created, and is available below.
🔗 Open Source External Packages
- ControlsEx v22.214.171.124 by Jan Karger, Bastian Schmidt, and James Willock: provides useful UI controls and styling with which to build the application frontend
- iTextSharp v5.5.13 by Bruno Lowagie, Paulo Soares, et al: Open-source framework for PDF creation in C#; used for generating reports
- MahApps.Metro v1.5.0 by Jan Karger, Dennis Daume, Brenden Forster, Paul Jenkins, Jake Ginnivan, and Alex Mitchel: provides UI styling for a majority of the elements in the application front-end in order to conform to Microsoft’s Metro design paradigm within WPF applications