This is an open source project to handle Google Drive files as a backend server. This project aims to provide generic endpoints to handle Google Drive files fully writen in Rust [WIP]
When working with Google Drive APIs its very important to minimize the number of API calls due to rate-limiting as well as network overhead. FileSTiK tries to minimize all network overhead and can deliver responses faster than Google Drive API (in some cases) as it serves a cached response.
- Rust Installed
- Cargo Installed
- GCP account
- GhostScript Installed
- Redis
- Clone the repo
- In the GCP console create a
web
OAuth Client
in the credentials dashboard and store the json as a string in the environment.
This should look something like this.
export OAUTH_CREDENTIALS='{
"web": {
"client_id": "...",
"project_id": "...",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_secret": "...",
"redirect_uris": [
"...",
"http://127.0.0.1:61684"
],
"javascript_origins": [
...
]
}
}
'
:::note
Also note that http://127.0.0.1:61684
should be whitelisted by the OAuth client
in the redirect_uris
in order to authorize the app
:::
- Start the redis server and set your redis uri to
REDIS_URI
otherwise default toredis://localhost:6379"
will be used. - Thats it. Now just run
cargo run
Your web server should get started at PORT: 8000
[WIP]