Giter VIP home page Giter VIP logo

periodical's Introduction

Periodical

A calendar to track your menstruation and calculate possible fertile days

Copyright (C) 2012-2023 Arno Welzel

Translation:

Albert Kannemeyer, Sébastien Gravier, Primokorn, Valerio Bozzolan, Ingrid Spangler, Wjatscheslaw Stoljarski, Pander, Laura Arjona Reina, Naofumi Fukue, Tomasz Terka, Nikoletta Karasmani, Yaron Shahrabani, Inbar Gover, Turan Guliyeva, Enara Larraitz, Rza Sharifi, Mevlüt Erdem Güven

If you want to help with the translation, you can join the project on Crowdin:

https://crwd.in/periodical

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

"Periodical" is a menstruation calendar with calculation of the fertile days according to Knaus-Ogino originally developed by Arno Welzel.

WARNING: It is not recommended to use this calendar to avoid pregnancy! There are more accurate methods, like measuring the basal body temperature.

Source:
https://github.com/arnowelzel/periodical

Download latest version at Google Play:
https://play.google.com/store/apps/details?id=de.arnowelzel.android.periodical

Download latest version at F-Droid:
https://f-droid.org/repository/browse/?fdid=de.arnowelzel.android.periodical

Download latest version as APK:
http://arnowelzel.de/download/Periodical.apk

Tools to used to build this project:

Android Studio
http://developer.android.com/tools/studio/index.html

periodical's People

Contributors

archi-dagac avatar arnowelzel avatar emaiannone avatar idotj avatar ikanakova avatar istrangeloop avatar jansone-dace avatar juliaj999 avatar mgth avatar mystro256 avatar naofum avatar neofrontier-technologies avatar nivivier avatar pandermusubi avatar swmail avatar valerio-bozzolan avatar

Stargazers

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

Watchers

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

periodical's Issues

Calendar swipe issue

When swiping the calendar the period input disappears. It stays as entered while using the forward/back arrows.

Individual period length

Users should be able to set the end of the current period individually in the calender.

This could be accomplished by either choosing "start of period" and "end of period" when tapping a single day or by using a detailed day view to edit the selected day instead of a simple popup dialog.

F-Droid

Can you tag your latest new version? So it likely will get updated in F-Droid.

Intercourse icon in calendar view

I think an intercourse icon in the calendar view would make a lot of sense. Either if you are evaluating risk or the luck of getting pregnant, it is something that would make a lot easier to track your sex activity during the months.

Problem when not info about 1 month

If there're some months you forget to add the day of your period, the automatic ovulation gets completely messy and it may even happen that it doesn't appear any region of ovulation at all. Or when you period is missed for a long period of time. I don't know if the estimation of the ovulation is correct in that case then. To give you an idea, apparently I have my period for 1 week (red), then I get 13days of ovulation (blue) and then I get 13 days of no ovulation (yellow). Or cases where the ovulation day (blue) is between yellow dats. I find this super weird and confusing. Maybe this could be fixed if the system only would take into account the last three months, for instance, to measure the ovulation probability.

New Icon?

Thanks for your awesome app @arnowelzel! 👍
Are you interested in a new app icon? Any ideas?

[Feature request] Custom path for backup/restore

Hello,
Thank you for this wonderful app I use for years.
May I suggest a new feature ?
I think it would be great to be able to backup the db to a custom path, and restore from a custom path.

Context: I run a nextcloud server, and I backup some folders from the phone on it. I use folder sync to mirror them between the phone and the server (think of it like permanent rsync).
My use case would be this one:

  • Use periodical on a phone
  • save/export the db to a custom path that is synced with my nextcloud server
  • change phone, without using google backup/restore (or phone hard reset because of OS failure)
  • re-sync folder on phone in the other way
  • restore the db from the synced folder

Additional optional feature would be to export the db to said custom path on every change, but that'd be the cherry on the cake.

Thanks in advance

Week start from?

Add an option to decide if you will start from sunday or monday the week ;)

[feature] Add notifications

It would be beneficial if the app could notify you about an upcoming period a configurable number of days in advance. The notification could have and action like "already started" which would cause the day to be recorded in the calendar.

Open navigation drawer with menu button

The new navigation drawer can only be opened using the "burger" menu on the screen. It should also be possible to open it using the menu button of the device, if there is one.

Improve translations using Crowdin

In the past @PanderMusubi @swmail @larjona @valerio-bozzolan @naofum @JuliaJ999 @NeoFrontier-Technologies @I-Spangler @Primokorn and others contributed translations - thank you!

