{"id":13688434,"url":"https://github.com/srid/felicity","last_synced_at":"2025-04-04T11:42:54.835Z","repository":{"id":198899604,"uuid":"701772819","full_name":"srid/felicity","owner":"srid","description":"A dumb mood tracker app","archived":false,"fork":false,"pushed_at":"2023-11-04T18:12:47.000Z","size":525,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-09T21:31:51.292Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/srid.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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}},"created_at":"2023-10-07T14:10:30.000Z","updated_at":"2024-04-27T06:13:12.000Z","dependencies_parsed_at":"2024-01-17T06:17:18.539Z","dependency_job_id":null,"html_url":"https://github.com/srid/felicity","commit_stats":null,"previous_names":["srid/felicity"],"tags_count":1,"template":false,"template_full_name":"srid/dioxus-desktop-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srid%2Ffelicity","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srid%2Ffelicity/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srid%2Ffelicity/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/srid%2Ffelicity/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/srid","download_url":"https://codeload.github.com/srid/felicity/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247174377,"owners_count":20896074,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-08-02T15:01:13.754Z","updated_at":"2025-04-04T11:42:54.813Z","avatar_url":"https://github.com/srid.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# felicity\n\nFelicity is a extremely simple mood tracker app with the goal of ultimately *becoming useless* to the user. It is a work-in-progress and is **not ready for general use** yet.\n\nThe basic idea is to track, as often as possible, whether one is [feeling good](https://srid.ca/feeling-good) or not (nothing more complicated than that) over time, and thereon effectuate [a beneficial modification to one's habitual mood](https://srid.ca/affective-awareness) which modification when perfected (wherein one is feeling good 99% of the time alive) leads to the app becoming useless.\n\nWIP\n\n- [x] Render moods list\n- [x] Ability to enter moods in UI\n- [ ] Mood 'calendar' view\n    - Clicking the day should toggle the list below the calendar month\n- [ ] Make it a menubar app\n    - The meubar icon can change over time to remind me to register the current mood. As well as show the general 'climate' of the mood of the day/week.\n- Recording frequency\n    - Must register at least every hour, from ~9am to ~9pm\n        - Count the hours which received moods\n    - [x] Remindes \u0026 Nudgers\n        - Figure out UX to nudge the user to enter mood on a consistent basis such that the calendar view statistics are meaningful.\n- Mood progression\n    1. Record every day at regular frequency (see above)\n    1. Achieve days of 100% feeling good\n    1. Achieve day *streaks* of feeling good\n        - Collapse the view to show streaks as single entry (only expand if registering feeling-bad again)\n    1. Achieve a week of 100% feeling good\n        - Give 'levels' to such streaks.\n\nBefore public release,\n\n- [x] Auto-create `~/.felicity.db` if it does not exist\n\n## Getting Starred\n\nIn the `nix develop` shell, run:\n\n```\njust watch\n```\n\n### Creating macOS app bundle\n\n```\njust bundle\n```\n\n### Running via Nix\n\n(Broken on macOS: https://github.com/srid/felicity/issues/2)\n\n```\nnix run github:srid/felicity\n# Or just `nix run` in the project directory\n```\n\n## Bootstrapping\n\nIn order to utilize [sqlx's compile-time verification](https://github.com/launchbadge/sqlx#compile-time-verification) offline in Nix, the following was run on the seed db to initialize the sqlx query metadata:\n\n```\ncargo sqlx prepare --database-url sqlite://$HOME/.felicity.db\n```\n\nThis creates a `.sqlx` directory that is then checked into git.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrid%2Ffelicity","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsrid%2Ffelicity","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrid%2Ffelicity/lists"}