# adro.codes ## Docs - [Show custom editor warnings on Nodes](https://adro.codes/game-development/godot/godot-show-custom-editor-warnings.md): Learn how to show custom editor warnings on your Nodes to help with your development workflow. - [Generate a SAS token](https://adro.codes/how-to/azure/generate-a-sas-token.md): Generate a secure token for Azure Event Hubs REST APIs - [VSCode - Can't log into Tenant](https://adro.codes/how-to/azure/vscode-cant-log-into-tenant.md): This issue can occur when logging into Azure using the VSCode extension - [Optimising GraphQL queries](https://adro.codes/how-to/contentstack/optimising-graphql-queries.md): ContentStack has a 8kb request size limit on GraphQL queries. This guide will help you optimise your queries to stay within the limit. - [C# - Class Extension](https://adro.codes/how-to/csharp/class-extensions.md): Use class extensions to add additional logic to a class without modifying the class itself. - [Condition based type casting](https://adro.codes/how-to/csharp/condition-based-type-casting.md) - [Generics Refresher](https://adro.codes/how-to/csharp/generics-refresher.md): Sometimes I just need a reminder - [new gotcha](https://adro.codes/how-to/csharp/new-gotcha.md) - [TryParse](https://adro.codes/how-to/csharp/tryparse.md): Sometimes I just need a reminder - [Search indexing - Failed to index](https://adro.codes/how-to/datocms/search-index-failed-to-index.md): In some cases, the indexing might fail to index the site. In cases like these you may need to trigger a manual reindexing to get it to work. - [Add a tag to a branch](https://adro.codes/how-to/git/add-tag-to-branch.md): Want to know how to add a tag to a branch for new releases? This article will show you how. - [Check if date is invalid](https://adro.codes/how-to/javascript/check-if-date-is-invalid.md): Need to know if a date is invalid? Here's how. - [Check if two dates are the same day](https://adro.codes/how-to/javascript/check-if-two-dates-are-the-same-day.md): Need to compare two dates and check if it is the same day? Here is how you can do it. - [Get minutes elapsed since midnight](https://adro.codes/how-to/javascript/get-minutes-elapsed-since-midnight.md): Need to get the minutes elapsed since midnight? Here's how to do it in JavaScript. - [Import JSON into your Typescript project](https://adro.codes/how-to/javascript/import-json-into-typescript-file.md): Learn how to import JSON files into your typescript (.ts, .tsx) files - [How to - Merge to SearchURLParams objects](https://adro.codes/how-to/javascript/merge-search-url-params.md): Learn how to merge multiple URLSearchParams objects. - [Macbook - Show symbol explorer](https://adro.codes/how-to/macos/show-symbol-explorer.md): Need to know how to show the macbook symbol explorer? Here's how. - [Respond with PDF from API route](https://adro.codes/how-to/next/respond-with-pdf-from-api-route.md): How to respond with a PDF from an API route - [Configure Context with a useReducer state management pattern.](https://adro.codes/how-to/react/context-with-use-reducer.md): This combo will give you a simple state management pattern that can be used in any React application. - [Get overfiew of table](https://adro.codes/how-to/sql/get-overview-of-table.md): Need to see the columns in a table? Here's how. - [Common Utilities](https://adro.codes/pigeon/common-utilities.md): Here are some common utilities that you might find useful when working with Pigeon. - [Defining Fragments](https://adro.codes/pigeon/defining-fragments.md) - [Defining Queries](https://adro.codes/pigeon/defining-queries.md) - [FAQ](https://adro.codes/pigeon/faq.md) - [Overview](https://adro.codes/pigeon/index.md): Build Composable solutions with confidence. - [Installation](https://adro.codes/pigeon/installation.md) - [Overview](https://adro.codes/software-design/index.md): Articles on Software Design and Architecture - [Module Driven Development](https://adro.codes/software-design/module-driven-development.md): What is module driven development, and what are the benefits of using it. - [Software Design Principles](https://adro.codes/software-design/principles.md): A overview of some software design principles to keep in mind for your next project. - [Building forms in React](https://adro.codes/vault/building-forms-in-react.md): There are plenty of ways to build forms in React, but messing up the fundamentals can cause a lot of pain and suffering - [Architecture definition for a button component](https://adro.codes/vault/button-component-architecture.md): How to structure a reusable button component for your next React application. Use these techniques for your generic components to create highly reusable components. - [Change your document title when a user changes tabs](https://adro.codes/vault/change-your-document-title-when-a-user-changes-tabs.md): Learn how to change your browser title with JavaScript. Use it to send your user a message when they change to a different browser tab - [Creating a chrome extension with React](https://adro.codes/vault/create-a-chrome-extension-with-react.md): Learn how to create a custom chrome extension and use it to inject a custom React component into any site. - [Dynamic Nextjs preview mode](https://adro.codes/vault/dynamic-nextjs-preview-mode.md): With these snippets you'll be set up to dynamic enable preview mode for any content in your Next.js projects. - [11 Unit test rules](https://adro.codes/vault/eleven-unit-test-rules.md): 11 useful rules to follow when writing your unit tests. - [Gamification](https://adro.codes/vault/gamification.md): Applying game design techniques to your website allows for engaging experiences your users will love. - [Overview](https://adro.codes/vault/index.md): Articles on how to build better software with interesting patterns and techniques. - [Layered Error Handling](https://adro.codes/vault/layered-error-handling.md): I explore using a system of layered error types to provide a more precise reason for why something went wrong to the user or stakeholders. - [Using the Pub/Sub pattern in a Micro Frontend](https://adro.codes/vault/pub-sub-micro-frontends.md): Learn how we can apply the Pub/Sub design pattern to communicate between two micro-frontends - [PWA - FetchEvent.respondWith error on Safari](https://adro.codes/vault/pwa-fetch-respondwith-error-safari.md): Learn how to fix the FetchEvent.respondWith error on Safari to make your PWA work offline - [React - Micro Contexts](https://adro.codes/vault/react-micro-contexts.md): What are micro contexts? It is a way to create a nice separation of domains and group together data. - [Applying Recursion when rendering in React](https://adro.codes/vault/recursion-with-react.md): Learn how to apply the idea of recursion to simplify your React component rendering. - [Response validation with Yup](https://adro.codes/vault/response-validation-with-yup.md): It is important to not fully trust the response you get back from your API. Validate the response with yup to ensure the data you are using is as you expect. - [Welcome](https://adro.codes/welcome.md): Welcome to the home of adro.codes ## OpenAPI Specs - [openapi](https://adro.codes/api-reference/openapi.json) ## Optional - [Papers](https://papers.adro.codes) - [Github](https://github.com/adrocodes)