🚧 Nicky is a native iOS journaling app built with React Native and Expo.
- Custom Journals — Create journals with flexible field types (text, number, date, time, location, media, check)
- Daily Entries — Record entries with bookmarking and full-text search
- AI Reflection — On-device LLM generates daily reflections from journal entries at a configurable time
- Import / Export — Import journal templates and export journals or entries
- Native iOS UI — Built with SwiftUI components via
@expo/ui/swift-ui
Nicky is open source. The official App Store version is free to use, with an optional Nicky Pro subscription that supports ongoing development:
- Unlimited journals and entries (free plan: 2 journals, 7 entries each)
- All field types (media, check, rating, location) and all journal icons
- Journal options: one entry per day, Face ID lock
AI reflection is free for everyone.
You are free to build Nicky yourself. Without a RevenueCat API key, in-app purchases are disabled and the free-plan limits apply — under the GPL-3.0 you may modify the source to change that for your own build.
Requirements: macOS with Xcode and Vite+ (vp), which manages Node.js and the package manager. Expo Go is not supported — Nicky uses native modules, so it runs as a development build.
-
Install dependencies
vp install
-
Create
.env.localfrom the example and setEXPO_PUBLIC_SIGNING_SECRETto any random string (used to sign exported journals). The RevenueCat keys are optional.cp .env.example .env.local
-
Build and run on the iOS simulator
vp run ios
After editing .env.local, restart the dev server with vp run start (it clears the cache) — EXPO_PUBLIC_* values are inlined at bundle time.
vp check # Format, lint (Oxlint) and type check
vp run lint # ESLint (expo lint)
vp run typecheck # TypeScriptProject guides for contributors live in docs/guides.
Issues are welcome — bug reports, feature requests and ideas alike. Please open one on GitHub Issues.
Pull requests are not accepted at this time. Nicky is distributed on the App Store by its copyright holder, and keeping all code under a single copyright holder avoids licensing conflicts with that distribution.
Nicky is licensed under the GNU General Public License v3.0.
Copyright (C) 2026 273*
You may use, modify and redistribute the source code under the terms of the GPL-3.0. Modified versions you distribute must also be released under the GPL-3.0 with their source code.
The GPL-3.0 covers the source code only. The Nicky name, app icon and logo are not licensed for use in redistributed or modified versions. If you distribute your own build, please use a different name and icon.
