# Frequently Asked Questions (FAQs) ## Getting Started - [How do I set up the Open Library app locally?](https://github.com/internetarchive/openlibrary/tree/master/docker#welcome-to-the-docker-installation-guide-for-open-library-developers) - What process should I follow if I encounter a problem when building with docker? - How do I find, claim, and work on a [good first issue](https://github.com/internetarchive/openlibrary/issues?q=is%3Aopen+is%3Aissue+label%3A%22Good+First+Issue%22+)? - [What git conventions does the project follow?](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet) - [How do I submit a good pull request?](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet#creating-a-pull-request) - [How can I debug when things go wrong?](https://github.com/internetarchive/openlibrary/wiki/Debugging-and-Performance-Profiling) - [How do I import production book & author data into my local environment?](https://github.com/internetarchive/openlibrary/wiki/Loading-Production-Book-Data) - [How can I login as a user in my local environment?](https://github.com/internetarchive/openlibrary/blob/master/CONTRIBUTING.md#logging-in-as-admin) - [How do I create and activate new accounts locally?](https://github.com/internetarchive/openlibrary/wiki/Creating-and-Logging-in-as-a-new-user-on-your-local-client) - [How do I add a new route to Open Library? (tutorial)](https://github.com/internetarchive/openlibrary/blob/master/openlibrary/plugins/README.md#tutorial-implementing-a-new-route) - [How do I add new Javascript functionality to a template?](https://github.com/internetarchive/openlibrary/wiki/Frontend-Guide#adding-new-javascript-files-to-html-templates) - How do I find the right [CSS file](https://github.com/internetarchive/openlibrary/wiki/Frontend-Guide#working-with-css) to add style rules? - [How do I rebuild css & js assets after I make changes?](https://github.com/internetarchive/openlibrary/wiki/Frontend-Guide#building-css-and-js) ## Debugging & Testing - [How do I manually test whether a python function I've written works as expected?](https://github.com/internetarchive/openlibrary/wiki/Recipes#magic-incantation-accessing-webctx) - How do I write [tests](https://github.com/internetarchive/openlibrary/wiki/Testing)? ## [Understanding the Application](https://archive.org/details/openlibrary-tour-2020/technical_overview.mp4) - [How does routing work on Open Library?](https://github.com/internetarchive/openlibrary/wiki/Frontend-Guide#the-lifecycle-of-a-network-request) ### Understanding the Codebase - [Where do I find data models, template files (views), and routers (controllers)](https://github.com/internetarchive/openlibrary/wiki/Frontend-Guide#file-organization-overview)? - [How are controllers/routers organized?](https://github.com/internetarchive/openlibrary/tree/master/openlibrary/plugins#understanding-directories) - [Where can I see an overview of what routes exist and what they do?](https://github.com/internetarchive/openlibrary/wiki/Endpoints#list-of-all-routes) ### Understanding the Tech - How does an infogami + webpy application work (overview)? ## Librarian Resources - How do I register new book identifier types in Open Library? ## Design - Where do I find Open Library's design system?