{"id":15131028,"url":"https://github.com/etar-group/etar-calendar","last_synced_at":"2026-04-18T00:01:33.358Z","repository":{"id":38015548,"uuid":"41903441","full_name":"Etar-Group/Etar-Calendar","owner":"Etar-Group","description":"Android open source calendar","archived":false,"fork":false,"pushed_at":"2026-04-12T11:32:12.000Z","size":43401,"stargazers_count":2482,"open_issues_count":391,"forks_count":426,"subscribers_count":49,"default_branch":"master","last_synced_at":"2026-04-12T13:06:55.796Z","etag":null,"topics":["android","calendar","material-design"],"latest_commit_sha":null,"homepage":"https://f-droid.org/packages/ws.xsoh.etar/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Etar-Group.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2015-09-04T07:33:25.000Z","updated_at":"2026-04-12T11:32:20.000Z","dependencies_parsed_at":"2023-02-19T09:45:41.200Z","dependency_job_id":null,"html_url":"https://github.com/Etar-Group/Etar-Calendar","commit_stats":{"total_commits":3567,"total_committers":382,"mean_commits":9.337696335078535,"dds":0.8937482478273059,"last_synced_commit":"fc8dd496e31f953aa15d1a4a688c9e9027fe4b35"},"previous_names":[],"tags_count":573,"template":false,"template_full_name":null,"purl":"pkg:github/Etar-Group/Etar-Calendar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Etar-Group%2FEtar-Calendar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Etar-Group%2FEtar-Calendar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Etar-Group%2FEtar-Calendar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Etar-Group%2FEtar-Calendar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Etar-Group","download_url":"https://codeload.github.com/Etar-Group/Etar-Calendar/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Etar-Group%2FEtar-Calendar/sbom","scorecard":{"id":46868,"data":{"date":"2025-08-11","repo":{"name":"github.com/Etar-Group/Etar-Calendar","commit":"377fe3878ced906eaf4e44a6a580f4c7c135fb76"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.7,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 7 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":8,"reason":"Found 9/11 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/android.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/android.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/Etar-Group/Etar-Calendar/android.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/android.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/Etar-Group/Etar-Calendar/android.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/android.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/Etar-Group/Etar-Calendar/android.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/android.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/Etar-Group/Etar-Calendar/android.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/android.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/Etar-Group/Etar-Calendar/android.yml/master?enable=pin","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 28 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-14T22:57:09.767Z","repository_id":38015548,"created_at":"2025-08-14T22:57:09.768Z","updated_at":"2025-08-14T22:57:09.768Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31950891,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-17T17:29:20.459Z","status":"ssl_error","status_checked_at":"2026-04-17T17:28:47.801Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","calendar","material-design"],"created_at":"2024-09-26T03:21:24.740Z","updated_at":"2026-04-18T00:01:33.245Z","avatar_url":"https://github.com/Etar-Group.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Etar Calendar\nEtar (from Arabic:  `إِيتَار`)  is an open source material designed calendar made for everyone!\n\n[\u003cimg src=\"metadata/en_fdroid.png\" height=\"60\" alt=\"Get it on F-Droid\"\u003e](https://f-droid.org/packages/ws.xsoh.etar/)[\u003cimg src=\"metadata/en_google_play.png\" height=\"60\" alt=\"Get it on Google Play\"\u003e](https://play.google.com/store/apps/details?id=ws.xsoh.etar)\n\n![Etar Calendar](metadata/animation.gif)\n\n## Why?\nWell, I wanted a simple, material designed and state of the art open source calendar that anyone can make better.\n\n## Special thanks\n\nThe application is an enhanced version of AOSP Calendar. Without the help of\n[Free Software for Android](https://github.com/Free-Software-for-Android/Standalone-Calendar) team, \nthis app would be just a dream. So thanks to them!\n\n## Features\n- Month view.\n- Week, day and agenda view.\n- Uses Android calendar storage to show all synchronized calendars.\n- Material Design.\n- Dark and light theme.\n- Support offline calendar.\n- Agenda widget.\n- Support sharing calendars via ICS and the ability to import/export from SD card.\n- Multilingual UI.\n\n## How to use Etar\nStore your calendar on the phone only:\n  - Create an offline calendar.\n\nSync your calendar to a server:\n  - A cloud-synched calendar could be a google calendar, but you can also use\n  any other public Caldav-server or even host your own (which would be the\n  only way to keep full control over your data and still have ONE calendar\n  usable from different devices.) To sync such a calendar to some server you\n  need yet another app, e. g. DAVx5. That’s necessary because a Caldav client\n  isn't included in Etar.\n\n### Technical explanation\nOn Android there are \"Calendar providers\". These can be calendars that are\nsynchronized with a cloud service or local calendars. Basically any app\ncould provide a calendar. Those \"provided\" calendars can be used by Etar.\nYou can even configure in Etar which ones are to be shown and when adding\nan event to which calendar it should be added.\n\n### Important permissions Etar requires\n- READ_EXTERNAL_STORAGE \u0026 WRITE_EXTERNAL_STORAGE  \n-\u003eimport and export ics calendar files  \n- READ_CONTACTS(optional)  \n  Is queried the first time an appointment is created and can be rejected. But then search and location suggestions no longer work.\n-\u003eallows search and location suggestions when adding guests to an event  \n- READ_CALENDAR \u0026 WRITE_CALENDAR  \n-\u003eread and create calendar events\n\n### Known issues with the ICS import feature\n\nEtar can import ICS files, for instance, received in invitation emails.\nThe import feature is unstable and has a list of known bugs.\nRefer to https://github.com/Etar-Group/Etar-Calendar/pull/653 as a reference to those bugs.\nUse it with caution, especially, if your calendar provider automatically sends out invitation emails.\n\n## Contribute\n### Translations\nInterested in helping to translate Etar? Contribute here: https://hosted.weblate.org/projects/etar-calendar/strings/\n\n##### Google Play app description:\nYou can update/add your own language and all artwork files [here](metadata)\n\n### Build instructions\nInstall and extract Android SDK command line tools.\n```\ntools/bin/sdkmanager platform-tools\nexport ANDROID_HOME=/path/to/android-sdk/\ngradle :app:assembleDebug\n```\n## License\n\nCopyright (c) 2005-2013, The Android Open Source Project\n\nCopyright (c) 2013, Dominik Schürmann\n\nCopyright (c) 2015-, The Etar Project\n\nLicensed under the GPLv3: https://www.gnu.org/licenses/gpl-3.0.html\nExcept where otherwise noted.\n\nGoogle Play and the Google Play logo are trademarks of Google Inc.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetar-group%2Fetar-calendar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fetar-group%2Fetar-calendar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetar-group%2Fetar-calendar/lists"}