Create Your First Feature
Learn how to build a complete feature using AI-assisted development with the boilerplate
Create Your First Feature
This tutorial walks you through the standard workflow for building a new feature. We'll use a simple "Daily Quote" feature as an example of implementing a missing item from your app_features_list.md.
Prerequisites: You must have completed the Environment Setup and Boilerplate Installation.
The Workflow and Example
We will follow the standard U-AMOS cycle: Initialize → Prompt → Verify → Integrate.
Step 1: Initialize Your Session
Before asking the AI to build anything, you must load the context. This ensures the AI knows about your project structure, existing components, and coding rules.
- Open your project in Cursor, Windsurf, or Claude Code.
- Open your chat and type the initialization command for your current task.
Example: "I want to implement the Daily Quote feature. Initialize context."
Defining the task and initializing the session context
The AI will read your .memory/ files and confirm it understands the current state.
Step 2: Prompt for the Feature
Now that the AI has context, ask it to build the feature. Be specific about Integration (where it lives) and Persistence (state).
The Prompt:
"Create a Daily Quote feature for the app:
- Create
src/features/dailyQuote/matching our feature folder structure.- It needs a
DailyQuoteCardcomponent to display on Home.- Add a Redux slice to store the quote and 'favorite' status.
- Use
redux-persistto save favorites offline.- Use existing UI components from
src/ui/."
For more advanced prompts and examples, check the Prompt Engineering Guide.
Step 3: Review & Generate
The AI will generate the files. Verify it follows the boilerplate patterns:
- Structure:
src/features/dailyQuote/(components, hooks, store) - State: Uses
@reduxjs/toolkitandreact-redux - UI: Uses
src/uicomponents (Box, Text, Card) - i18n: Uses
t('dailyQuote.title'), no hardcoded text
Step 4: Integrate & Test
The feature exists, but the app doesn't know about it yet.
- Add to Store: Import
quoteReducerinsrc/store/index.ts. - Add to Screen: Import
<DailyQuoteCard />insrc/screens/home/HomeScreen.tsx. - Add Translations: Add keys to
src/locales/en.json.
Run the app (yarn ios or yarn android) and verify:
- Quote appears on Home Screen
- Tapping "Heart" saves it
- Restarting app keeps the favorite saved