{"id":20228655,"url":"https://github.com/ivanvs/elasticsearch-spring-demo","last_synced_at":"2025-09-04T17:43:02.098Z","repository":{"id":107359620,"uuid":"58860391","full_name":"ivanvs/elasticsearch-spring-demo","owner":"ivanvs","description":"Application demonstrate how to create small Spring application that is listening on Twitter public stream. Application persist tweets in MySQL and ElasticSearch databases.","archived":false,"fork":false,"pushed_at":"2016-12-30T19:08:01.000Z","size":15,"stargazers_count":12,"open_issues_count":0,"forks_count":9,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T15:21:36.286Z","etag":null,"topics":["angularjs","demo","elasticsearch","elasticsearch-database","elasticsearch-spring-demo","mysql","spring-application","twitter-application"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ivanvs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-15T12:28:40.000Z","updated_at":"2022-09-27T10:47:26.000Z","dependencies_parsed_at":"2023-05-17T05:52:17.212Z","dependency_job_id":null,"html_url":"https://github.com/ivanvs/elasticsearch-spring-demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivanvs%2Felasticsearch-spring-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivanvs%2Felasticsearch-spring-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivanvs%2Felasticsearch-spring-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivanvs%2Felasticsearch-spring-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ivanvs","download_url":"https://codeload.github.com/ivanvs/elasticsearch-spring-demo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248262053,"owners_count":21074240,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angularjs","demo","elasticsearch","elasticsearch-database","elasticsearch-spring-demo","mysql","spring-application","twitter-application"],"created_at":"2024-11-14T07:31:58.088Z","updated_at":"2025-04-10T17:38:18.217Z","avatar_url":"https://github.com/ivanvs.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# elasticsearch-spring-demo\nApplication demonstrate how to create small Spring application that is listening on Twitter public stream. Application persist tweets in MySQL and ElasticSearch databases and enables user to search tweets from MySQL and ElasticSearch.\n\n## About\n\nThis application was created as demo included in [presentation](http://www.slideshare.net/IvanVasiljevi/elasticsearch-62070143). \n\n## What You Need To Install?\n\n* Java 1.8\n* [Maven](https://maven.apache.org/download.cgi)\n* [NodeJS](https://nodejs.org/en/)\n* [Bower](http://bower.io/)\n* MySQL\n* [ElasticSearch 1.7.3](https://www.elastic.co/downloads/past-releases/elasticsearch-1-7-3)\n\n## How To Setup Twitter\n\nIn order to be able to read tweets from Twitter API you need to create application on [Twitter](https://dev.twitter.com/). Tutorial how can you create Twitter application you can find on this [link](http://iag.me/socialmedia/how-to-create-a-twitter-app-in-8-easy-steps/).\n\nWhen you have created Twitter application in [resource file](https://github.com/ivanvs/elasticsearch-spring-demo/blob/master/src/main/resources/application.properties) you need to replace next fields with keys from your application:\n\n* spring.social.twitter.appId\n* spring.social.twitter.appSecret\n* spring.social.twitter.accessToken\n* spring.social.twitter.accessTokenSecret\n\n## MySQL Setup\n\nParamaters for connecting to MySQL database can be found in [resource file](https://github.com/ivanvs/elasticsearch-spring-demo/blob/master/src/main/resources/application.properties):\n\n* spring.datasource.url\n* spring.datasource.username\n* spring.datasource.password\n\nAs you can see from default configuration, in MySQL you have to create database scheme es_demo.\n\n# ElasticSearch Setup\n\nYou should setup your ElasticSearch instance to have cluster name: **web_app_demo**\n\n## How To Build Application\n\nIn order to build application you need to download javascript resources. This can be done with bower by running command in root folder:\n\n`bower install`\n\n## How To Start Application\n\nIn order to start application you need to run maven command in root folder of application:\n\n`mvn spring-boot:run`\n\n## Databases\n\nIf you for some reason don't want to install MySQL and ElasticSearch on your machine, you can use supplied docker-compose configuration file.\n\n### What You Need To Install?\n\n* [Docker](https://docs.docker.com/)\n* [Doker Compose](https://docs.docker.com/compose/install/)\n\n### How To Start Containers?\n\nIn order to start **MySQL** container and **ElasticSearch** container this need to be done:\n\n* Open terminal in `docker` folder of this project\n* Start docker-compose with command: `docker-compose up` or `sudo docker-compose up`\n\nPay attention that this two containers expect **ports 3306, 9200 and 9300 to be free**.\n\n## License\n\nelasticsearch-spring-demo is released under [MIT License](https://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fivanvs%2Felasticsearch-spring-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fivanvs%2Felasticsearch-spring-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fivanvs%2Felasticsearch-spring-demo/lists"}