The Loklak search creates a website using the Loklak server as a data source. The goal is to get a search site, that offers timeline search as well as custom media search, account and geolocation search.
In order to run the service, you can use the API of http://api.loklak.org or install your own Loklak server data storage engine. Loklak_server is a server application which collects messages from various social media tweet sources, including Twitter. The server contains a search index and a peer-to-peer index sharing interface. All messages are stored in an elasticsearch index.
The site of this repo is deployed on the GitHub gh-pages branch and automatically deployed here: http://loklak.org
In this blog, we will talk about how to install Loklak_Search locally and deploying it to Surge (Static web publishing for Front-End Developers).
How to clone the repository
Sign up / Login to GitHub and head over to the Loklak_Search repository. Then follow these steps.
- Go ahead and fork the repository
https://github.com/fossasia/loklak_search |
- Get the clone of the forked version on your local machine using
git clone https://github.com/<username>/loklak_search.git |
- Add upstream to synchronize repository using
git remote add upstream https://github.com/fossasia/loklak_search.git |
Getting Started
The Loklak search application basically consists of the following :
- Angular-cli
- node –version >= 6
- npm –version >= 3
- First, we will need to install angular-cli by using the following command:
npm install -g @angular/cli@latest |
2. After installing angular-cli we need to install our required node modules, so we will do that by using the following command:
npm install |
3. Deploy locally by running this
ng serve |
Go to localhost:4200 where the application will be running locally.
How to Deploy Loklak Search on Surge :
Surge is the technology which publishes or generates the static web-page demo link, which makes it easier for the developer to deploy their web-app. There are a lot of benefits of using surge over generating demo link using GitHub pages.
- We need to install surge on our machine. Type the following in your Linux terminal:
npm install –global surge |
This installs the Surge on your machine to access Surge from the command line.
- In your project directory just run
surge |
- After this, it will ask you three parameters, namely
Email Password Domain |
After specifying all these three parameters, the deployment link with the respective domain is generated.
Auto deployment of Pull Requests using Surge :
To implement the feature of auto-deployment of pull request using surge, one can follow up these steps:
- Create a pr_deploy.sh file
- The pr_deploy.sh file will be executed only after success of Travis CI i.e. when Travis CI passes by using command bash pr_deploy.sh
#!/usr/bin/env bash if [ “$TRAVIS_PULL_REQUEST” == “false” ]; then echo “Not a PR. Skipping surge deployment.” exit 0 fi npm i -g surge export SURGE_LOGIN=test@example.co.in # Token of a dummy account export SURGE_TOKEN=d1c28a7a75967cc2b4c852cca0d12206 export DEPLOY_DOMAIN=https://pr-${TRAVIS_PULL_REQUEST}-fossasia-LoklakSearch.surge.sh surge –project ./dist –domain $DEPLOY_DOMAIN; |
Here, Travis CI is first installing surge locally by npm i -g surge and then we are exporting the environment variables SURGE_LOGIN , SURGE_TOKEN and DEPLOY_DOMAIN.
Now, execute pr_deploy.sh file from .travis.yml by using command bash pr_deploy.sh
Resources
- Documentation | Surge : https://surge.sh/
- Surge Video Tutorial : https://youtu.be/-EjdMvYPSVU