I want to study the theory of sheaves from a categorical point of view with an emphasis on applications in algebraic topology and differential geometry and I'm looking for a good introductory book to the subject with these qualifications in mind. I know that the theory of sheaves is fundamentally a categorical theory, what I mean by "a categorical point of view" is that I'm searching for a book that doesn't shy away from getting into (somewhat) advanced category theory in general to explain concepts related to sheaves. However, I haven't studied yet algebraic topology (I'm taking a course in the subject this semester) so the material shouldn't be too advanced. Additionally, I have taken only a very short introductory course in differential geometry (classical formulation) so this should also be taken into account. I've taken an introductory course in category theory which covered the basics of the field (up to adjoint functors), so I do have some background there. Any recommendations for books that hit those marks would be more than welcome.