Skip to content

A Tech-driven solution for breastmilk donation and distribution.

License

Notifications You must be signed in to change notification settings

jeius/LactaLink

Repository files navigation

LactaLink Logo

LactaLink

A Tech-driven Solution for Breastmilk Donation and Distribution

Overview

LactaLink, built with React Native (Expo), facilitates the donation and distribution of breast milk. The app provides a platform for individuals(donors/recipients) and organizations(hospitals/milkbanks) to connect while ensuring medical approval, safety, and convenience.

Tech Stack 🛠️

Frontend

Backend

State Management

Database

Authentication

GIS (Geographic Information System)

Email Services

Cloud Storage

Hosting & Deployment

Domain Management

Development Tools

More details in the Technical Architecture documentation.

Installation & Setup ⚙️📦

Prerequisites

  • 🖥️ Node.js & pnpm installed - Required
  • 🏛️ Supabase Project - Required
  • 🌐 Google Cloud Project with Maps API and OAuth credentials - Required
  • 📲 Expo Project (for building dev client) and Expo CLI installed globally (npm install -g expo-cli) - Required
  • 🌐 Vercel Account (for hosting the web app) - Optional

Steps to Run

  1. 📂 Clone the repository:

    git clone https://github.com/Jeius/LactaLink.git
    cd lactalink
  2. 📦 Install dependencies:

    pnpm install
  3. 🏗️ Build the packages:

    pnpm build:packages
  4. 🛠️ Setup environment variables:

    • Create a .env file in the apps/mobile and apps/web directory.
    • Add necessary environment variables (e.g., Supabase URL, Supabase Anon Key, Google Maps API Key, Api URL).
    • Refer to .env.example for guidance.
  5. 🗄️ Create database triggers for Supabase Auth:

    • Go to Supabase Dashboard -> SQL Editor
    • Copy and paste into the SQL Editor all of the SQL commands from database/sql/triggers directory and run them.
  6. ▶️ Build the Mobile app dev client:

    • Log in to your Expo account using the command:
      eas login
    • Build the dev client for your platform:
      cd apps/mobile
      pnpm build:android-dev # For Android
      pnpm build:ios-dev     # For iOS
  7. 📲 Install the dev client on your device:

    • For Android, download the APK from the Expo dashboard and install it.
    • For iOS, follow this tutorial: Installing custom iOS apps.
  8. 🚀 Start the development servers:

    // In the root directory
    pnpm dev

Docker Deployment 🐳

For production deployment using Docker and Northflank:

Quick start:

# Build the Docker image
docker build -f apps/web/Dockerfile -t lactalink-web:latest .

# Run locally
cd apps/web
docker-compose up

Contributing 🤝💡📈

  • 🍴 Fork the repository
  • 🌱 Create a new branch (git checkout -b feature-branch)
  • 📝 Commit changes and push (git push origin feature-branch)
  • 🔄 Open a Pull Request

License 📜⚖️🔓

MIT License

About

A Tech-driven solution for breastmilk donation and distribution.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages