{"id":24426157,"url":"https://github.com/drmboga/photolibrary","last_synced_at":"2026-04-10T02:03:21.446Z","repository":{"id":271699825,"uuid":"691110688","full_name":"DrMboga/PhotoLibrary","owner":"DrMboga","description":"A family photo library application","archived":false,"fork":false,"pushed_at":"2025-01-10T16:11:27.000Z","size":95979,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-20T11:16:04.753Z","etag":null,"topics":["dotnet","photo-gallery","postgresql","react","signalr"],"latest_commit_sha":null,"homepage":"","language":"C#","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/DrMboga.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}},"created_at":"2023-09-13T14:16:31.000Z","updated_at":"2025-01-10T16:11:31.000Z","dependencies_parsed_at":"2025-01-09T11:43:19.313Z","dependency_job_id":null,"html_url":"https://github.com/DrMboga/PhotoLibrary","commit_stats":null,"previous_names":["drmboga/photolibrary"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMboga%2FPhotoLibrary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMboga%2FPhotoLibrary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMboga%2FPhotoLibrary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DrMboga%2FPhotoLibrary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DrMboga","download_url":"https://codeload.github.com/DrMboga/PhotoLibrary/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243438015,"owners_count":20290863,"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":["dotnet","photo-gallery","postgresql","react","signalr"],"created_at":"2025-01-20T11:16:14.080Z","updated_at":"2025-12-29T03:03:00.266Z","avatar_url":"https://github.com/DrMboga.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PhotoLibrary\n\nA family photo library application.\nYour entire family's cherished memories, beautifully organized and easily accessible in one smart and intuitive application. Browse through generations of moments with ease, sort by date, event, or family member, and relive your most precious memories in a seamless and visually stunning way. PhotoLibrary is the perfect digital companion to ensure your family's photographic history is always at your fingertips, ready to be shared and cherished for generations to come.\n\n[Application specification](./docs/spec.md)\n[Raspberry Pi Deployment manual](./raspberry-deploy.md)\n\n# Useful resources:\n\n- [Hands on react tutorial](https://handsonreact.com/docs/)\n- [Redux toolkit tutorial](https://redux-toolkit.js.org/tutorials/overview)\n- [Keycloak js adapter](https://www.keycloak.org/docs/latest/securing_apps/index.html#_javascript_adapter)\n- [Material UI library](https://mui.com/material-ui/getting-started/)\n- [Material UI icons search](https://mui.com/material-ui/material-icons/)\n\n# Frontend environment values\n\nThere is a `.env` file in the root of frontend near the package.json. It is excluded from source control and contains some environment setting which used by frontend. Here is the example of such `.env` file:\n\n```\nREACT_APP_BACKEND_URL=https://localhost:7056\nREACT_APP_VERSION=$npm_package_version\n```\n\n# How to teach ML model to classify images using ML Net CLI\n\n1. Create a folder which contain a model data to learn. Each subfolder contains a set of images, and subfolder name will be used as a label name\n2. Install ML CLI\n\n```bash\ndotnet tool install --global mlnet-win-x64 --version 16.13.9\n```\n\n3. Train model. (A test console application will be generated)\n\n```bash\nmlnet image-classification --dataset \"..\\photo-library-lib\\ML\" --log-file-path \"..\\mlTests\" --name \"PhotoLibraryModel\"\n```\n\n# How to regenerate proto messages on backend and frontend.\n\nAfter making changes in \\*.proto file, run following:\n\n```bash\nprotoc --proto_path=protobuf --csharp_out=backend/PhotoLibraryBackend.Common --csharp_opt=base_namespace=PhotoLibraryBackend.Common media-info.proto\n```\n\n```bash\nprotoc --proto_path=protobuf --ts_out=frontend/src/model media-info.proto\n```\n\n# Install HEIC tools to host Linux OS\n\n```bash\nsudo apt install libheif-examples\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrmboga%2Fphotolibrary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrmboga%2Fphotolibrary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrmboga%2Fphotolibrary/lists"}