Skip to content

karam1ashqar/NodeJs-AutoComplete

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

130 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NodeJs AutoComplete Search 💡

What?/About the project

Auto complete using Node.js. A simple application with an input field, auto completes(suggests) relevant inputs for the user. Clicking on search/pressing enter will redirect you to google search. It has an amazing team-work story, we had a string that contains 10,000 English words. We converted the string to array, then looped on the array and sorted the words in objects relativily to it's first character. So we made an object, that has 26 keys A-Z, each key(letter) got an object as value, and all the words that starts with 'key' character will be in the value.

Main Goals

  • We expect back-end testing using tape (test as many components as you can) and basic front-end testing. ✅
  • Host your project on heroku. 🚀
  • Use module.exports and require to break a single large server file into smaller modules.
  • A good server file structure.

Our Goals

  • A good project file structure.
  • Adding localstorage to save the user history.
  • Using fetch instead of xhr.
  • History Search through using localStorage Web API.
  • Reading huge txt file of words and sort it in object.
  • Very short load time.
  • Dynamic and fast autocomplete suggestions.
  • Autocomplete each time you start new word(Not only for the first word).
  • Clean project software architecture.
  • Auto complete senteces.
  • Error handling.
  • ES6 only.
  • Works on mobile. 📱

Software architecture 🚧 🏗️

Coverage testing

Things to share

  • Making your own algorithim to build a JSON file for your words will make your life easier. 🗃️ How we parse text file to JSON object which is alphabet structured: Click me

Tools/technologies used

  • LocalStorage Web API - To save history.
  • Heroku - For deploying/hosting.
  • Tape - for testing.
  • nyc - for testing.
  • nodemon - for hosting localy.
  • Tamer & Karam's dictionary generator - to convert a large text to JSON organized object.
  • Node.js - backend.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors