https://github.com/EKarton-Archives/Google-Photos-Drive
An Angular app to navigate through your Google Photos albums like a directory
https://github.com/EKarton-Archives/Google-Photos-Drive
angular google-photos photos rxjs spa
Last synced: 11 months ago
JSON representation
An Angular app to navigate through your Google Photos albums like a directory
- Host: GitHub
- URL: https://github.com/EKarton-Archives/Google-Photos-Drive
- Owner: EKarton
- License: gpl-3.0
- Created: 2024-09-09T21:21:16.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-27T07:13:47.000Z (over 1 year ago)
- Last Synced: 2024-10-27T07:50:22.284Z (over 1 year ago)
- Topics: angular, google-photos, photos, rxjs, spa
- Language: TypeScript
- Homepage: https://googlephotosdrive.netlify.app
- Size: 26.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Google Photos Drive
[](https://app.netlify.com/sites/googlephotosdrive/deploys)
## Description
Do 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!
If 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`.
## Features
- [x] View your albums like a directory
- [x] View all of your photos in an album
- [ ] Add new nested albums
- [ ] Rename existing albums
- [ ] Add photos to an album
- [ ] Remove photos from an album
## Walkthrough
Refer to this doc for a detailed walkthrough. However, here are a few screenshots:



## Setup / Getting Started
1. Install dependencies by running `npm install`
2. Next, create an OAuth2 client from Google Cloud for free by following the doc [here](./docs/setting-up-oauth2/README.md)
3. 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:
```.env
NG_APP_GOOGLE_CLIENT_ID=
NG_APP_GOOGLE_CLIENT_SECRET=
NG_APP_GOOGLE_REDIRECT_URL=
```
4. Finally, run `ng serve`. You can access the webpage at .
## Useful Scripts for Local Development
1. `ng serve`
Run the app on dev mode (any changes to files will get updated automatically)
2. `ng generate`:
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`.
3. `ng build`:
Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.
4. `ng test --watch=false --no-progress --browsers=ChromeHeadless --code-coverage`:
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io) with code coverage and without a browser.
To run only one test, use the `--src` flag. For instance, to run the `photos-section.component.spec.ts` test, run the following command:
```bash
ng test --watch=false --no-progress --browsers=ChromeHeadless --code-coverage --src=src/app/pages/content-page/photos-section/__tests__/photos-section.component.spec.ts
```
## Usage
Please 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.
## Credits
Emilio Kartono, who made the entire project.
## License
This project is protected under the GNU licence. Please refer to the [LICENSE](./LICENSE) for more information.