Skip to content

A ✨ full-stack mobile To-Do app ✨ built with React Native, GraphQL, Apollo, PostgreSQL, and more! It's fast, clean, and developer-friendly β€” perfect for learning or launching πŸš€.

Notifications You must be signed in to change notification settings

dmunasingha/react-native-graphql-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧩 React Native GraphQL To-Do App

A ✨ full-stack mobile To-Do app ✨ built with React Native, GraphQL, Apollo, PostgreSQL, and more! It's fast, clean, and developer-friendly β€” perfect for learning or launching πŸš€.


πŸ”§ Tech Stack Toolbox 🧰

πŸ–ΌοΈ Frontend

  • βš›οΈ React Native 0.79.4
  • πŸš€ Expo SDK 53
  • πŸ”— Apollo Client
  • πŸ’… NativeWind (TailwindCSS for RN)
  • 🎭 Reanimated for slick animations
  • 🧱 GlueStack UI (optional)

πŸ”™ Backend

  • 🟒 Node.js + Express
  • πŸ“‘ Apollo Server
  • πŸ” GraphQL (Schema + Resolvers)
  • πŸ”„ Prisma ORM
  • πŸ›’οΈ PostgreSQL

πŸš€ Getting Started

πŸ—‚οΈ Folder Structure

react-native-graphql-app/
β”œβ”€β”€ frontend/        # πŸ“± Mobile client
β”‚   β”œβ”€β”€ App.js
β”‚   β”œβ”€β”€ apollo/      # Apollo config
β”‚   β”œβ”€β”€ components/  # Reusable UI
β”œβ”€β”€ server/          # πŸ”§ Node GraphQL API
β”‚   β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ prisma/      # DB schema & migrations
└── README.md

πŸ”„ Quickstart Guide

πŸ“₯ 1. Clone the Repo

git clone https://github.com/dmunasingha/react-native-graphql-app.git
cd react-native-graphql-app

🧠 2. Backend Setup

cd server
cp .env.example .env
npm install
npx prisma migrate dev --name init
npm run dev

πŸ”— GraphQL Playground: http://localhost:4000/graphql

πŸ“² 3. Frontend Setup

cd ../frontend
npm install
npm start

πŸ’‘ Tip: Use Expo Go or an emulator for testing

⚠️ Important: Update Apollo client URI in apollo/client.js:

uri: 'http://192.168.x.x:4000/graphql' // πŸ‘ˆ Use your LAN IP

🎯 Features Checklist

  • βœ… Add / Toggle / Delete todos
  • πŸ” Auto refetch with Apollo
  • ✨ Beautiful styling with Tailwind
  • πŸ“² Cross-platform (iOS/Android)
  • πŸ”„ Prisma-backed DB
  • ⏱️ Coming Soon: Offline mode
  • πŸŒ“ Coming Soon: Dark mode

πŸ“Έ Screenshots

πŸ“‹ List View πŸ› οΈ Mutation Example
Coming soon Coming soon

πŸ§ͺ Dev Tips

  • 🧹 Clear Metro cache: npx expo start -c
  • 🧬 Test GraphQL at: http://localhost:4000/graphql
  • πŸ§‘β€πŸ”¬ Use npx prisma studio to view data

🧨 Troubleshooting

  • ❌ Network request failed: Use your real IP, not localhost
  • ❌ Unknown type "ID": Match GraphQL types (use Int! if Prisma expects it)
  • ❌ Metro error: All import statements must be at the top level

πŸ“„ License

πŸͺͺ Licensed under the 0BSD license β€” totally open and flexible πŸ’–


πŸ’‘ Acknowledgements


πŸ™‹β€β™‚οΈ Contact

Made with ❀️ by Dunith Munasingha πŸ“§ munasingha.dunith@gmail.com(mailto:munasingha.dunith@gmail.com) 🌐 https://www.linkedin.com/in/dunith-munasingha/

About

A ✨ full-stack mobile To-Do app ✨ built with React Native, GraphQL, Apollo, PostgreSQL, and more! It's fast, clean, and developer-friendly β€” perfect for learning or launching πŸš€.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published