<commit_before># Cryptly
Url shortener for the [recently deceased](http://vignette3.wikia.nocookie.net/beetlejuice/images/c/cc/HandbookForTheRecentlyDeceased.jpg/revision/latest?cb=20110929030416).

## Technical Details
* Uses Express to handle HTTP requests and serve API endpoints.
* Uses MongoDB as our database
* Uses Mongoose as our ORM

## Goals
### Bronze
- View a form on the main page
- Input a log url into the form
- Create a short(er) url
- Add long url to the database

### Silver
- Redirect user to long url when using short url
- Add angular to application stack to handle routing

### Gold
- Add users that can see all their urls

## User Stories
- A user arrives on our main page and can see a form to input their url (bronze)
- A user can input their long url into the form and generate a shorter url (bronze)
- A user can use the shorter url to redirect to the long url (silver)
- A user can see all the short urls they've generated and the long forms (gold)

## Initial Planning
### Wireframe
![Wireframe](https://www.dropbox.com/s/t9mt7b9cunmxb56/cryptlywireframe.jpg?raw=1)

### Data Models
| url |
|-----|
| long_url |
| short_url |<commit_msg>Adds challenges and unsolved issues<commit_after># Cryptly
Url shortener for the [recently deceased](http://vignette3.wikia.nocookie.net/beetlejuice/images/c/cc/HandbookForTheRecentlyDeceased.jpg/revision/latest?cb=20110929030416).

## Technical Details
* Uses Express to handle HTTP requests and serve API endpoints.
* Uses MongoDB as our database
* Uses Mongoose as our ORM

## Goals
### Bronze
- View a form on the main page
- Input a log url into the form
- Create a short(er) url
- Add long url to the database

### Silver
- Redirect user to long url when using short url
- Add angular to application stack to handle routing

### Gold
- Add users that can see all their urls

## User Stories
- A user arrives on our main page and can see a form to input their url (bronze)
- A user can input their long url into the form and generate a shorter url (bronze)
- A user can use the shorter url to redirect to the long url (silver)
- A user can see all the short urls they've generated and the long forms (gold)

## Challenges
- Determining who would work on which part of the project. Solution: Jeff/Melissa paired on Express set up, Isaac worked on db set up, and Maureen on public and views set up. When domains crossed, we would pair to connect our pieces together. (Example: Jeff/Isaac connecting the db to express)
- Testing while portions unfinished. Solution: Dummy data.
- Connecting the database. Solution: Pairing. Group effort.

## Unsolved issues
None so far.

## Initial Planning
### Wireframe
![Wireframe](https://www.dropbox.com/s/t9mt7b9cunmxb56/cryptlywireframe.jpg?raw=1)

### Data Models
| url |
|-----|
| long_url |
| short_url |
{'fraction_non_alphanumeric': 0.08271210507632233, 'fraction_numerical': 0.014909478168264111, 'mean_word_length': 4.059245960502693, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6731328', 'n_tokens_mistral': 890, 'n_tokens_neox': 836, 'n_words': 385}