MCPcopy Index your code
hub / github.com/andrew-levy/jetpack-compose-react-native

github.com/andrew-levy/jetpack-compose-react-native @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
351 symbols 752 edges 138 files 5 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Jetpack Compose React Native

This project is in early development and is not yet ready for use.

Getting started

Add the plugin to your app.json. This will allow your Android app to use Jetpack Compose.

{
  "plugins": ["jetpack-compose-react-native"]
}

Next, prebuild your app.

npx expo prebuild -p android --clean

Usage

import { Button, Switch, Column, Text } from "jetpack-compose-react-native";
import { useState } from "react";

export default function App() {
  const [checked, setChecked] = useState(false);
  return (
    <Column>
      <Text>Use Jetpack Compose views in your RN app!</Text>
      <Button title="Press me" onClick={() => console.log("Button pressed")} />
      <Switch
        checked={checked}
        onCheckedChange={(isChecked) => setChecked(isChecked)}
      />
    </Column>
  );
}

Contributors

To Do (WIP)

  • [x] Button
  • [x] Switch
  • [x] Slider
  • [x] Column
  • [x] Row
  • [x] Icon
  • [x] Progress Indicator (Circular + Linear)
  • [x] Checkbox
  • [x] Other types of buttons
  • [x] Card
  • [x] Spacer
  • [x] Chip
  • [x] Badge
  • [x] Horizontal Divider
  • [x] Vertical Divider
  • [x] Text Field
  • [x] Dialog
  • [x] Text
  • [x] Carousel
  • [x] Snackbar
  • [ ] Bottom Sheet
  • [x] Time/Date Picker (WIP...)
  • [x] LazyColumn/Row (just add a lazy prop to the existing components)
  • [x] LazyGrid (vertical and horizontal props from the same component)
  • [x] LazyStaggeredGrid (vertical and horizontal props from the same component)
  • [x] Box
  • [ ] More modifiers!

Extension points exported contracts — how you extend this code

Modifier (Interface)
(no doc) [1 implementers]
src/utils/modifier.ts

Core symbols most depended-on inside this repo

build
called by 24
src/utils/modifier.ts
Text
called by 21
src/views/Text/Text.tsx
fillMaxWidth
called by 16
src/utils/modifier.ts
border
called by 10
src/utils/modifier.ts
padding
called by 7
src/utils/modifier.ts
apply
called by 6
example/android/react-settings-plugin/src/main/kotlin/expo/plugins/ReactSettingsPlugin.kt
parseComposeColor
called by 5
android/src/main/java/expo/modules/jetpackcomposereactnative/common/_ColorTypeConverter.kt
IconComposable
called by 4
android/src/main/java/expo/modules/jetpackcomposereactnative/views/icon/IconView.kt

Shape

Method 156
Function 117
Class 77
Interface 1

Languages

Kotlin68%
TypeScript32%

Modules by API surface

src/utils/modifier.ts33 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/text/TextView.kt18 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/grid/GridView.kt15 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/dialog/DialogView.kt10 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/chip/ChipView.kt10 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/icon/IconView.kt9 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/datepicker/DatePickerView.kt8 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/snackbar/SnackbarView.kt7 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/row/RowView.kt7 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/divider/DividerView.kt7 symbols
android/src/main/java/expo/modules/jetpackcomposereactnative/views/column/ColumnView.kt7 symbols
example/android/app/src/main/java/expo/modules/jetpackcomposereactnative/example/MainApplication.kt6 symbols

For agents

$ claude mcp add jetpack-compose-react-native \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact