Skip to content

A search engine API + Crawling Websites (NodeJS + MongoDB) 🔎

License

Notifications You must be signed in to change notification settings

gabriel-hahn/search-engine

Repository files navigation

Search Engine

Build Status Codacy Badge BCH compliance Coverage Status contributions welcome Bugs The MIT License

A search engine API + Crawling Websites (NodeJS + MongoDB) 🔎

Getting Started

To run this project, you must have installed:

NodeJS (10.13.0 or grather).

MongoDB.

1 - Inside the projects folder, run the follow command to install all NPM dependencies:

npm i

2 - Create a database to project in MongoDB.

3 - Start MongoDB and change the config/mongodb.js file to right database and url connection as you created before.

4 - Start the project (local host at 9090):

npm run start

To crawling sites, you need to make a POST request to 'api/start' endpoint.

To include more sites to crawling, you can change the 'this._linksToCraw' property inside services/LinksService.js file.

Tests

To run the tests, you can choose between with or without coverage:

npm run test
npm run test:coverage

Demo

Project Search Engine App has GIF demo of the project running with a Front-end project that is similar Google.

Something in the future?

  • Deploy a demo of this project.
  • Swagger documentation.
  • +95% of unit tests coverage.
  • Include more sites to crawling through a web page.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

Gabriel Hahn Schaeffer

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

A search engine API + Crawling Websites (NodeJS + MongoDB) 🔎

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published