All Projects → tsdmrfth → react-native-steve

tsdmrfth / react-native-steve

Licence: MIT license
React Native horizontal scroll view component as seen on Clubhouse tags

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to react-native-steve

clubhouse-desktop
An unofficial Clubhouse desktop client
Stars: ✭ 200 (+124.72%)
Mutual labels:  clubhouse
AIML-in-Medicine-club
Repository for "AI/MD in Medicine" club in clubhouse
Stars: ✭ 42 (-52.81%)
Mutual labels:  clubhouse
ticket-check-action
Verify that pull request titles start with a ticket ID
Stars: ✭ 29 (-67.42%)
Mutual labels:  clubhouse
awesome-clubhouse
A list of useful tools (apis, links, services etc.) for clubhouse users
Stars: ✭ 35 (-60.67%)
Mutual labels:  clubhouse
Performance-Engineers-Clubhouse
Join Performance Engineers Clubhouse 🏡
Stars: ✭ 14 (-84.27%)
Mutual labels:  clubhouse
clubhouse
Clubhouse API client and social graph crawler for TypeScript.
Stars: ✭ 40 (-55.06%)
Mutual labels:  clubhouse
react-native-animateable-text
🆎 A fork of React Native's <Text/> component that supports Animated Values!
Stars: ✭ 263 (+195.51%)
Mutual labels:  reanimated2
clubhouse-unfollowers
👋 Find and unfollow people who unfollowed you or don't follow you back on Clubhouse
Stars: ✭ 24 (-73.03%)
Mutual labels:  clubhouse
react-native-monorepo
Monorepo with UI components.
Stars: ✭ 177 (+98.88%)
Mutual labels:  reanimated2
Clubhouse Py
Clubhouse API written in Python. Standalone client included. For reference and education purposes only.
Stars: ✭ 1,693 (+1802.25%)
Mutual labels:  clubhouse
thaiclubhouse
Clubhouse Thailand Community Calendar
Stars: ✭ 19 (-78.65%)
Mutual labels:  clubhouse
jam
🍓 Jam is your own open source Clubhouse for mini conferences, friends, communities
Stars: ✭ 1,030 (+1057.3%)
Mutual labels:  clubhouse
anyHouse
高仿 ClubHouse,语音直播、语聊房、高音质、极速上麦,开源 ClubHouse,实现了Clubhouse的上麦,下麦,邀请,语音音量提示等功能。
Stars: ✭ 177 (+98.88%)
Mutual labels:  clubhouse
DrinkUp
A fun drinking game written in React Native and Reanimated
Stars: ✭ 34 (-61.8%)
Mutual labels:  reanimated2
react-native-carousel
React Native carousel
Stars: ✭ 35 (-60.67%)
Mutual labels:  reanimated2
reanimated2Animations
Practicing with reanimated 2 animations
Stars: ✭ 21 (-76.4%)
Mutual labels:  reanimated2
Perky
Perky a beautiful animated app concept built with lots of love in React Native.
Stars: ✭ 37 (-58.43%)
Mutual labels:  reanimated2

react-native-steve

React Native horizontal scroll view component as seen on Clubhouse tags

BUM

Installation

npm install react-native-steve

or

yarn add react-native-steve

Dependencies

This library requires react-native-reanimated and react-native-gesture-handler

Important

This component uses react-native-reanimated v2 stable version so in order to use this component your app must be configured for reanimated v2

Usage

import React from 'react'
import { StyleSheet, Text, View } from 'react-native'
import Steve from 'react-native-steve'

const topics = [
    {
        emoji: '🍻',
        text: 'Entertainment'
    },
    {
        emoji: '🐈',
        text: 'Cats'
    },
    {
        emoji: '🦾',
        text: 'Robots'
    },
    {
        emoji: '🎉',
        text: 'Party'
    },
    {
        emoji: '🌍',
        text: 'World'
    },
    {
        emoji: '📚',
        text: 'Books'
    },
    {
        emoji: '👘',
        text: 'Fashion'
    },
    {
        emoji: '📱',
        text: 'Applications'
    },
    {
        emoji: '📸',
        text: 'Photography'
    },
    {
        emoji: '🧠',
        text: 'Ideas'
    },
    {
        emoji: '⚔️',
        text: 'War'
    },
    {
        emoji: '💼',
        text: 'Business'
    },
    {
        emoji: '🎭',
        text: 'Theater'
    },
    {
        emoji: '📮',
        text: 'Job'
    }
]

export default function App() {
    const {
        topicContainer,
        topicText,
        title,
        container,
        steveContainer
    } = styles

    const renderTopic = ({ item }) => {
        const { emoji, text } = item
        return (
            <View style={topicContainer}>
                <Text>
                    {emoji}
                </Text>
                <Text style={topicText}>
                    {text}
                </Text>
            </View>
        )
    }

    return (
        <View style={container}>
            <Text style={title}>
                {'TOPICS TO EXPLORE'}
            </Text>
            <Steve
                isRTL={false}
                data={topics}
                renderItem={renderTopic}
                itemStyle={{ margin: 5 }}
                containerStyle={steveContainer}
                keyExtractor={item => item.text}/>
        </View>
    )
}

App.displayName = 'App'

const styles = StyleSheet.create({
    container: {
        flex: 1,
        backgroundColor: '#FFF',
        justifyContent: 'center'
    },
    topicContainer: {
        borderWidth: 1,
        borderColor: '#ecd9d9',
        borderBottomWidth: 2,
        borderRadius: 10,
        paddingHorizontal: 10,
        height: 38,
        justifyContent: 'center',
        alignItems: 'center',
        flexDirection: 'row',
        backgroundColor: '#FFF'
    },
    topicText: {
        fontSize: 14,
        fontWeight: '500',
        marginLeft: 5
    },
    title: {
        fontSize: 13,
        color: 'rgb(134,130,119)',
        marginBottom: 5,
        marginLeft: 15,
        fontWeight: '600'
    },
    steveContainer: { marginHorizontal: 5 }
})

Props

name required type default description
data yes Array An array of items to render
renderItem yes Function Function that returns a component with given item and index. It is similar to FlatList's renderItem prop
keyExtractor yes Function Function that returns an unique key for each item in the array. Notice that it is a must to provide a unique key since it's used to make calculations
containerStyle no Style Object Style object for root component
isRTL no boolean false Whether the component is RTL layout
itemStyle no Style Object Style object for parent component of each child

Contributing

See the contributing guide to learn how to contribute to the repository and the development workflow.

License

MIT

Author

tsdmrfth

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].