ASync is a modern, cross-platform mobile application designed to help college students and educators seamlessly manage academic resources, track assignments, and organize deadlines. Built with a stunning dark-mode "Deep Focus" aesthetic, the app integrates robust role-based access control, a sleek React Native interface, and a powerful Node.js/PostgreSQL backend.
Watch our app in action: Watch Demo Video on Google Drive
- Role-Based Workflows: Distinct, optimized interfaces for
STUDENTandTEACHER(Admin) roles. - Coursera Sync: Automatically fetches assignment data from Coursera ICS calendar URLs and syncs it to student cohorts via backend cron jobs.
- Automated CI/CD: Zero-touch deployments using GitHub Actions for Android
.apkbuilds and Codemagic for iOS.ipabuilds. - Smart Assignment Tracking: Students view timeline-grouped due dates with native local push notification reminders.
- Notes Management: Teachers can upload PDF resources directly to Cloudinary. Students view them via a native integrated PDF viewer.
- Deep Focus UI: Custom, semantic dark-mode palette designed for low eye strain and maximum productivity, complete with dynamic island mockups for the landing page.
- Framework: React Native, Expo SDK, Expo Router
- State & Styling: Redux Toolkit, NativeWind (Tailwind CSS)
- Forms & Icons: Formik, Yup, Lucide Icons
- Runtime: Node.js, Express
- Database: PostgreSQL with Prisma ORM
- Auth & Storage: JWT, Cloudinary, Multer
- Jobs: Node Cron,
ical.js(for calendar parsing)
- Android Build: GitHub Actions (
build-android-apk.yml) - iOS Build: Codemagic (
codemagic.yaml)
.
├── Backend/ # Node.js/Express server, Prisma ORM, Cron jobs
├── Frontend/ # React Native Expo app, Redux store, NativeWind UI
├── LandingPage/ # Modern React/Vite landing page showcasing the app
├── .github/workflows/ # Automated Android build pipelines
├── codemagic.yaml # Automated iOS build pipelines
└── README.md
git clone https://github.com/Naren456/Async.git
cd Async/Backend
npm installConfigure your .env file with your DATABASE_URL, JWT_SECRET, and Cloudinary credentials.
npx prisma migrate dev
npm run devcd ../Frontend
npm install
npx expo startScan the QR code with the Expo Go app on your phone, or press i to open in the iOS simulator.
cd ../LandingPage
npm install
npm run devWe use automated CI/CD pipelines to build the production binaries.
Pushing code to the main branch will automatically trigger the GitHub Action (build-android-apk.yml) which runs an EAS local build and publishes the resulting APK as a GitHub Release artifact.
Building an iOS app usually requires a Mac. We bypass this using a dedicated pipeline!
- Codemagic: Our
codemagic.yamlautomatically provisions amac_mini_m2, injects the environment variables, and generates an unsignedapp.ipa. - LambdaTest: For physical device validation without owning an iPhone, we stream the
.ipato cloud devices via LambdaTest Accessibility Scanner. - Physical Installation: If you have an iPhone, see our iOS Installation Guide to sideload the app using AltStore without a 7-day expiration!
(For technical details on the headless iOS compilation architecture, see build_iomac.md).
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
This project is open-sourced under the MIT License.