However, after a couple of updates some translations got outdated and some new strings got added. I did some of the updates myself using dictionaries - which is not the ideal solution and in fact all translations except German should be checked for correctness.

To make the whole process a lot easier, I created a project on Crowdin, which is also used by other Open Source projects like KeePass2Android.

If you want to join, use the following URL (you can sign in there with your Github account as well): https://crwd.in/periodical

Set end of period

Hello,

Is it possible to end the menstruation period. While clicking on the calendar, cause it seems I only can start a period for the first entry. and other entries.

With friendly regards,

Mir.

App does not seem to predict well.

I have a problem, because the app doesn't predict correctly in my case. First, I though it was because there were some missing data, so I erased those regions of missing data and I just included the period where the data is complete. That simply didn't work. It doesn't predict correctly. I am attaching 4 months with data, so it is possible to observe the error.

periodicalsample-2018-07
periodicalsample-2018-08
periodicalsample-2018-09 jpg
periodicalsample-2018-10

[Feature request] add filter for list

The list with details is very long to scroll and find entries.
Is it possible to add a filter to the (export) list? E.g. Show me all entries, where i had a headache.

Thank.

Copyright violation

Hi @arnowelzel

I found this app on the Google Play Store. This guy just took your source code, added some ads in it and put it on the Store, without warning this is free software...

As you are the owner of the source code, feel free to open a request to google here to remove this copy from the Store, if it's your wish ;)

Don't forget to tell Google that:

  • The app is licensed under GNU GPL v3 license and this guy is violating it;
  • He is falsely claiming he made the app;
  • Provide some screenshots of your own app.

Ovulation day

