Giter Club home page Giter Club logo

nonsensicalthinking / planttracker Goto Github PK

View Code? Open in Web Editor NEW
16.0 3.0 6.0 189.55 MB

Plant Tracker is a free Android Phone App for tracking your plant grows. Keeps track of waterings, feedings, custom events and clone lineage. Future implementations will include scheduled reminders, data point graphing and a desktop app for more plant analysis, looking at integrating automated sensor data collection.

License: GNU General Public License v3.0

Java 100.00%
android apk plants growing growing-plants horticulture garden gardening botany journal

planttracker's People

Contributors

nonsensicalthinking avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

planttracker's Issues

Improve how group membership is changed

Need to make an activity displaying all of the plants with checkboxes to determine membership in a group.

The user taps on a group in the group membership view.
The list picker activity is loaded with a listing of all plants and checkboxes with the current group members checked already.
The user can then modify group membership.

Datapoint graphing

Find a decent graphing lib.
Graph user selected data points over a period of time.

Plant record dialog should maybe get the whole screen

The collect record data dialog should get the whole screen instead of a Dialog. In smaller phones the attach images tab has some funny hyphenation.

There are also display issues which prevent the buttons on the dialog from being seen in landscape if the record has 1 or more Datapoints

View and scroll performance could use improvement

Look at using viewholders to speed up the list view. Once all of the items have been scrolled through in the list, scrolling is fast, presumably due to caching a base level of caching.

Move image loading to asynctasks, this should make the initial load of a plant quicker though may result in pop-in. Play with it.

Import/Export is slow

Seems to be the image sizes, full size camera images into a zip seem to take some time and likewise for extraction. Look into ways to speed this up.

Record summary dialog

Need a way to view record details not on the summary.
Single click a plant's record should display a dialog with all data points listed and notes.

Display graph of datapoints over time for all of this record type.


Graph

Data points for record

Summary text

Buttons for further graphing and image viewing

Inclusion in F-Droid

Hi,

Since this app is GNU GPLv3 licensed, are you considering the fact to add it to F-Droid? There is a strong community behind.

You can find some documentation here.

You will need to create tagged releases, with a consistent name for each release (for example 1.0 then 2.0 etc...)

Otherwise, if you don't want to work on the inclusion of this app by yourself, would it be ok for you if someone else do it for you?

Pending events

Some kind of reminder system that can cause a notification.
I want to be able to say the next watering should have food.
Maybe some kind of pending notices on plants and groups.
Allow the user to specify a time they want to be notified about the number of pending events.
So if a person usually checks on their plants at a particular time of day they can set that and the pending noticed will be a reminder about things that need to happen.
Pending events should be like templates?

Implement copy plant functionality for cloning

We want a way to not have to keep track of each individual clone until they make it to soil. The idea is to keep the plant as a record of the cutting collection and copy the plant out into N surviving clones when they make it to soil. This would mean deleting the existing record but copy might be used in other cases where you can subdivide an existing plant without "cloning".

Implement Import/Export of plant data

Implement importing and exporting of plant data as json.
Figure out a practical way to transfer the images for the plants, archives will be quite large, too large to email.

Import options...
From downloads
From internal storage

Export options...
To downloads
To internal storage
To email (with conditions?)

Requirements update 2/9/2018:
When exporting data, include a required items list containing copies of:

  • Groups plant is a member of
  • Record templates contained within the plant.

When importing data, if the required items list contains any items by Id which are not part of the importing system, they will be created automatically.

Multiple issues preventing lower api level support

Current items preventing lower api levels:

Preventing API Level 23:
ArrayList.sort() for the plantdata's records is preventing api level 23. (easily resolved)
Launching intent from UI thread appears to be a problem so clicking on tile and launching intent from there needs to be reworked.

Preventing API Level 22:
Timepicker getHours and getMinutes calls are different for api level < 23.

Profile memory usage

I have a feeling there are some leaky references, profile normal usage of the app and look for leaking.

Sort options for plant listing

Give sort options for plant listing.
Start Date ASC
Start Date DESC
Alphabetical ASC
Alphabetical DESC
Groups Alphabetical ASC
Groups Alphabetical DESC

Improve record color coding functionality

Remove external color lib and write intent to replace it.
Generate random colors on load.
Button to regenerate new color.
Check existing colors and make sure you're not reusing colors.
Show colors in the add record drop down.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.