Skip to content

Epicodus Team Week Project: Untranslatables - An entertaining and edifying web app that presents words or phrases that are impossible to translate | Uses the Mean Stack: MongoDB, Express.js, Angular, and Node.js

Notifications You must be signed in to change notification settings

yasskin/untranslatables

Repository files navigation

Untranslatable Words

EPICODUS TEAM WEEK PROJECT

This is an Epicodus [http://www.epicodus.com/] student group project

By Maarja Laineste, Caleb Stokka, Sky Rousse, Noah Yasskin

Description

Untranslatable Words - An entertaining and edifying web app that aesthetically presents words or phrases that are impossible to translate.

The Web App is hosted live on Heroku: http://untranslatables.herokuapp.com/

The Book of Life explains the therapeutic value of untranslatable Words: Untranslatable Words http://www.thebookoflife.org/untranslatable-words/ There are lots of moods, needs and feelings that our own language has not yet properly pinned down. The perfect word – even if it comes from abroad – can help us to explain ourselves to other people – and its existence quietly reassures us (and everyone else) that a state of mind is not really rare, just rarely spoken of. The right word brings dignity to our troubles, and helps us identify more accurately what we really like or find annoying.

Untranslatables will enrich your vocabulary, open your eyes, and expand your mind.

Requirement: Participation in creating and presenting a project, and collaborating effectively with teammates.

Component Action Parent
AppComponent holds data --
*word-list List AppComponent
*word-input New AppComponent
*Component Edit AppComponent
*Component Delete AppComponent

Database

Table Row Value
words name string
definition string
language string
category string
partOfSpeech string
sentence string
color string
link string
font string
image string

User Stories

MVP Minimum Viable Product

The MVP for Untranslatables should include:

  • At least a dozen untranslatable Words
  • A definition of each word with its country of origin
  • A complementary image to accompany each word
  • An easy way to scroll through or view
  • An admin section that is hidden to site users that allows the admin to create, update, and destroy words and images
  • A way to sort words

App User

  • As a user of the app:

  • I want to be entertained in an edifying way

  • I want to be able to easily view several untranslatable words with a definition of each word

  • I want to be able to see at least one image that complements each word

  • I want to be able to view the App on a PC, laptop, phone or tablet

  • I want to be able to add words to a favorite list

  • As a site administrator:

  • I want to see a sorted list of all untranslatable words and click on any individual word to go to a detail page for that word

  • I want to be able to create, update, and destroy individual words and images

  • I do not want site visitors to be able to easily find the Admin section of the App (a password sign in for Admin)

Further Explorations

  • Include tags for words (like humorous, dark, people or nature) that users can sort by
  • Site visitors should be able to share an untranslatable on Facebook, Twitter other social media sites or Email or Print it
  • Include categories (like language) that are sortable
  • Include phonetic spelling/pronunciation guide for each word
  • Include a poetic sentence for each word
  • Allow users to recommend additional words and/or make comments
  • Users should be able to access the App live on the internet
  • The definitions of each word contain descriptions that help us see the world with fresh eyes.
  • Create a game where users guess a word based on a definition
  • Create a memory game where users try to match two images/definitions
  • Allow users to sign up for a regular email with a new word sent to their inbox
  • Add country flag to each word
  • Link to additional information for each word
  • Create a splash page
  • Create a color picker for word tiles on the admin page
  • Allow users to click on a word and see an image (or an additional image)

Setup/Installation Requirements

1. Clone the repository from GitHub_

$Git clone https://github.com/yasskin/untranslatables.git

2. Install globals for your computer, if needed (gulp, bower, sass, typescript, typescript packages.)

$ npm install gulp -g <!-- only needs to be done once, (already on epicodus machines) -->
$ npm install typescript -g <!-- only needs to be done once,  (already on epicodus machines)-->
$ apm install atom-typescript <!-- needs to be done each day on epicodus machines -->
$ brew install mongodb <!-- needs to be done each day on epicodus machines -->

3. Setup the Mongo DB

$ mkdir -p /data/db

if permission is denied running previous use this instead at system directory

$ mkdir data && mkdir data/db

ensure that the user account running mongod has read and write permissions for the directory. http://www.macinstruct.com/node/415

if you're unable to create directories at the system level you will need to point to the path of the of the data directory you created

$ mongod --dbpath <path to data directory>

4. Gather (build) the back-end packages the program requires

$ npm install <!-- saved into node_modules/ -->

5. Run the App on the local server

Start gulp in a terminal // gulp compiles typscript into js

$ npm run gulp

Leave gulp running in one terminal and open another terminal and start the server

$ npm start

In a third terminal start the Mongo database sever (leaving the previous two terminals running)

$ mongod --dbpath ~/Desktop/untranslatables/data/db
  1. Navigate to localhost:3000

Known Bugs

  • If you want to know about bugs, consult an entomologist. This app knows no bugs

Support and contact details

If you run into any issues or have questions, ideas, or concerns, please feel free to contact Noah:

Technologies Used

  • HTML & CSS
  • SASS
  • JavaScript
  • Node.js
  • Gulp
  • Bower
  • GitHub API

License

MIT License

The MIT License (MIT) Copyright (c) 2016, Maarja Laineste, Caleb Stokka, Sky Rousse, and Noah Yasskin https://opensource.org/licenses/MIT Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

Epicodus Team Week Project: Untranslatables - An entertaining and edifying web app that presents words or phrases that are impossible to translate | Uses the Mean Stack: MongoDB, Express.js, Angular, and Node.js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •