riccardocalligaro / registro_elettronico

πŸ“šπŸ« Mobile application for Classeviva made with Flutter.
Other
45 stars 6 forks source link
classeviva dart flutter registro-elettronico spaggiari

Registto elettronico
Get it on Google Play

Mobile application for electronic school register (Classeviva) that I developed during highschool from december of 2019 to january of 2021. The app is currently on the Play Store and has more than 20 000 downloads and 5 000 daily active users.

The app is currently in maintenance mode and I'm not adding new features, I'm just fixing major bugs and issues.

The code still uses flutter 1.22.6 (no null safety) and many libaries have been updated with breaking changes, so to build it you need to use a old version from 2021 with oudated pubs. Upgrading all the codebase (~35 000 lines) to null safety and the latest flutter version is a lot of work and currently I don't have time for it. If anybody wants to help me free to contact me.

Run the project

To run the project you need to use flutter version 1.22.6, I highly suggest to use fvm so you can have multiple flutter versions installed on your machine and use the older version just for this project.

After installing fvm run fvm install 1.22.6 and then fvm use 1.22.6 to use it.

Then you can run fvm flutter pub get to install all the dependencies and you are ready to go.

Android builds fine but iOS doesn't because of a problem with some outdated google packages and the Protobuf library in Swift, I'm working on it.

Contribute

Any help or contribution is highly appreciated, if you want to contribute to the project you can open a PR or contact me on Telegram.

As I said before right now I don't have a lot of free time for other personal projects so the development of this app is currently on hold, but I'm still fixing major bugs and issues.

It would be ideal to have someone who takes lead in the rewrite of the app to null safety and the latest flutter version. I started some work on branch 3.0 but I didn't have time to finish it.

Main features of the app

Technologies and libraries used

Project structure