Skip to content
This repository has been archived by the owner on Oct 23, 2019. It is now read-only.

Latest commit

 

History

History
51 lines (33 loc) · 1.87 KB

ROADMAP.md

File metadata and controls

51 lines (33 loc) · 1.87 KB

Roadmap

[x] Project definition

Build an URL shortener based on the following user stories:

  • Anonymous URL shortening As an anonymous user, I want to get a shorter URL for an URL of my choice so that I can share it with other people.
  • Authenticated URL list As a logged in user, I want to see all the URLs I have previously shortened so that I can share them again.
  • Authenticated URL removal As a logged in user, I want to delete an existing shortened URL so that people cannot access it anymore.

Relevant resources:

[x] Frontend and backend app setup.

Relevant resources:

Anonymous URL shortening

  • Create basic URL form
  • Tie "Submit" button to a fetch() call.
  • Implement basic form of the endpoint in backend.
  • Add CORS.
  • Creation of link hashes: hashids.
  • Storage of links: Bocadillo + orm.
  • Display link hash in frontend.
  • Redirect to original URL when accessing hash.

Better styling

  • Add Bulma.
  • Refactor components: Hero, Form, Result. Use Bulma styles.
  • Add copy-to-clipboard with clipboard.js.
  • Change background color on success (Provide/inject)

Authenticated URL view

TODO

Authenticated URL removal

TODO

Ideas for future development

  • Allow users to provide a custom URL hash (e.g. my-url) and check for its availability.