A university app to solve problems of socializing, scheduling, course selection and acheivement sharing etc.
For the backend it uses a REST API made using NodeJS and MySQL. Here is the link to it's code UniPal_Backend
Due to privacy and resource abuse concerns I have kept the url of the backend API private and you won't be able to see it. Therefore, if you want to work with this project and make your own edits, than you also need to deploy the backend on your own and pass the URL to the flutter app. Don't be confused, you CAN use my backend code provided above, you just have to deploy it on a server of your own. There are plenty of free options including:
- Heroku
- AWS Free Tier
- Azure etc.
For more instruction visit the backend README.
Once deployed, pass the url while running the flutter app like this:
// Replace your-url-here with your own deployed URL like "https://example.com/api/v1"
flutter run --dart-define=BASE_URL="your-url-here"
- Authentication.
- Student Finder w/ Filters.
- Connections and Hangouts Requests.
- Timetable Generator.
- Timetable Overlap Checker.
- Teacher Reviews Forum.
- Memories and Acheivements Feed.
Riverpod State Management - v1.0.3 | Dio + Interceptors For JWT Refresh |
Freezed + Flutter Hooks For JSON Handling | Custom Wrapper For Shared Prefs + Flutter Secure Storage |
Clean Architecture | Session persistence and encrypted key storage |
Reusable services architecture and code | Custom reusable widgets |
Full documentation | Linting + Custom Analyzer Rules |
This project is a starting point for a Flutter application. These series of steps need to be followed for the app to run:
1. Make sure you are on Flutter v3.0.0 and Dart SDK 2.18
2. If not, run `flutter uprade`.
3. Open project dir and run this command in root directory
```
flutter pub get
```
4. Since the project uses code generation, alot of the files are missing initially. To generate them run this in root dir
```
flutter pub run build_runner build --delete-conflicting-outputs --enable-experiment=super-parameters
- Flutter v3.0.0
- Dart v2.17 or higher
To contribute, fork the repository and push the changes to the master branch. Then submit a pull request for merging with the source. If your code passes the review and checks it will be merged into the master branch.
Feel free to send us feedback on Twitter or file an issue. Feature requests are always welcome.
Licensed under the MIT License.