{"id":29422110,"url":"https://github.com/darliaro/lumairej","last_synced_at":"2025-07-19T08:10:01.516Z","repository":{"id":304062667,"uuid":"1017178882","full_name":"darliaro/LumaireJ","owner":"darliaro","description":"Emotional journaling app, written in Python with love 🤍","archived":false,"fork":false,"pushed_at":"2025-07-18T06:29:09.000Z","size":59,"stargazers_count":0,"open_issues_count":6,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-18T09:43:00.274Z","etag":null,"topics":["emotional-awareness","fastapi","htmx","journaling","mental-health","mood-tracker","open-source","pdm","personal-development","playwright","postgresql","pytest","python","self-care"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/darliaro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2025-07-10T06:33:13.000Z","updated_at":"2025-07-18T06:29:12.000Z","dependencies_parsed_at":"2025-07-18T07:31:46.414Z","dependency_job_id":"edc51484-a51a-4c2e-8c28-e3cd227f2852","html_url":"https://github.com/darliaro/LumaireJ","commit_stats":null,"previous_names":["darliaro/lumairej"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/darliaro/LumaireJ","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darliaro%2FLumaireJ","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darliaro%2FLumaireJ/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darliaro%2FLumaireJ/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darliaro%2FLumaireJ/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/darliaro","download_url":"https://codeload.github.com/darliaro/LumaireJ/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darliaro%2FLumaireJ/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265904331,"owners_count":23846675,"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":["emotional-awareness","fastapi","htmx","journaling","mental-health","mood-tracker","open-source","pdm","personal-development","playwright","postgresql","pytest","python","self-care"],"created_at":"2025-07-12T04:01:52.109Z","updated_at":"2025-07-19T08:10:01.506Z","avatar_url":"https://github.com/darliaro.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Python 3.10+](https://img.shields.io/badge/Python-3.13+-black.svg)](https://www.python.org/)\n[![HTMX](https://img.shields.io/badge/HTMX-purple?logo=html5)](https://htmx.org/)\n[![FastAPI](https://img.shields.io/badge/FastAPI-teal?logo=fastapi)](https://fastapi.tiangolo.com/)\n[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-green?logo=postgresql)](https://www.postgresql.org/)\n[![PyTest](https://img.shields.io/badge/PyTest-blue?logo=pytest)](https://pytest.org/)\n[![Playwright](https://img.shields.io/badge/Playwright-blueviolet?logo=playwright)](https://playwright.dev/)\n[![Allure TestOps](https://img.shields.io/badge/Allure-violet?logo=allure)](https://docs.qameta.io/allure-testops/)\n\n# LumaireJ 🤍✨\n#### A journaling app for emotional self-awareness and reflection\n\n---\n\n## Features (MVP)\n- Daily emotion \u0026 mood journaling with optional tags/triggers\n- Soft affirmations and prompts on entry or via Telegram bot (TBD)\n- View, edit, and delete past journal entries\n- Visualization of emotional trends using charts\n- Calm, minimal UI with FastAPI, Jinja2 \u0026 HTMX\n- Testable and maintainable codebase with CI-friendly structure\n\n---\n\n## Initial Setup (Using PDM)\n- [ ] Install [Python](https://www.python.org/downloads/) (version 3.13+ recommended)\n- [ ] Install [PDM](https://pdm-project.org/latest/#recommended-installation-method):\n  ```bash\n  curl -sSL https://pdm-project.org/install-pdm.py | python3\n  ```\n- [ ] Initialize the project:\n  ```bash\n  pdm init\n  ```\n- [ ] Install project dependencies:\n  ```bash\n  pdm install\n  ```\n- [ ] Set up pre-commit hooks (optional):\n  ```bash\n  pdm add pre-commit --dev\n  pre-commit install -f\n  ```\n- [ ] Create `.env` file for environment variables:\n  ```bash\n  touch .env\n  ```\n\n---\n\n## Running the App Locally\nStart the FastAPI server with:\n\n```bash\npdm run uvicorn app.main:app --reload\n```\n\nThen open your browser at:  \n[http://127.0.0.1:8000](http://127.0.0.1:8000)\n\n---\n\n## Running Tests\n\n### Through Terminal\n- Basic Run:\n  ```bash\n  pdm run pytest -sv tests/path_to_file_or_directory\n  ```\n- Run with Browser UI / Headed:\n  ```bash\n  pdm run pytest -sv --headed tests/path_to_file_or_directory\n  ```\n- Debug Run (slowed interactions):\n  ```bash\n  pdm run pytest -sv --headed --slowmo 500 tests/path_to_file_or_directory\n  ```\n\n### Generate Allure Reports\n```bash\npdm run pytest -sv --alluredir=allure-results tests/path_to_file_or_directory\nallure generate allure-results --clean -o allure-report\nallure open allure-report\n```\n\n---\n\n## Running Tests in GitHub Actions\n1. Go to [GitHub Actions](https://github.com/darliaro/lumairej/actions)\n2. Select the desired workflow (e.g., UI Tests)\n3. Click **Run workflow**\n4. Choose branch and trigger the run\n\n---\n\n## Code Quality \u0026 Formatting with [ruff](https://github.com/astral-sh/ruff)\n- Check Code Quality:\n  ```bash\n  pdm run ruff check path_to_file_or_folder\n  ```\n- Autofix Issues:\n  ```bash\n  pdm run ruff check path_to_file_or_folder --fix\n  ```\n- Format Code:\n  ```bash\n  pdm run ruff format path_to_file_or_folder --fix\n  ```\n\n---\n\n## Tips for Testing\n- Use `conftest.py` in test directories to define reusable fixtures/hooks\n- Use `--headed` and `--slowmo` for visual debugging during UI test runs\n- Maintain small, isolated test units alongside high-level E2E flows\n\n---\n\n## Future Enhancements\n- Telegram bot integration for check-ins and affirmations\n- Advanced visualizations of emotion trends\n- User authentication (optional)\n- Deployment with Docker","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarliaro%2Flumairej","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdarliaro%2Flumairej","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarliaro%2Flumairej/lists"}