Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 

README.md

URL Shorteners

What?

I want to learn more languages. Mostly, I'm interested in:

  • Learning the basics and best practices of the language
  • How to structure a project, and development workflow
  • Testing, and tools that help a TDD cycle
  • Deployability to Heroku

Requirements

This is what I think the example project needs:

  • Uses HTTP
  • Has some sort of write workload
  • Requires storage/state that can remain in-memory
  • Straightforward to test
  • Benchmarkable, if I choose to do that at some point

The URL Shortener

I need something interesting to build, but not too complex that it would take a long amount of time or result in immense frustration. I think a URL shortener is a good compromise of the requirements above.

API

GET /

302 Redirect to this page

GET /shorten?url=[url]

Create a new short URL, and respond with 201 Created along with the path to the token as the body (ex: /abc123).

Each shorten request will create a new token, regardless if it already exists as another token (mostly for simplicity and performance).

Ideally, we would URL-decode and validate the URL, but I'm not concerned with this to start. For now, it should respond with 400 Bad Request if the url is blank.

GET /:token

302 Redirect to the full URL, or 404 Not Found if the token was not found.

Implementations

In-progress

About

No description or website provided.

Topics

Resources

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.