<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url><loc>https://tonis.dev/</loc></url><url><loc>https://tonis.dev/blog/</loc></url><url><loc>https://tonis.dev/projects/trend-seeker/</loc></url><url><loc>https://tonis.dev/projects/clawtab/</loc></url><url><loc>https://tonis.dev/projects/bmux/</loc></url><url><loc>https://tonis.dev/projects/ovim/</loc></url><url><loc>https://tonis.dev/projects/clawjobs/</loc></url><url><loc>https://tonis.dev/projects/stablesafe/</loc></url><url><loc>https://tonis.dev/projects/easy-kpf/</loc></url><url><loc>https://tonis.dev/blog/2026/01/30/how-my-server-got-owned-by-a-userland-rootkit-and-how-i-cleaned-it/</loc><lastmod>2026-01-30T23:41:24Z</lastmod></url><url><loc>https://tonis.dev/blog/2025/11/23/ai-driven-fp-ts-development/</loc><lastmod>2025-11-23T23:15:40Z</lastmod></url><url><loc>https://tonis.dev/blog/2025/09/06/managing-kubectl-port-forwards-why-gui-tools-are-taking-over/</loc><lastmod>2025-09-27T03:37:46Z</lastmod></url><url><loc>https://tonis.dev/blog/2024/11/06/deploy-a-vite-react-spa-app-to-cloudfront-with-working-browserrouter/</loc><lastmod>2024-11-06T09:12:27Z</lastmod></url><url><loc>https://tonis.dev/blog/2024/06/07/how-to-ignore-generated-kotlin-files-in-jacoco/</loc><lastmod>2024-06-07T06:27:53Z</lastmod></url><url><loc>https://tonis.dev/blog/2024/02/07/how-to-achieve-validatednel-with-fp-ts/</loc><lastmod>2024-02-07T23:31:13Z</lastmod></url><url><loc>https://tonis.dev/blog/2023/05/28/lazy-conditional-logging-in-javascript/</loc><lastmod>2023-05-28T00:12:57Z</lastmod></url><url><loc>https://tonis.dev/blog/2023/05/27/how-to-scroll-to-line-with-codemirror-react/</loc><lastmod>2023-05-28T00:00:53Z</lastmod></url><url><loc>https://tonis.dev/blog/2022/10/02/how-to-find-critical-bugs-in-code4rena/</loc><lastmod>2025-01-22T23:52:43Z</lastmod></url><url><loc>https://tonis.dev/blog/2022/07/25/what-is-a-knowledge-token/</loc><lastmod>2022-07-27T14:26:01Z</lastmod></url><url><loc>https://tonis.dev/blog/2022/07/03/how-to-use-web3-react/</loc><lastmod>2022-08-03T13:21:51Z</lastmod></url><url><loc>https://tonis.dev/blog/2022/06/26/knowledge-token-test-post/</loc><lastmod>2022-07-27T10:11:54Z</lastmod></url><url><loc>https://tonis.dev/blog/2022/06/24/how-to-use-ethereum-multicall-on-a-local-hardhat-node/</loc><lastmod>2022-08-06T11:01:35Z</lastmod></url><url><loc>https://tonis.dev/blog/2022/05/04/vscode-jest-doesnt-work-for-a-react-app-in-a-yarn-workspace-monorepo/</loc><lastmod>2022-06-12T07:03:55Z</lastmod></url><url><loc>https://tonis.dev/blog/2022/05/03/how-to-transfer-a-dynamodb-table-from-one-account-to-another/</loc><lastmod>2022-05-23T01:20:59Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/12/22/location-data-reduction-in-android/</loc><lastmod>2021-12-22T01:28:32Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/11/30/add-text-and-images-to-notion-via-the-official-api-and-python/</loc><lastmod>2021-11-30T10:23:58Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/11/02/aggregate-iconomi-crypto-strategy-details/</loc><lastmod>2021-11-02T08:40:44Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/09/28/create-a-login-screen-with-jetpack-compose/</loc><lastmod>2021-09-28T10:07:03Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/08/31/create-a-code-editor-with-compose-for-desktop/</loc><lastmod>2021-08-31T13:33:55Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/08/04/setup-macos-system-wide-vim-mode/</loc><lastmod>2021-08-04T10:06:33Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/08/03/kotlin-native-interoperability-with-swift-objective-c/</loc><lastmod>2021-08-03T10:21:46Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/06/29/kotlin-multiplatform-in-a-macos-app/</loc><lastmod>2021-07-24T00:35:30Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/06/01/kotlin-multiplatform-app-architectures/</loc><lastmod>2021-06-26T02:49:46Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/04/27/kotlin-hydra-constructors/</loc><lastmod>2021-05-02T09:30:14Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/03/31/java-ec-crypto-with-bouncycastle/</loc><lastmod>2021-08-19T06:53:10Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/03/03/kotlin-multiplatform-logging-libraries/</loc><lastmod>2021-08-28T02:46:14Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/02/02/ios-app-with-kotlin-multiplatform-mobile/</loc><lastmod>2021-02-21T09:43:37Z</lastmod></url><url><loc>https://tonis.dev/blog/2021/01/05/create-json-manually-with-kotlinx-serialization/</loc><lastmod>2021-07-24T00:59:42Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/12/01/add-a-sequence-diagram-to-notion/</loc><lastmod>2021-09-17T08:18:35Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/11/03/callback-styles-for-async-tasks/</loc><lastmod>2021-07-14T07:09:59Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/10/07/logging-in-a-java-library/</loc><lastmod>2020-12-14T03:52:34Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/09/08/kotlin-concatenating-nullable-strings/</loc><lastmod>2020-12-13T11:32:48Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/08/13/workflow-automations/</loc><lastmod>2020-08-13T12:35:03Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/07/15/car-data-points-in-android-automotive/</loc><lastmod>2020-12-14T03:53:57Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/06/03/testing-with-mockk-and-koin/</loc><lastmod>2020-12-14T03:20:31Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/04/28/android-app-architecture-part-1/</loc><lastmod>2020-12-14T03:45:47Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/04/03/sharing-native-code-between-android-and-java-projects/</loc><lastmod>2020-04-03T10:24:19Z</lastmod></url><url><loc>https://tonis.dev/blog/2020/02/19/hello-world/</loc><lastmod>2020-03-29T10:14:13Z</lastmod></url></urlset>