MediCore is a mobile app for pharmacists and pharmacy students — a clinical assistant that surfaces drug information and (in future) up-to-date guideline-based answers. Built with Expo (React Native) and Firebase Authentication.
- Expo SDK 54 + Expo Router (file-based routing)
- React Native 0.81 / React 19
- Firebase Authentication (email/password)
- TypeScript
-
Install dependencies:
npm install
-
Create your environment file:
cp .env.example .env
See the security note below before adding any keys.
-
Start the app:
npx expo start
Then open it in an Android emulator, iOS simulator, Expo Go, or the web.
app/— screens and routes (file-based routing)index.tsx— welcome screenlogin.tsx,signup.tsx— authentication(tabs)/— the main app: Home, Chat, Drugs, Profile
firebaseConfig.js/firebaseConfig.web.js— Firebase setup (platform-split: native uses AsyncStorage persistence, web uses the default browser persistence)components/,hooks/,constants/— shared UI and theming
.envis gitignored and must never be committed.- Never put secret API keys (OpenAI, payment providers, etc.) behind an
EXPO_PUBLIC_prefix. Expo inlines everyEXPO_PUBLIC_value into the app bundle, so it would be visible to anyone who downloads the app. Secret keys must live on a backend (for example a Firebase Cloud Function) that the app calls. - The values in
firebaseConfigare Firebase client config and are safe to ship. Protect your data with Firebase Security Rules and by restricting the API key in the Google Cloud console.
This is an early build. The AI chat currently runs in demo mode (keyword-matched sample responses) and several features (Consultations, Voice Notes, Interactions, SOAP Notes, drug detail pages, Google sign-in) are placeholders not yet implemented.
Clinical disclaimer: MediCore does not replace professional clinical judgment. Always verify drug and dosing information against official, current guidelines.