This is a program that manages a database of students and courses.
- Light/dark mode.
- Fullscreen mode.
- Cross platform.
- User profile pictures and detailed fields to fill out.
- SQLite managed database.
- Embedded SQLite (no additional installations required).
- Multilanguage support
- Multithemes support
- Linux and windows installer
Note: Only windows and linux are supported
Install my-project with go or by executing the binary in its own folder
Install with go:
git clone https://github.com/Tom5521/EduTrack
go install cmd/EduTrack/main.go
You can compile it, you need:
- C compiler
- Go compiler
- Mage
- wget
- xz (on linux)
- winrar/7zip (on windows)
- Git
- Fyne Package (Optionally)
Compiling and installing in Linux
git clone https://github.com/Tom5521/EduTrack
git checkout <latest version>
mage install:user # mage install:root for root installation
On Windows
git clone https://github.com/Tom5521/EduTrack
git checkout <latest version>
mage build:windows
# Go to builds folder and unzip EduTrack-win64.zip
# Then run the executable, and done!
# The windows(and linux executable is fully portable)
You can also download the binaries and unzip them, to run them in a portable way, or installing with make install in linux
- Change the use of raw SQL to GORM (I reduced ~1000 lines of code).
- Change the use of buttons to toolbars
- Improve data handling and data uploading
- Switching from storing data in yml files to SQLite files
- Improve packaging scripts for distribution.
- Move the data library that can be imported from other projects to modify databases and make scripts in general!
To run tests, run the following command
go test -v ./tests/data/
go test -v -tags delete ./tests/data/
Nothing interesting for now... it would be better to check the releases
For support open an issue or message me through my reddit! Or send me a email!
There is a very high chance that the program will be detected as false positive in windows, here is the virustotal scan of the linux and windows version
And here is a explanation of the problem
And here an example of it