There is an issue with the ovulation day.
Its is actually :
Predicted day of ovulation = First predicted start of next period - Length of luteal phase
(as it is said in #55)

But once users set the "real" day of the next cycle (period day), this day of ovulation should be updated to 1st day of next cycle - length of luteal phase.

This would not help for avoiding pregnancy, of course, since it is "too late", but it would really help understand what happened in the past cycle and link ovulation day with symptoms. Because some people have irregular cycles, that would be a huge help.

Detailed content description for labels missing in some cases

The calendar view contains two tables to make the "fling" effect possible. Unfortunately, in one of those tables the detailed content description for the day label at the top of the table is missing, so screen readers will only announce "mo", "tu" and so on.

Indicate deviation from average length

The current average is already display above the calendar. It should also be possible to see the last cycle length for comparison and also and indicator in the list for "above average" or "below average" including the amount of deviation.

Add feature graphic

Move away from Github?

Github will soon be a part of Microsoft and I'm not sure yet, if this is really the direction I want to go.

Therefore I will propably move with all my repositories away from Github. Stay tuned - I'll tell you more details here soon.

Add a birth control pill reminder feature

Would it be interesting/desirable for you, to add a configurable option to have a reminder each day during the non-menstruation period on a specific time of day? ("Pillenwecker")
This would be very helpful for people to remind them to take their birth control pill regularly. A standard reminder or alarm clock is not very helpful, because it reminds also during menstruation and will not sustain the reminder, so one can decide "I'll take it in ten minutes".
If it's interesting for this app, I'll volunteer to implement.

Add filter for maximum cycle length

If one pauses tracking for a while it may cause problems in the calculation when starting again after a couple of months due to the long time period.

It should be possible to set a filter how long a cycle can be before being ignored - e.g. if it is longer than 60 days the data will not be used any longer and the next cycle will start with the first two days which are less than 60 days away from each other.

Add local read-only calendar

Add local read-only calendar in a similar way that https://f-droid.org/repository/browse/?fdid=org.birthdayadapter does. Calender events that should be offered are three multi-day all-day events (red, green and blue). In preferences could be chosen by the user to show red, red+green, red+blue or red+green+blue, the last one is the default).

Only for the current and maximum the x past/last three cycli should be offered. This could also be configurable by the user. For example the number of cycli to offer in the calendar. 0 is none, 1 is only the current, 2 is the current plus previous, 3 is the current plus previous two (default) et cetera with a maximum of 12?

On each multi-day all-day event has only minimal information, preferably only a color and one word that is not obvious for other accidental viewers/glancers of the calendar view. A link (url) could be added in each event that opens the local app.

Implementing this direct view in calendar makes it easier to see for the users when what is to be expected or was in the past. Lots of code can be reused from Birthday Adapter.

[query] Fertility only or menstruation in general?

I want to track my menstrual symptoms, I am not interested in fertility/pregnancy/avoiding pregnancy. Does Periodical explicitly support this? If so, I'd suggested changing the description to something like:

“Periodical” is a calendar to track menstrual symptoms or calculate the fertile days according to Knaus-Ogino.

Dialog disappears on device rotation

When i perform these sequences of events, the dialog on screen disappears:

Sequence 1:

  1. Click on day item in calendar
  2. Orientation change

Sequence 2-3:

  1. Click on ...
  2. Click on:
    a. Restore
    b. Backup
  3. Orientation Change

Use Storage Access Framework for backup/restore

Beginning with Android 11 using external storage with "requestLegacyExternalStorage" for backup and restore is no longer possible. Therefore it is required to use the Storage Access Framework for backup and restore to shared memory or SD cards.

Using AppCompat

Hi, Would using AppCompat be better than Holo theme? i tied so but i got stuck in the ListActivity

german translation disappeared

Periodical doesn't show in the german translation anymore.
Android Settings are set to "Deutsch (Schweiz)".

Periodical 1.16

Fairphone2
Android 6.0.1

Style and Colors

Hello!!
I am a girl looking for an open source replacement to a propietary app to track my perios. There are only two period trackers in F-Droid and this is the best of the two so far, but I found that this calendar cannot be personalized at all, neither the color, the size of the boxes date or the format of the names of the week days (Mo, Tu, etc). Also, I have no idea what the zero with a bar and the arrows represent.

Variable period length

The current period length is 4 days. Some users would like to be abe to change this length with an application preference (where 4 is the default value but it can changed to any other value as well).

Spanish translation

Hello Arno
Thanks for working in Periodical.
I have completed a Spanish translation.
I added my name in the "about.html" file in the Spanish version, but not in the others (Pull request #12 ) nor in the English original.

Best regards

Add an option to choose the calculation method (Knaus-Ogino, Standard Days)

Some people prefer the use of "standard days" for calculation as an alternative to Knaus-Ogino. Standard days is only possible if the cycle length is between 26 and 32 days.

Using an option in the settings it will be possible to switch between the methods. The default will be "Knaus-Ogino" but one can change to "standard days" as well.

Technically this includes:

  • a new preference to choose the calculation method
  • extending the existing calculation to handle a specific method
  • an additional check for the cycle lengths to display a warning if "standard days" is used and the cycles are shorter than 26 days or longer than 32 days

Averge period length is not updated in Android 8.0.0

Though I entered more period series with differing lengths, the average value shown at the top right seems to be stuck with the first that I entered. Min/max is correct so far.

I haven't updated to higher 8.x versions of Android. It worked fine with CM14.1.

Statistics

It would be interesting to have a "statistics" option on the menu.

We currently have the max, min and average length of cycle displayed above the calendar.
It would be nice to visualize (in a separate window) more stats about cycles :

  • median (for irregular cycles this could make more sense than the mean),
  • standard deviation,
  • maybe other statistical indicators ?
  • maybe a nice plot of length of cycles over time/histogram of cycle length (this is more work)
  • data size (e.g. 10 cycles)

Optionally, users could choose "see statistics over the x previous cycles" to have some "recent" statistics.

Thanks!

[feature] Add more infos saved on the calendar

Hello,

I'm using your app (it's great btw) and I wondered if you could add some other labels which could be set by typing on a date.
e.G. Tap on 7 april > Opening of a list (mark as period started, mark as painful,...) > Tap on an item in the list > The day is marked.

You also could add way to create our own labels.

Thx for your time!

Later than calculated bleeding start dates cause issues

Android 9
Periodical 1.41

Lets assume the calculated start date is the 10th day of May. If my periode starts one day early I can mark the 9th of May and the tracker will move the end date accordingly. If my periode starts at the calculated date everything works out fine as well.

However if my periode starts one or two days after the calculated start date, the tracker gets confused:

If I mark the 12th of May as the start of my periode then the tracker will enforce the calculated start date (10th of May) and set my actual start date as the end date.

I hope my explanation is not too confusing. I can provide some pictures later if required.

Language switch

Hi,

Is it possible to add an option in "Preferences" in order to override the default language? It would be useful for people that prefer to have the app shown in a language different than the system's one (not a rare situation, IMHO).
Furthermore, the different translations of the app would be better advertised this way.

Thank you for your work!

Go directly to the details doesn't stick

Hi,

Steps to reproduce:

  1. Open the drawer
  2. Select Settings
  3. Check Go directly to the details
  4. Close the app
  5. Return to the settings. The option is unchecked.

Device: OnePlus 3T
Android Oreo 8.1
App version: 1.13 (F-Droid)

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.