Documentation

CloudNest
Documentation

Everything you need to set up and use CloudNest — a client-side Google Drive dashboard that runs entirely in your browser. No servers, no backend, no data leaves your machine.

01

Getting Started

CloudNest is a free, open-source Google Drive dashboard that runs entirely in your browser. It connects to one or more Google Drive accounts via OAuth and lets you browse, upload, share, and manage files — all without any backend server.

The app is hosted on GitHub Pages as a static site. Your Google credentials and tokens stay in your browser and are never sent to any third-party server.

Prerequisites

Google AccountModern Browser (Chrome, Firefox, Edge, Safari)

That's it. No installations, no command-line tools, no server setup required.

NoteCloudNest is a client-side-only application. All API calls to Google Drive happen directly from your browser. Nothing is proxied through a server.
02

Setup Guide

Before you can use CloudNest, you need to create a Google Cloud project with OAuth credentials. This is a one-time setup that takes about 5 minutes. The in-app setup wizard walks you through the same steps below.

A

Create a Google Cloud Project

  1. 1Go to console.cloud.google.com and sign in with your Google account.
  2. 2Click the project dropdown at the top of the page and select New Project.
  3. 3Give it any name (e.g., "CloudNest") and click Create.
  4. 4Make sure the new project is selected in the project dropdown.
B

Enable the Google Drive API

  1. 1Navigate to APIs & Services → Library.
  2. 2Search for "Google Drive API".
  3. 3Click on it and press Enable.
C

Configure OAuth Consent Screen

  1. 1Go to APIs & Services → OAuth consent screen.
  2. 2Choose External as the user type and click Create.
  3. 3Fill in the required fields: app name, user support email, and developer contact email.
  4. 4On the Scopes step, click Add or Remove Scopes and add the https://www.googleapis.com/auth/drive scope.
  5. 5On the Test users step, add every Google account email you want to use with CloudNest. Click Add Users and enter one email per line.
  6. 6Click Save and Continue through the remaining steps.
ImportantWhile the app is in "Testing" status, only the test users you add can sign in. You can add up to 100 test users. To remove this limit, you would need to submit the app for Google verification.
D

Create an OAuth Client ID

  1. 1Go to APIs & Services → Credentials.
  2. 2Click Create Credentials → OAuth client ID.
  3. 3Select Web application as the application type.
  4. 4Under Authorized JavaScript origins, add: https://encryptioner.github.io
  5. 5Click Create. Copy the Client ID shown in the dialog.
TipYou only need the Client ID (ends in .apps.googleusercontent.com). The Client Secret is not needed since CloudNest uses the OAuth implicit flow in the browser.
E

Enter Client ID in CloudNest

  1. 1Open CloudNest in your browser. The setup wizard will appear on your first visit.
  2. 2Paste the Client ID you copied in the previous step into the input field.
  3. 3Click Save. The Client ID is stored in your browser's local storage.
F

Connect Your Google Account

  1. 1Click Connect Google Account to start the OAuth flow.
  2. 2Google will show the account chooser — select the account you want to connect.
  3. 3Approve the Drive permissions on the consent screen. You may see a "This app isn't verified" warning — click Advanced → Go to CloudNest to proceed.
  4. 4You'll be redirected back to CloudNest with full access to your Drive files.
NoteYou can connect multiple Google accounts. Each account adds its full storage quota (15 GB for free accounts) to your combined pool.
03

Using CloudNest

Once connected, CloudNest gives you a unified view of all your Google Drive accounts. Here's what you can do:

File Browsing
  • Navigate folders with breadcrumb trail
  • Grid and list view toggle
  • Sort by name, date, or size
  • Search across all accounts
  • Preview files with thumbnails
Upload & Organize
  • Drag-and-drop file upload
  • Upload to specific folders
  • Create new folders
  • Rename and move files
  • Automatic account routing by free space
Sharing
  • View files shared with you
  • Navigate into shared folders
  • Share files with others
  • Manage sharing permissions
  • Download shared files directly
Trash
  • View trashed files across all accounts
  • Restore files back to Drive
  • Permanently delete files
  • Search and sort trash items
Analytics
  • Storage usage per account
  • File type distribution charts
  • Upload activity over time
  • Storage breakdown by file type
Settings
  • Total storage pool summary
  • Per-account quota bars
  • Connect or disconnect accounts
  • Profile customization
