No great software stands alone. Just as Isaac Newton said, "If I have seen further it is only by standing on the shoulders of giants," so too with great software: standing atop the accomplishments of other programmers and their creations is the key to success.
One important way that this is done is by using libraries of other software that serve specific needs.
Some of the more important types of libraries that your web site may need include: database access, photo manipulation, graphical display, networking, and search. In a nutshell, these are merely categories for describing the types of libraries that have been developed; the real list of libraries covers the gamut from Arachnid to Zebra (That is, from Web Spider Frameworks to Network Routing libraries.)
Database access. Storing your web accessible data in a database is de rigeur in today's world. Doing that is what the data layer is all about, but there are aspects to this that fall outside the data layer itself. Libraries that address these needs generally help solve three problems: language access, database independence, and object mapping.
Photo manipulation. With today's widespread use of digital cameras, the world of photography has moved from the mainstay of family snapshots, journalism and fine art, to become a part of many traditional business work processes. This calls for an increased number of web sites that need basic pan and zoom, rotation, cropping, compression, resizing, contrast and brightness adjustments, and touchups like red-eye removal. These needs and many more are amply met with libraries such as "GD" and ImageMagick.
Graphical display. Scientific data is ideally suited to statistical analysis and graphical display using X/Y scatter plots, regression lines, histograms and the like; business data is often viewed with high-low-close charts; simple survey data is effectively displayed with pie charts. All of these are possible with open source software libraries like the pChart library and the Open Flash Chart library.
Basic calendaring is another graphical display feature often included in web sites that show events or that coordinate schedules. These libraries solve common problems related dates and times: like time spans that wrap around the end of days, weeks, or months; calendars that adjust to local customs for start of week, work week, weekend; and calendar layouts that squeeze the most out of limited screen real estate, while still conveying the intended information.
Networking. For network access to resources using URLs, the cURL library is a powerful resource, allowing your back-end to use URL syntax to get and send data—using secure transfer technologies—via FTP, HTTP, SCP, and more.
Search. Menus and navigation are important, but search is where it's at! Lucene has long been the open source search engine of choice, but Sphinx shows great promise for increasing relevancy and dramatically reducing CPU usage—overall providing your users with quicker access to what they're looking for.