Dark Mode Counter - Nativebase Typing CST Test
Loading…
Dark Mode Counter — Nativebase Code
Counter app with light/dark theme toggle using NativeBase components.
import React, { useState } from 'react';
import { NativeBaseProvider, Box, Button, VStack, Text, extendTheme } from 'native-base';
export default function App() {
const [count, setCount] = useState(0);
const [isDark, setIsDark] = useState(false);
const theme = extendTheme({ config: { initialColorMode: isDark ? 'dark' : 'light' } });
return (
<NativeBaseProvider theme={theme}>
<Box safeArea p={4} flex={1} alignItems="center" justifyContent="center">
<VStack space={4} alignItems="center">
<Text fontSize="2xl">Counter: {count}</Text>
<Button onPress={() => setCount(count + 1)}>+</Button>
<Button onPress={() => setCount(count - 1)}>-</Button>
<Button onPress={() => setCount(0)}>Reset</Button>
<Button onPress={() => setIsDark(!isDark)}>Toggle Theme</Button>
</VStack>
</Box>
</NativeBaseProvider>
);
}Nativebase Language Guide
NativeBase is an open-source UI component library for React Native, providing a set of cross-platform, customizable components that accelerate mobile app development with consistent design.
Primary Use Cases
- ▸Cross-platform mobile app development
- ▸Rapid UI prototyping
- ▸Enterprise React Native apps
- ▸Apps requiring consistent theming across devices
- ▸Integration with Expo and React Native ecosystem
Notable Features
- ▸Pre-built, customizable components
- ▸Cross-platform support (iOS and Android)
- ▸Themeable design system
- ▸Flexbox-based responsive layouts
- ▸Integration with Expo and third-party libraries
Origin & Creator
Developed by GeekyAnts, first released in 2016 to simplify React Native UI development and provide a consistent cross-platform component library.
Industrial Note
NativeBase is widely used for startups, enterprise mobile apps, and cross-platform React Native projects that need rapid prototyping and production-ready UI components.