Skip to content

πŸ‘©πŸ»β€πŸ€β€πŸ‘¨πŸ»A Cross-platform app written in tauri for VIT Students to check which of your friends are free right now

License

Notifications You must be signed in to change notification settings

ppmpreetham/vfriend

Repository files navigation

Check status of your friends at any time
Download the App

MIT License Version

Home screen Friends screen Profile screen

Warning

This app is still in development, and is not yet ready for production use. There are many features that are still missing, and there may be bugs. Please use it at your own risk.

Why VFriend?

An year ago, while I was a freshman at my college, I had an oddly specific problem of having a little too many friends. Oftentimes, I’d often find myself digging through old WhatsApp/Discord chats, trying to find the timetables they had sent me, one by one, over and over. It was tedious, repetitive, and honestly, a little ridiculous. I kept thinking, there has to be a better way to do this. But back then, I didn’t know much about app development. I had spent time learning web dev, but even now, as I write this, you could say, this is my first real app.

Usage

  1. Install Node.js: Make sure you have Node.js installed on your system. You can download it from nodejs.org.

  2. Install pnpm: If you haven't already, install pnpm globally

    npm install -g pnpm
  3. Install Rust: Make sure you have Rust installed on your system. You can download it from rustup.rs.

  4. Install Tauri CLI: Install the Tauri CLI globally using pnpm:

    pnpm install -g @tauri-apps/cli
  5. Install Tauri: Follow the Tauri installation guide to set up your environment.

  6. Clone the Repository:

    git clone https://github.com/ppmpreetham/vfriend.git
    cd vfriend
  7. Install Dependencies:

     pnpm i
  8. Change the IP: Open src-tauri/tauri.conf.json and change the devPath to your IP address. For example:

    "devPath": "http://172.22.198.42:1420/"
  9. Run the App:

      pnpm tauri dev
  10. Build the App:

      pnpm tauri android build -- --apk

Android

To build the app for Android, you need to have the Android SDK and NDK installed. Follow the Tauri Android guide for detailed instructions.

  1. Add this to .vscode/settings.json to ignore Tauri's Android schema:
"yaml.schemaStore.enable": false
  1. First, initialize the Android project:

    pnpm tauri android init
  2. Copy the android/AndroidManifest.xml by removing gen/android/app/src/main/AndroidManifest.xml:

     cp src-tauri/gen/android/app/src/main/AndroidManifest.xml src-tauri/gen/android/app/src/main/AndroidManifest.xml
  3. Copy the android/build.gradle.kts by removing gen/android/app/build.gradle.kts:

    cp src-tauri/gen/android/build.gradle.kts src-tauri/gen/android/app/build.gradle.kts
  4. Change the theme in src-tauri/gen/android/app/src/main/res/values/themes.xml for theme

  5. Then, build the app for Android:

    pnpm tauri android build

TO-DO

  • Seperate stores for oneSelf and friends
  • Remove redundant and unused Hooks
  • Add support for Deep-Links on Mobile(Android and IOS)
  • Better addFriend functionality
  • Setup Permissions for fs, Dialog for Mobile(Android and IOS)
  • Fix Dialog for Android (currently gives content://com.android.providers.media.documents/document/document%3A1000313997)
  • Friend page Search functionality
  • Friend individual page
  • Settings page
  • QR Code functionality
  • Share link to add friend functionality
  • Ability to change the time format
  • Multiple themes
  • Deep-Link onClick functionality
  • GitHub Actions Automation
  • [ ]
  • useNavigation for back button, refer to tauri-apps/tauri#8142
  • Add Friend via Deep-Link
  • Update Self Timetable
  • Update Friend Timetable
  • peer-to-peer functionality
  • NFC Functionality (optional)
  • Calendar page

About

πŸ‘©πŸ»β€πŸ€β€πŸ‘¨πŸ»A Cross-platform app written in tauri for VIT Students to check which of your friends are free right now

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •  

Languages