04

How It Works

CloudNest is a fully client-side application built with Next.js and hosted as a static site on GitHub Pages. There is no backend server — every interaction with Google Drive happens directly from your browser using the Google Drive API.

Authentication

OAuth 2.0 implicit flow. Your browser obtains an access token directly from Google. The token is stored in browser memory/storage and never sent to any third-party server.

Storage Model

Your OAuth Client ID and app preferences are stored in the browser's localStorage. Access tokens are kept in session storage and cleared when you close the tab.

API Calls

All Google Drive API requests are made directly from your browser to Google's servers. CloudNest acts as a UI layer — no proxy, no middleware, no data relay.

ImportantAccess tokens expire after approximately 1 hour. When a token expires, CloudNest will prompt you to re-authenticate. This is a Google security measure and cannot be extended for client-side apps.

Privacy Guarantees

  • No server-side storageYour files, tokens, and credentials never touch any server other than Google's own APIs
  • No analytics or trackingCloudNest does not collect any usage data or telemetry
  • Open sourceThe entire codebase is publicly auditable on GitHub
  • Statically hostedThe app is a set of static files served via GitHub Pages — there is no server to intercept data
05

FAQ

Is my data safe?

Yes. CloudNest is a client-side application — your files and credentials never leave your browser. All API calls go directly from your browser to Google. The source code is fully open and auditable.

How many accounts can I connect?

There is no hard limit in CloudNest. However, while your Google Cloud project is in "Testing" mode, you can add up to 100 test users on the OAuth consent screen. Each connected account adds its full 15 GB free quota to the pool.

Why does my session expire after about an hour?

Google's OAuth access tokens for client-side apps are valid for approximately 1 hour. This is a security measure enforced by Google and cannot be changed. Simply re-authenticate when prompted.

Do I need to install anything?

No. CloudNest runs entirely in your browser. You just need a Google account and a modern web browser. The one-time setup involves creating a Google Cloud project to get OAuth credentials.

Can I use this with a Google Workspace account?

Yes. Add the Workspace email as a test user on the OAuth consent screen and connect it like any other Google account. Workspace accounts may have different storage quotas depending on your plan.

What happens if I clear my browser data?

Your stored Client ID and preferences will be removed. You will need to re-enter your Client ID and reconnect your accounts. Your actual files in Google Drive are not affected.

Is there a file size limit for uploads?

CloudNest uses the Google Drive API for uploads, which supports files up to 5 TB. However, browser-based uploads may be slower for very large files. Your available Drive storage quota also applies.

Can I self-host CloudNest?

Yes. Fork the repository, build the static site, and host it anywhere that serves static files. Update the Authorized JavaScript origins in your Google Cloud Console to match your hosting domain.

06

Troubleshooting

!"Error 400: redirect_uri_mismatch" during sign-in

The Authorized JavaScript origins in your Google Cloud Console do not include the domain CloudNest is running on. Go to APIs & Services → Credentials, edit your OAuth Client ID, and add https://encryptioner.github.io as an authorized origin. If self-hosting, add your own domain instead.

!"This app isn't verified" warning

This is normal for apps in Testing mode. Click "Advanced" and then "Go to [app name] (unsafe)" to proceed. Only test users added to the OAuth consent screen can sign in.

!"Access blocked: This app's request is invalid" error

This usually means the Google Drive API is not enabled for your project. Go to APIs & Services → Library, search for "Google Drive API", and click Enable.

!Google Drive API rate limit errors (403)

Google enforces rate limits on Drive API calls. If you see 403 errors, wait a few minutes and try again. Avoid rapid-fire operations like bulk deleting hundreds of files at once.

!"Storage quota exceeded" on upload

The target Google Drive account is full. Connect another Google account with available storage, or free up space by deleting files and emptying the trash in the original account.

!Files not showing after connecting account

Give it a moment for the initial file list to load. If files still do not appear, try disconnecting and reconnecting the account. Make sure the Google Drive API scope was properly approved during OAuth consent.

!Session keeps expiring too quickly

Access tokens last approximately 1 hour. This is a Google-enforced limit for client-side OAuth apps and cannot be extended. Browser extensions that aggressively clear cookies or storage may also cause premature session loss.

Ready to get started?

Open the dashboard and connect your Google Drive accounts.

CloudNest is free and open source. View on GitHub · Portfolio