A mobile application (iOS & Android) for managing and using predefined prompt templates with AI services like ChatGPT. Built with React Native and Expo.
- 📱 Mobile Prompt Library: Create, edit, delete, and organize your favorite prompts directly on your phone.
- 🎨 Customization: Assign custom colors and icons (from Material Community Icons) to prompts for easy visual identification.
- 🗂️ Categorization: Organize prompts with custom categories.
- ✨ AI Prompt Enhancer: Improve your prompts using AI! Provide an initial prompt and let the selected AI model suggest enhancements iteratively.
- 🤖 AI Auto-Categorization: Automatically suggest categories for your prompts using an AI model (requires OpenAI API Key).
- ⚙️ Configurable AI Model: Choose which OpenAI model (e.g., GPT-4o-mini, GPT-4 Turbo) to use for AI features via the Settings screen.
- 💾 Local Storage: All prompts and settings are stored securely on your device using AsyncStorage.
- 🔄 Import/Export: Backup and share your prompts by exporting them to a JSON file, and import prompts from a previously exported file.
- 📋 Quick Copy: Easily copy prompt text to the clipboard (feature planned/partially implemented).
- ⬆️⬇️ Reordering: Arrange your prompts in the desired order within the list.
- React Native
- Expo (Managed Workflow - SDK 52)
- TypeScript
- React Navigation
- AsyncStorage (for local data persistence)
- OpenAI API (for optional AI features)
QuickPrompts/
├── assets/ # Static assets (icon, splash screen, fonts)
├── src/
│ ├── components/ # Reusable UI components (Button, PromptForm, PromptListItem, etc.)
│ ├── context/ # React Context providers (SettingsContext)
│ ├── hooks/ # Custom React hooks (usePrompts)
│ ├── navigation/ # React Navigation setup (AppNavigator, types)
│ ├── screens/ # Application screens (PromptList, PromptEdit, Settings, etc.)
│ ├── types/ # TypeScript type definitions (Prompt, API types)
│ ├── utils/ # Utility functions (storage, openaiApi, constants)
├── App.tsx # Main application component
├── app.json # Expo configuration file
├── eas.json # EAS Build configuration
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── ... # Other config files (.gitignore, etc.)
-
Prerequisites:
- Node.js (LTS recommended)
- npm or Yarn
- Expo Go app on your physical device (iOS or Android) OR Android Studio / Xcode for simulators.
- Expo CLI:
npm install -g expo-cli
-
Clone the repository:
git clone <repository-url> cd QuickPrompts
-
Install dependencies:
npm install # OR yarn install -
Run the application:
npx expo start
This will start the Metro bundler.
-
Open the app:
- On device: Scan the QR code shown in the terminal using the Expo Go app.
- On simulator: Press
iin the terminal for the iOS Simulator orafor an Android Emulator/connected device.
-
Adding Prompts:
- Navigate to the main "Quick Prompts" list screen.
- Tap the
+icon in the header. - Fill in the prompt text (required).
- Optionally add a name, category, and select a color/icon.
- AI Enhancer (Optional):
- Ensure your OpenAI API key and desired model are set in Settings.
- Tap "Enhance with AI".
- Review the suggestion. You can "Accept Suggestion" or provide feedback and "Regenerate with Feedback".
- Tap "Add Prompt".
-
Editing/Deleting Prompts:
- Tap on a prompt in the list to navigate to the "Edit Prompt" screen.
- Make changes and tap "Update Prompt".
- Tap "Delete Prompt" (and confirm) to remove it.
-
Using Prompts:
- Tap the copy icon on a prompt item in the list (feature planned/partially implemented).
-
Settings:
- Navigate to Settings using the cog icon in the header of the main list.
- Enter your OpenAI API Key to enable AI features.
- Select your preferred OpenAI model for enhancement and categorization.
- Tap "Save Settings".
-
AI Categorization:
- Ensure your API key is saved in Settings.
- Navigate to Settings > "Go to AI Categorization".
- Tap "Fetch Category Suggestions".
- Review the suggestions and check the boxes for the ones you want to apply.
- Tap "Apply Selected Categories".
-
Import/Export:
- Navigate to the Import/Export screen using the swap icon in the header of the main list.
- Follow the on-screen instructions to export your current prompts to a file or import prompts from a previously saved file.
Contributions are welcome! Please feel free to submit issues or pull requests.
This project is licensed under the MIT License. (Assuming MIT - add LICENSE file if needed)