# The Clean Architecture Of A Sign-In Tap

> Trace auth from the button tap to the session, then the profile sync.

- URL: https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/04-clean-architecture-integration/lesson-03-trace-supabase-auth-flow
- Course: [Mobile Action Pro](https://dantech.academy/en/courses/kotlin-accelerator.md)
- Module: Clean Architecture and Integration
- Duration: 11 min
- Difficulty: intermediate
- Access: Enrolled students
- Tiếng Việt: https://dantech.academy/courses/kotlin-accelerator/engineer-builder/04-clean-architecture-integration/lesson-03-trace-supabase-auth-flow.md

## Objectives

- Trace a sign-in request through all eight steps and name what each step does
- Tell apart a request's DomainResult channel from the session's authState channel
- Explain why Google Sign-In goes through the GoogleSignInLauncher port with an Android and an iOS implementation

## In this lesson

1. Lesson Goal
2. Part 1: The Full Map Of One Sign-In
3. Part 2: What Happens After A Successful Login?
4. Part 3: Google Sign-In And The Platform Boundary
5. Part 4: Turning Technical Errors Into Messages For The User
6. Code Reading Path
7. Bad Smells
8. Key Takeaways

## Study with an AI agent

The full lesson is for students of this course. Students open the lesson on the web and press **Markdown** to copy all of it, then paste it into Claude, ChatGPT, Cursor or whichever agent you use. Faster: mint a token at `/profile/ai-agents` and your agent reads lessons over MCP.

- [Join the course](https://dantech.academy/en/kotlin-accelerator/checkout)

---

- Previous lesson: [Domain vs Data: Where Does Logic Belong?](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/04-clean-architecture-integration/lesson-02-separate-repository-contracts-and-data-implementations.md)
- Next lesson: [How You Change The AI Provider With 1 Line Of Code](https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/04-clean-architecture-integration/lesson-04-swap-ai-provider-with-one-line.md)
