Smoky Focus Card

Dark-themed event card with smoky gradient fade and overlapping avatar stack.

Component Features and Props

How to Use Smoky Focus Card Component

Installation Guide for Smoky Focus Card

Component Props

Specifications
PropTypeDefaultDescription
titlestring-Event title
descriptionstring-Event description
bgNumberstring-Background large typographic element
participantCountstring-Participant count text
imageReqImageSourcePropType-Event image
onJoinPress() => void-Join action callback

Install

TERMINAL
$ npx expo install expo-linear-gradient

Component Code

Component.tsx
1import React from 'react';
2import {
3    StyleSheet,
4    View,
5    Text,
6    Image,
7    TouchableOpacity,
8    Dimensions,
9    ImageSourcePropType,
10} from 'react-native';
11import { LinearGradient } from 'expo-linear-gradient';
12
13const { width } = Dimensions.get('window');
14
15interface SmokyCardProps {
16    title?: string;
17    description?: string;
18    bgNumber?: string; // The subtle background text (e.g., '24H')
19    participantCount?: string;
20    image: ImageSourcePropType;

Usage

Usage.tsx
import React from 'react';
import { StyleSheet, View, SafeAreaView, StatusBar } from 'react-native';
import SmokyFocusCard from './components/SmokyFocusCard';

export default function App() {
    return (
        <SafeAreaView style={styles.container}>
            <StatusBar barStyle="light-content" />
            <SmokyFocusCard
                image={{ uri: 'https://images.unsplash.com/photo-1499750310107-5fef28a66643?q=80&w=1000&auto=format&fit=crop' }}
                onJoinPress={() => console.log('Joined Camp')}
            />
        </SafeAreaView>
    );
}

const styles = StyleSheet.create({
    container: {
        flex: 1,
        backgroundColor: '#121212', // Match the dark theme
100%
Smoky Focus Card - Modern React Native Card Component for SaaS | Uilora | Uilora