Skip to content

Latest commit

 

History

209 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Panorah ERP

Panorah ERP is a modern Expo + EAS project designed for production-grade React Native development. It includes Expo Router, Zustand, React Query, NativeWind (TailwindCSS), and EAS for CI/CD.


🚀 Getting Started

1️⃣ Prerequisites

Ensure you have the following installed:

  • Node.js (Recommended: v18+)
  • PNPM (Recommended: v8+)
  • Expo CLI (pnpm add -g expo-cli)
  • EAS CLI (pnpm add -g eas-cli)

Check your versions:

node -v
pnpm -v
eas --version

2️⃣ Clone the Repository

git clone https://github.com/your-repo/panorah-erp.git
cd panorah-erp

3️⃣ Install Dependencies

pnpm install

4️⃣ Set Up Environment Variables

Create a .env file in the root directory:

touch .env

Add the following environment variables:

EXPO_PUBLIC_API_URL=https://api.example.com
APP_ENV=development

Sync them with EAS:

eas env:set EXPO_PUBLIC_API_URL=https://api.example.com
eas env:set APP_ENV=development

Verify stored variables:

eas env:list

5️⃣ Prebuild Native Code (For Standalone Native Builds)

pnpm prebuild

This generates the ios and android folders for native development.


6️⃣ Run the App

📱 Run on Android

pnpm expo run:android

🍏 Run on iOS (Mac Only)

pnpm expo run:ios

🌍 Run on Web

pnpm expo start --web

🛠 Development

1️⃣ Linting & Code Formatting

Ensure code consistency using ESLint & Prettier:

pnpm lint
pnpm format

2️⃣ Scafolding with Plop

DO NOT CREATE FILES / FOLDERS DIRECTLY use following command for code consistency

npx plop

3️⃣ API Calls (React Query + Axios)

APIs are handled using React Query and Axios:

import { api } from "@/services/api";
const { data, error } = useQuery("users", () => api.get("/users"));

🚀 EAS Build & Deployment

1️⃣ Build for Development

eas build --profile development --platform all

2️⃣ Build for Production

eas build --profile production --platform all

3️⃣ Submit to App Stores

eas submit --platform ios
eas submit --platform android

🤝 Contributing

1️⃣ Fork the Repo

  • Click Fork on GitHub.
  • Clone your fork:
    git clone https://github.com/your-username/panorah-erp.git

2️⃣ Create a Branch

git checkout -b feature/new-feature

3️⃣ Make Changes & Commit

git add .
git commit -m "Added new feature"

4️⃣ Push Changes & Create PR

git push origin feature/new-feature
  • Open a Pull Request (PR) on GitHub.

✅ CI/CD with GitHub Actions

📌 Automated Builds & Tests

This project uses GitHub Actions for CI/CD. The workflow is defined in .github/workflows/eas-build.yml.

  • Triggers:

    • On push to main or staging
    • On pull request creation
  • Steps:

    • Install dependencies
    • Lint & test
    • Build with EAS

⚡ Useful Commands

Command Description
pnpm install Install dependencies
pnpm expo start Start the app locally
pnpm expo run:android Run on Android
pnpm expo run:ios Run on iOS
pnpm lint Lint the code
pnpm format Format the code with Prettier
eas build --profile production --platform all Build production binaries
eas env:list List stored environment variables
npx plop To generate files/ folders

📜 License

This project is licensed under the MIT License.


💬 Need Help?

  • Open an issue on GitHub
  • Contact @aniketshindepanorah

🚀 Happy Coding! 🎉

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages