CiberCheck is a mobile application developed with modern Android technologies.
It provides institutions and organizations with a secure and efficient system for students attendance control, and identity validation using QR scanning and OTP email authentication.
The application simplifies the process of verifying identities and managing attendance.
Administrators can register users, issue verification codes, and review activity logs.
Users authenticate using a One-Time Password (OTP) sent directly to their email and can then access various verification functions.
- Email-based OTP authentication (no Firebase Authentication)
- Secure user registration and login
- QR code scanning and validation
- Real-time verification against backend API
- Activity logs and attendance tracking
- Google Maps integration for location-based validation
- Modern and responsive Material Design UI
- Android (Kotlin)
- Retrofit2 + OkHttp (API communication)
- Google Maps SDK
- Google ML Kit (QR Scanner)
- Custom Email OTP backend service (via REST API)
Clone the repository:
git clone https://github.com/sunderlldev/cibercheck-mobile.git
cd cibercheck-mobileOpen the project in Android Studio and sync Gradle.
The project requires API keys and backend URLs.
These values are not included in the repository for security reasons.
Add your keys in local.properties:
MAPS_API_KEY=your_real_maps_api_key
API_BASE_URL=https://your-backend-domain.com/api/Or in gradle.properties:
OTP_EMAIL_API_KEY=your_backend_email_service_keyThe app reads these keys during build time, keeping secrets out of the repository.
app/
โโโ java/
coming
- User enters their email.
- Backend generates an OTP and sends it to the user's email.
- User inputs the OTP into the app.
- Backend verifies the OTP and returns a session token.
- User gains access to verification and attendance features.
This system provides secure authentication without relying on Firebase Auth.
- API keys and backend credentials are excluded from the repository.
- Email OTP logic is handled by a secure backend service.
- Past leaked keys were removed from the entire Git history.
