Skip to content

double-slide/tinyapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TinyApp Project

TinyApp is a full stack web application built with Node and Express that allows users to shorten long URLs (similar to bit.ly). Users can register, login and create/edit/delete their links.

Final Product

"Login Page"

"URL Summary Page"

Dependencies

  • Node.js
  • Express
  • EJS
  • bcrypt
  • body-parser
  • cookie-session
  • morgan

Getting Started

  • Install all dependencies (using the npm install command).
  • Run the development web server using the npm start command.
  • With the server running, use your browser to navigate to localhost:8080/1
  • Note: the app will create and delete browser cookies during usage; if the server is restarted before the user logs out, cookies will need to be manually deleted from the browser for the next session2

Functionality

  • A new user can register their email and password, and are then auto-logged in 3
  • An existing user can use their email and password to login
  • Once logged in, users can
    • create new URL short links (tinyURLs)
    • view a table of their existing link
    • edit or delete existing links
  • With the server running, any short link (tinyURL) can be used to access the full URL address

Security

  • Passwords entered by a user are hashed
  • Browser cookies are encrypted, and are used by the app to verify user status (logged in or logged out)
  • Browser cookies are deleted upon logout
  • Only URLs owned (created) by a user are accessible to them for sharing, editing or deleting

Future Objectives

  1. Add database functionality to store user data and URLs
  2. Add logging functionality to when short URL links are used
  3. Build out error pages to provide more visual continuity for the user
  4. Add persistant data storage for user data

Footnotes

  1. Currently only set-up for local running. Check back in future for the fully-hosted version!

  2. If using Chrome browser, refer here for clearing cookies.

  3. User data is currently stored in short-term memory. Check back in future for persistant data functionality!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published