All Projects → ahmetb → Sheets Url Shortener

ahmetb / Sheets Url Shortener

Licence: apache-2.0
A simple short URL redirect service built on top of Google Sheets, and runs for cheap on Google Cloud Run serverless.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Sheets Url Shortener

Gh Pages Url Shortener
Minimal URL shortener that can be entirely hosted on GitHub pages.
Stars: ✭ 924 (+938.2%)
Mutual labels:  url-shortener, serverless
Azurlshortener
An simple and easy Url Shortener
Stars: ✭ 247 (+177.53%)
Mutual labels:  url-shortener, serverless
Shlink Web Client
A React-based client application for Shlink
Stars: ✭ 81 (-8.99%)
Mutual labels:  url-shortener
Serverless Openfaas
An OpenFaaS plugin for the Serverless Inc framework (work in progress)
Stars: ✭ 87 (-2.25%)
Mutual labels:  serverless
Beyond.ts
Stars: ✭ 84 (-5.62%)
Mutual labels:  serverless
Keynuker
🔐💥 KeyNuker - nuke AWS keys accidentally leaked to Github
Stars: ✭ 82 (-7.87%)
Mutual labels:  serverless
Historical
A serverless, event-driven AWS configuration collection service with configuration versioning.
Stars: ✭ 85 (-4.49%)
Mutual labels:  serverless
Serverless Boilerplate
Serverless project template
Stars: ✭ 80 (-10.11%)
Mutual labels:  serverless
Azurefunctionsintroduction
Sample Code for Azure Functions
Stars: ✭ 88 (-1.12%)
Mutual labels:  serverless
Comingornot
A perfect event organizer
Stars: ✭ 83 (-6.74%)
Mutual labels:  serverless
Aws Multi Account Viewer
Serverless app designed for any customer with two or more accounts to view resources across accounts/regions in simple single pane of glass website
Stars: ✭ 87 (-2.25%)
Mutual labels:  serverless
Examples
Serverless Examples – A collection of boilerplates and examples of serverless architectures built with the Serverless Framework on AWS Lambda, Microsoft Azure, Google Cloud Functions, and more.
Stars: ✭ 9,743 (+10847.19%)
Mutual labels:  serverless
Docker In Aws Lambda
Run Docker containers in AWS Lambda
Stars: ✭ 82 (-7.87%)
Mutual labels:  serverless
Mu
Framework to Run General-Purpose Parallel Computations on AWS Lambda
Stars: ✭ 85 (-4.49%)
Mutual labels:  serverless
Awesome Zeit
The best resources related to ZEIT
Stars: ✭ 1,242 (+1295.51%)
Mutual labels:  serverless
Prestashop Clean Urls
Prestashop module. This override module allows to remove IDs from URLs
Stars: ✭ 87 (-2.25%)
Mutual labels:  url-shortener
Write With Me
Real-time Collaborative Markdown Editor
Stars: ✭ 81 (-8.99%)
Mutual labels:  serverless
Python Lambda
A toolkit for developing and deploying serverless Python code in AWS Lambda.
Stars: ✭ 1,247 (+1301.12%)
Mutual labels:  serverless
Serverless Scriptable Plugin
Adding script support to Serverless 1.x which enables you to customize Serverless behavior without writing a plugin.
Stars: ✭ 84 (-5.62%)
Mutual labels:  serverless
Aws Serverless Airline Booking
Airline Booking is a sample web application that provides Flight Search, Flight Payment, Flight Booking and Loyalty points including end-to-end testing, GraphQL and CI/CD. This web application was the theme of Build on Serverless Season 2 on AWS Twitch running from April 24th until end of August in 2019.
Stars: ✭ 1,290 (+1349.44%)
Mutual labels:  serverless

URL Shortener with a Google Spreadsheet 📑

This is a simple web server that can redirect a pre-defined set of URLs in Google Sheets. All you need to do is define a Google Sheets like the following, and deploy a simple app just by clicking around.

shortcut url
code https://github.com/ahmetb/
book https://docs.google.com/forms/d/e/1FAIpQLSefArw8NWiha6YCaoTccGZmo4QvuDYY4s87Y_tjW6h4al_4NQ/viewform
yt https://www.youtube.com/watch?v=dQw4w9WgXcQ

Costs: This can be deployed to Google Cloud Run and run for free thanks to generous free tier (+Google Sheets is free with a Gmail account as well).

This redirector also supports path additions on top of base URLs, for example, with the sheet row:

shortcut url
gcp https://github.com/GoogleCloudPlatform

The go.ahmet.dev/gcp/golang-samples will be redirected to https://github.com/GoogleCloudPlatform/golang-samples.

Setup

  1. Create a new Google Sheet: https://sheets.new.

  2. Add two columns, first column is the "shortcut", the second column is the "url" to redirect the user. (see example)

  3. Save the ID of your Sheet from the URL (it’s a random string that looks like 1SMeoyesCaGHRlYdGj9VyqD-qhXtab1jrcgHZ0irvNDs).

  4. Click to deploy to Cloud Run, and provide your spreadsheet ID while deploying:

    Run on Google Cloud

  5. Go to https://console.cloud.google.com/run, click on sheets-url-shortener service. Find the email address written in the "Service Account" section.

  6. Go to your Google Sheets, click "Share" and give this email address "Viewer" access on your sheet.

  7. (Optional) If you want to use a custom domain like go.ahmet.dev, go to https://console.cloud.google.com/run/domains and map the sheets-url-shortener to your custom domain!

Advanced Configuration

This server can be configured with these following parameters:

Environment Variable Description
SHEET_NAME (optional) If you have multiple sheets in a spreadsheet, specify the sheet name.
CACHE_TTL (optional) how frequently the spreadsheet must be reloaded (default: 5s)
HOME_REDIRECT (optional) which url to redirect when root url (/) is visited
LISTEN_ADDR (optional) which network address to listen on (default "" which means all interfaces)
PORT (optional) http port to listen on (default 8080).

Disclaimer

This is not an official Google project. It's distributed as-is under Apache 2.0 License. See LICENSE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].