feat(client): add component library and simplify routing (#66)
* feat(client): add component library and simplify routing
Remove tab layout, explore page, modal, and unused template
components. Replace with single-page layout and a dev component
showcase with per-component detail pages.
- Add Button with label prop, leading/trailing icon support
- Add FeedCard, SerifText, SansSerifText, MonospaceText
- Add colocated *.showcase.tsx files for each component
- Use Stack navigator with themed headers
Co-authored-by: Ona <no-reply@ona.com>
* fix(client): render showcase as JSX component
Co-authored-by: Ona <no-reply@ona.com>
* chore(client): remove dead code chain
Remove ThemedText, useThemeColor, useColorScheme hook,
Colors, and Fonts — none referenced by current screens.
Co-authored-by: Ona <no-reply@ona.com>
---------
Co-authored-by: Ona <no-reply@ona.com>
2026-03-13 00:23:06 +00:00
|
|
|
import "react-native-reanimated"
|
2026-02-19 00:11:31 +00:00
|
|
|
import { Stack } from "expo-router"
|
|
|
|
|
import { StatusBar } from "expo-status-bar"
|
feat(client): add component library and simplify routing (#66)
* feat(client): add component library and simplify routing
Remove tab layout, explore page, modal, and unused template
components. Replace with single-page layout and a dev component
showcase with per-component detail pages.
- Add Button with label prop, leading/trailing icon support
- Add FeedCard, SerifText, SansSerifText, MonospaceText
- Add colocated *.showcase.tsx files for each component
- Use Stack navigator with themed headers
Co-authored-by: Ona <no-reply@ona.com>
* fix(client): render showcase as JSX component
Co-authored-by: Ona <no-reply@ona.com>
* chore(client): remove dead code chain
Remove ThemedText, useThemeColor, useColorScheme hook,
Colors, and Fonts — none referenced by current screens.
Co-authored-by: Ona <no-reply@ona.com>
---------
Co-authored-by: Ona <no-reply@ona.com>
2026-03-13 00:23:06 +00:00
|
|
|
import { useColorScheme } from "react-native"
|
|
|
|
|
import tw, { useDeviceContext } from "twrnc"
|
2026-02-19 00:11:31 +00:00
|
|
|
|
|
|
|
|
export default function RootLayout() {
|
feat(client): add component library and simplify routing (#66)
* feat(client): add component library and simplify routing
Remove tab layout, explore page, modal, and unused template
components. Replace with single-page layout and a dev component
showcase with per-component detail pages.
- Add Button with label prop, leading/trailing icon support
- Add FeedCard, SerifText, SansSerifText, MonospaceText
- Add colocated *.showcase.tsx files for each component
- Use Stack navigator with themed headers
Co-authored-by: Ona <no-reply@ona.com>
* fix(client): render showcase as JSX component
Co-authored-by: Ona <no-reply@ona.com>
* chore(client): remove dead code chain
Remove ThemedText, useThemeColor, useColorScheme hook,
Colors, and Fonts — none referenced by current screens.
Co-authored-by: Ona <no-reply@ona.com>
---------
Co-authored-by: Ona <no-reply@ona.com>
2026-03-13 00:23:06 +00:00
|
|
|
useDeviceContext(tw)
|
2026-02-19 00:11:31 +00:00
|
|
|
const colorScheme = useColorScheme()
|
feat(client): add component library and simplify routing (#66)
* feat(client): add component library and simplify routing
Remove tab layout, explore page, modal, and unused template
components. Replace with single-page layout and a dev component
showcase with per-component detail pages.
- Add Button with label prop, leading/trailing icon support
- Add FeedCard, SerifText, SansSerifText, MonospaceText
- Add colocated *.showcase.tsx files for each component
- Use Stack navigator with themed headers
Co-authored-by: Ona <no-reply@ona.com>
* fix(client): render showcase as JSX component
Co-authored-by: Ona <no-reply@ona.com>
* chore(client): remove dead code chain
Remove ThemedText, useThemeColor, useColorScheme hook,
Colors, and Fonts — none referenced by current screens.
Co-authored-by: Ona <no-reply@ona.com>
---------
Co-authored-by: Ona <no-reply@ona.com>
2026-03-13 00:23:06 +00:00
|
|
|
const headerBg = colorScheme === "dark" ? "#1c1917" : "#f5f5f4"
|
|
|
|
|
const headerTint = colorScheme === "dark" ? "#e7e5e4" : "#1c1917"
|
2026-02-19 00:11:31 +00:00
|
|
|
|
|
|
|
|
return (
|
feat(client): add component library and simplify routing (#66)
* feat(client): add component library and simplify routing
Remove tab layout, explore page, modal, and unused template
components. Replace with single-page layout and a dev component
showcase with per-component detail pages.
- Add Button with label prop, leading/trailing icon support
- Add FeedCard, SerifText, SansSerifText, MonospaceText
- Add colocated *.showcase.tsx files for each component
- Use Stack navigator with themed headers
Co-authored-by: Ona <no-reply@ona.com>
* fix(client): render showcase as JSX component
Co-authored-by: Ona <no-reply@ona.com>
* chore(client): remove dead code chain
Remove ThemedText, useThemeColor, useColorScheme hook,
Colors, and Fonts — none referenced by current screens.
Co-authored-by: Ona <no-reply@ona.com>
---------
Co-authored-by: Ona <no-reply@ona.com>
2026-03-13 00:23:06 +00:00
|
|
|
<>
|
|
|
|
|
<Stack
|
|
|
|
|
screenOptions={{
|
|
|
|
|
headerShown: false,
|
|
|
|
|
contentStyle: { backgroundColor: headerBg },
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
<Stack.Screen
|
|
|
|
|
name="components/index"
|
|
|
|
|
options={{
|
|
|
|
|
headerShown: true,
|
|
|
|
|
title: "Components",
|
|
|
|
|
headerStyle: { backgroundColor: headerBg },
|
|
|
|
|
headerTintColor: headerTint,
|
|
|
|
|
headerShadowVisible: false,
|
|
|
|
|
}}
|
|
|
|
|
/>
|
|
|
|
|
<Stack.Screen
|
|
|
|
|
name="components/[name]"
|
|
|
|
|
options={{
|
|
|
|
|
headerShown: true,
|
|
|
|
|
title: "",
|
|
|
|
|
headerStyle: { backgroundColor: headerBg },
|
|
|
|
|
headerTintColor: headerTint,
|
|
|
|
|
headerShadowVisible: false,
|
|
|
|
|
}}
|
|
|
|
|
/>
|
2026-02-19 00:11:31 +00:00
|
|
|
</Stack>
|
|
|
|
|
<StatusBar style="auto" />
|
feat(client): add component library and simplify routing (#66)
* feat(client): add component library and simplify routing
Remove tab layout, explore page, modal, and unused template
components. Replace with single-page layout and a dev component
showcase with per-component detail pages.
- Add Button with label prop, leading/trailing icon support
- Add FeedCard, SerifText, SansSerifText, MonospaceText
- Add colocated *.showcase.tsx files for each component
- Use Stack navigator with themed headers
Co-authored-by: Ona <no-reply@ona.com>
* fix(client): render showcase as JSX component
Co-authored-by: Ona <no-reply@ona.com>
* chore(client): remove dead code chain
Remove ThemedText, useThemeColor, useColorScheme hook,
Colors, and Fonts — none referenced by current screens.
Co-authored-by: Ona <no-reply@ona.com>
---------
Co-authored-by: Ona <no-reply@ona.com>
2026-03-13 00:23:06 +00:00
|
|
|
</>
|
2026-02-19 00:11:31 +00:00
|
|
|
)
|
|
|
|
|
}
|