Skip to content

nasedil/seven-calendar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My own calendar system

Work is in the earliest stage of development.

Explanation

This library provides tools to work with the person-centric calendar (which I currently call 777-calendar) that I have invented to use for various purposes and for fun. The tools help to easily convert dates between Gregorian and 777-calendar.

The main ideas of this calendar are:

  • It's epoch is a person's birth date, and year changes happen on birthday.
  • It has 7 months (currently called meriods), every such meriod has 7 weeks, and every week has 7 days.
  • These 49 weeks of the calendar share days of the week with the Gregorian date; remaining 22 or 23 days of the year are distributed in the special meriods 0 and 8, before and after (inclusive) the birthday respectively. In total these 2 meriods contain 3 or 4 weeks so that Gregarian weeks and 777-calendar weeks are still in sync. That means one year in 777-calendar could have 364 or 371 days (out of 28 years, 5 years will have 371 days and 23 years will have 364 days).
  • The date is written as <year>.<meriod>.<week>.<day> (such as 29.2.5.1) or as <year>.<meriod>.<day> (such as 29.8.3, for days near birthday).

Exact calendar rules are described in sevencal/sevencalendar.py.

TODO list:

The library

  • Support both python 2 and python 3 and test both with test script
  • have better tests
  • Add link to calendar explanation
  • add alternative str methods
  • add coding guidelines
  • add development notes

Other stuff

  • make library in JavaScript (well, initially thought of making this is JavaScript, python version is just a coincidence, because I was too lazy for couple of years and forgot)
  • Add links to projects related to the calendar

Short notes

Sometimes I use a system to write a date with origin as my date of birth. So I write this software to automatically convert dates to/from my calendar.

License

The project is licensed with the MIT license, you can find it in the LICENSE file.

Version history

v0.0.3 -- 2018-07-10

  • Add more tests.
  • Add more examples in explanation.
  • Add offset argument in command-line tool.

v0.0.2 -- 2018-07-06

  • Add method to parse from datetime and use it in command-line tool.

v0.0.1 -- 2018-07-01 -- First versioned version.

  • Add command-line options in tool for date to parse and birth date.

About

My own calendar system

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages