{"id":17366845,"url":"https://github.com/EKarton-Archives/Google-Photos-Drive","last_synced_at":"2025-08-02T14:31:38.374Z","repository":{"id":257316092,"uuid":"854835791","full_name":"EKarton/Google-Photos-Drive","owner":"EKarton","description":"An Angular app to navigate through your Google Photos albums like a directory","archived":false,"fork":false,"pushed_at":"2024-10-27T07:13:47.000Z","size":27336,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-10-27T07:50:22.284Z","etag":null,"topics":["angular","google-photos","photos","rxjs","spa"],"latest_commit_sha":null,"homepage":"https://googlephotosdrive.netlify.app","language":"TypeScript","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/EKarton.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":"2024-09-09T21:21:16.000Z","updated_at":"2024-10-27T07:13:49.000Z","dependencies_parsed_at":"2024-10-22T02:56:46.444Z","dependency_job_id":null,"html_url":"https://github.com/EKarton/Google-Photos-Drive","commit_stats":{"total_commits":19,"total_committers":2,"mean_commits":9.5,"dds":"0.10526315789473684","last_synced_commit":"4345f2701d36a0e577650143bc3fc7ae0fffeed2"},"previous_names":["ekarton/google-photos-drive"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EKarton%2FGoogle-Photos-Drive","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EKarton%2FGoogle-Photos-Drive/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EKarton%2FGoogle-Photos-Drive/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EKarton%2FGoogle-Photos-Drive/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EKarton","download_url":"https://codeload.github.com/EKarton/Google-Photos-Drive/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228480229,"owners_count":17926895,"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":["angular","google-photos","photos","rxjs","spa"],"created_at":"2024-10-15T22:05:12.354Z","updated_at":"2025-08-02T14:31:31.351Z","avatar_url":"https://github.com/EKarton.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Google Photos Drive\n\n[![Netlify Status](https://api.netlify.com/api/v1/badges/8f40be5e-e519-445d-acde-ab30d2209d7b/deploy-status)](https://app.netlify.com/sites/googlephotosdrive/deploys)\n\n## Description\n\nDo you have a lot of albums on Google Photos that is hard to search through? Wish you can view your albums like a directory? Now you can! With this web app, you can view your albums and photos like a directory!\n\nIf your albums are named with a `/` (like `Archives/Photos/2010`, `Archives/Photos/2009`), you can navigate through your albums like a directory, starting with `Archives` at the top, and drilling down to `2010` or `2009`.\n\n## Features\n\n- [x] View your albums like a directory\n- [x] View all of your photos in an album\n- [ ] Add new nested albums\n- [ ] Rename existing albums\n- [ ] Add photos to an album\n- [ ] Remove photos from an album\n\n## Walkthrough\n\nRefer to this doc for a detailed walkthrough. However, here are a few screenshots:\n\n![image-1](./docs/home/images/image-1.png)\n\n![image-2](./docs/home/images/image-2.png)\n\n![image-3](./docs/home/images/image-3.png)\n\n## Setup / Getting Started\n\n1. Install dependencies by running `npm install`\n\n2. Next, create an OAuth2 client from Google Cloud for free by following the doc [here](./docs/setting-up-oauth2/README.md)\n\n3. Then, create a `.env` file in the root of this project, and add your client ID, client secrets, and the client redirect uri the file like this:\n\n    ```.env\n    NG_APP_GOOGLE_CLIENT_ID=\u003cYour Google OAuth2 Client ID\u003e\n    NG_APP_GOOGLE_CLIENT_SECRET=\u003cYour Google OAuth2 Client Secret\u003e\n    NG_APP_GOOGLE_REDIRECT_URL=\u003cYour Google OAuth2 Client Redirect Uri\u003e\n    ```\n\n4. Finally, run `ng serve`. You can access the webpage at \u003chttp://localhost:4200\u003e.\n\n## Useful Scripts for Local Development\n\n1. `ng serve`\n\n    Run the app on dev mode (any changes to files will get updated automatically)\n\n2. `ng generate`:\n\n    Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.\n\n3. `ng build`:\n\n    Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.\n\n4. `ng test --watch=false --no-progress --browsers=ChromeHeadless --code-coverage`:\n\n    Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io) with code coverage and without a browser.\n\n    To run only one test, use the `--src` flag. For instance, to run the `photos-section.component.spec.ts` test, run the following command:\n\n    ```bash\n    ng test --watch=false --no-progress --browsers=ChromeHeadless --code-coverage --src=src/app/pages/content-page/photos-section/__tests__/photos-section.component.spec.ts\n    ```\n\n## Usage\n\nPlease note that this project is used for educational purposes and is not intended to be used commercially. We are not liable for any damages/changes/lost data done by this project.\n\n## Credits\n\nEmilio Kartono, who made the entire project.\n\n## License\n\nThis project is protected under the GNU licence. Please refer to the [LICENSE](./LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FEKarton-Archives%2FGoogle-Photos-Drive","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FEKarton-Archives%2FGoogle-Photos-Drive","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FEKarton-Archives%2FGoogle-Photos-Drive/lists"}