Skip to content

mavosy/WildlifeTrackerSystem

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


WildlifeTrackerSystem

A WPF practise application that help tracks animals and their favorite foods.
Explore the docs »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. License
  6. Contact

About The Project

WildlifeTrackerSystem is a WPF application designed for tracking wildlife data as a fun, experimental school project, to practice various C# techniques. This project is designed using the MVVM pattern, and practises techniques like dependency injection, event handling, command patterns, and data validation. The application architecture is bloated intentionally, allowing the exploration of multiple software development concepts and patterns in a non-serious, sandbox environment.

The goal of this project is not to create a production-grade application but to experiment with features like custom data services, file management, and model validation in the context of wildlife tracking. This project includes many services and layers to mimic a complex architecture, which allows exploring how these techniques can interact and function.


Product Screenshot

(back to top)

Built With

  • C#
  • WPF
  • MVVM Pattern

(back to top)

Getting Started

Follow these steps to get a local copy up and running.

Prerequisites

  • .NET 6.0 SDK or later
  • Visual Studio 2022 or another IDE with WPF support

Installation

  1. Clone the repo.

  2. Open the solution in Visual Studio and build the project.

  3. Index your zoo or backyard

(back to top)

Usage

  1. Launch the application.
  2. Add animals.
  3. Make recipies for animals.
  4. Donate to a wildlife sanctuary or animal welfare organization of your choice!

(back to top)

Roadmap

UI:

  • Improve the design of the main window to better display wildlife tracking data.
  • Implement a more detailed data visualization for wildlife trends (charts, graphs, etc.).

Performance and Optimization:

  • Reduce code bloat by cleaning up redundant services and dependencies.
  • Refactor the dependency injection setup for better performance and testability.

Feature Expansion:

  • Add functionality to export wildlife tracking data to other formats (CSV).
  • Implement cloud storage of data.
  • Add a notification system for monitoring critical wildlife status.

Testing:

  • Add unit tests for the services and command patterns.
  • Implement integration tests to ensure different components of the application work together well.

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Top contributors:

contrib.rocks image

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

mavosy - maltesydow@gmail.com

Project Link: https://github.com/mavosy/WildlifeTrackerSystem

(back to top)

About

A wpf application to organize different animals and their food habits, a sandbox practise project to try out different techniques.

Resources

License

Stars

Watchers

Forks

Contributors

Languages