Documentation Index
Fetch the complete documentation index at: https://docs.choicely.com/llms.txt
Use this file to discover all available pages before exploring further.
Create a component
Add a new.jsx file in rn/src/components/. Each component must use a default export and receives props from URL query parameters.
Here’s the included Hello.jsx as a reference:
Register the component
Openrn/src/index.js and add your component to the componentMapping object:
my_component) becomes the name used in the URL scheme.
Passing props via URL
Query parameters in the URL are automatically passed as props to your component:hello component with { message: "Alice" } as props.
Multiple parameters work the same way:
All query parameter values are passed as strings. Convert them to the appropriate type in your component if needed (e.g.
Number(props.start)).Root options
You can export arootOptions object from your component module to control how the framework wraps it:
| Option | Type | Description |
|---|---|---|
disableScrollView | boolean | Set to true if your component manages its own scroll behavior (e.g. uses FlatList or ScrollView internally). |
Configure in Choicely Studio
To make your component accessible in the app:- Open your app in Choicely Studio.
- Navigate to the screen where you want to add the component.
- Set the navigation item URL to:
<name> with the key from componentMapping (e.g. hello, counter, my_component).
Navigate between components
Your React Native components can navigate to other Choicely content usingLinking.openURL(). See the iOS React Native Support page for the full URL scheme reference and examples.
Included examples
The project ships with these example components:| Name | File | Description |
|---|---|---|
hello | Hello.jsx | Simple greeting that accepts a message prop |
counter | Counter.jsx | Tap counter with persistent storage (MMKV) and a start prop |
tic_tac_toe | TicTacToe.jsx | Two-player Tic Tac Toe game |
