sparta

command module
v0.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 28, 2020 License: AGPL-3.0 Imports: 1 Imported by: 0

README


Sparta

Sparta is a Sport and Rehearsal Tracking Application. It lets the user write down and save all sport activities safely and privately on the computer. No tracking and absolutely zero collection of any user data. Activities are simply saved on the computer without outside interference. Sparta uses top of line AES-256 encryption, state of the art key derivation using Argon2 and end-to-end encrypted sharing over the network using wormhole-william to keep all your data hidden from any spying eyes.

Requirements

Sparta is built using the following Go packages:

Downloads

Please visit the release page for downloading the latest release. Versions for Linux, MacOS and Windows are available, with an Android version possibly coming in the future.

Systems that have Go and the required prequsites for Fyne installed can alternatively install using go get:

go get github.com/Jacalz/sparta

Contributing

Contributions are strongly appreciated. Everything from creating bug reports to contributing code will help the project a lot, so please feel free to help in any way, shape or form that you feel comfortable doing. We as a community can strive towards making this project even better. If you want to contribute code, the folder structure below will hopefully help you know where to start looking.

TODO
  • Create a custom widget for displaying exercises in a more pleasant way.
  • Add the option to delete individual exercises.
  • Add import of gpx files from smart training watches and other training equipment.
  • Possibly an Android version and maybe an iOS version if it is requested.
Folder Structure
  • internal/assets/ : Logos, artwork and assets bundled in the source code.
  • internal/crypto/ : Cryptographic functions and wrappers to simplify password hashing and encryption/decryption.
    • internal/crypto/argon2/ : Wrapper around golang.org/x/crypto/argon2 for simplified use inside internal/crypto.
    • internal/crypto/validate/ : Handles functions for validating usernames and passwords.
  • internal/file/ : Common code for file and data handling inside the application.
    • internal/file/parse : Contains adapted wrappers and functions for parsing numbers and urls from strings.
  • internal/gui : Graphical interface code for controlling look and function in the application window using fyne.io/fyne.
    • internal/gui/widgets : Custom widget adaptations to extend and simplify functionality on top of standard widgets.
  • internal/sync : Implementation of end-to-end encrypted file sharing over a local network using github.com/psanford/wormhole-william.

License

  • Sparta is licensed under GNU AFFERO GENERAL PUBLIC LICENSE Version 3 and created by Jacalz.
  • All assets are produced by Jacalz and licensed under the Creative Commons By-NC-SA 4.0 license.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
gui

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL