A little setup. Then, a little less to remember.
Indhu Lekha uses your own Google Calendar connection. No paid AI, subscription, credit card or trial is needed. Standard Calendar API use is available at no additional cost, within Google’s quotas.
1. Make your free Google connection
- Visit Google Cloud Console and create a project, such as Indhu Lekha. Skip billing and free trial offers; neither is required for standard Calendar API use.
- Under APIs & Services → Library, find Google Calendar API and enable it.
- Open Google Auth Platform. Set up branding with your app name and support email. Choose External audience. Keep the app in Testing and add your own Google email under Audience → Test users.
- Under Data Access, add this scope:
https://www.googleapis.com/auth/calendar.events.owned. - Under Clients, create an OAuth client with type Web application. Add the exact origin of your hosted app under Authorized JavaScript origins, with no path or trailing slash. For this preview, use
. Also addhttp://localhost:4173if testing on your computer. No client secret belongs in this app; no redirect URI is needed for the popup token flow. - Copy the Client ID ending in
.apps.googleusercontent.com. Return to Indhu Lekha, open the gear icon, paste it, and save. Tap Connect calendar, sign in and grant event access. Use the same Google account that appears in the Calendar app on your iPhone.
Google has no create-only scope for your primary calendar. Its permission screen includes reading, changing and deleting owned events. Indhu Lekha implements only event insertion; it has no read, update or delete requests. Tokens stay in memory and expire, so you may need to reconnect after a while or after reopening the app. In Google testing mode, authorization can require renewed consent.
2. Put it on your iPhone
Open your deployed HTTPS link in Safari → Share → Add to Home Screen → Add. Enable Open as Web App if shown. The localhost preview runs only on your computer; it is not an iPhone link.
3. Tell her your plan
- “Hey Indhulekha, please create an event for dentist tomorrow at 3 pm”
- “Remind me to call Amma on 15 December 2026 at 7 pm for 1 hour”
- “Team meeting next Monday from 10 am to 11 am”
- “Take a break in 20 minutes”
- Multiple events: use one per line or a semicolon, each with its own date and time.
Tap the arrow, review the event and tap Add to Google Calendar. Dates and times use your device’s timezone, shown in Settings. Numeric dates use DD/MM/YYYY. Include AM/PM or 24-hour time. Events default to 30 minutes, which you can change. The + button gives you an event form when a request is unclear.
This is a lightweight English event assistant with a local rule-based parser. It is not a general-purpose AI chatbot: it asks for clarification for unsupported phrasing, recurring requests, missing dates or ambiguous times. No text is sent to an AI provider.
Voice and reminders
Tap the microphone and speak, then tap the arrow to submit. Browser voice support varies, particularly in installed iPhone web apps. If it fails, tap the message box and use your iPhone keyboard’s microphone. Recognition may use your browser or operating system’s speech service. There is no always-listening wake word or background microphone.
Calendar events include a popup reminder (10 minutes before by default). Enable notifications for Google Calendar in iPhone Settings. The web app does not run in the background to send reminders; Google Calendar handles them.
Privacy and disconnecting
Only the public client ID and preferences are stored on this device. Conversation and event details stay in the current page memory. Closing or reloading clears them. No account database or analytics is used. Open Settings → Disconnect Google Calendar to revoke the current token. You can also remove access from your Google account connections. The interface can open offline after its first load; Google sign-in and saving events require internet.
Free hosting you control
The app is a folder of static files in dist/. It can be hosted on GitHub Pages, using a public repository on the free plan. See the project README for instructions. If you move it, add the new origin in Google Cloud and enter the client ID on your iPhone again.
References: Google browser OAuth · Calendar insertion · API quotas and pricing · Apple Home Screen guide
← Ready? Back to Indhu Lekha