Code Monkey home page Code Monkey logo

loklak_search's Introduction

loklak_search

Join the chat at https://gitter.im/loklak/loklak Code Climate Codacy Badge codecov Percentage of issues still open Average time to resolve an issue

Development: Build Status Master: Build Status

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 https://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: https://loklak.org. The branches are deployed on Heroku for testing:


Communication

Please join our mailing list to discuss questions regarding the project: https://groups.google.com/forum/#!forum/opntec-dev

Our chat channel is on gitter here: https://gitter.im/loklak/loklak

Technology Stack

Components
  • HTML - Structure of the web page generated.
  • CSS - Styling options and details of the web page.
  • JavaScript(JSON) - Used to store information for deploying the application such as dependencies.
  • Angular 6 - Structure for deployment of the web page.
  • Bootstrap 3.3.2 - Responsive Design

Requirements

Installation

First, we will need to install angular-cli by using the following command:

$ npm install -g @angular/cli

After installing angular-cli we need to install our required node modules, so we will do that by using the following command:

$ npm install

How to deploy?

Running on localhost:

  • Step 1: Fork loklak_search repository and clone it to your desktop
  • Step 2: Then cd into that cloned folder
  • Step 3: Deploy locally by running this:$ ng serve

How to use ngrx/StoreDevtools?

  • Step 1: Install the Redux Devtools extension.
  • Step 2: We don't enable the ReduxDevtools by default due to performance considerations. To enable this, un-comment the StoreDevtools import in app.module.ts.

Note: Please make sure that you comment the StoreDevtools import again before making the PR.

For deploying with Surge:

Surge will automatically generate deployment link whenever a pull request passes Travis CI.

Suppose pull request number is 150 and it passes Travis CI. The deployment link can be found here: https://pr-150-fossasia-LoklakSearch.surge.sh

For deploying with Github Pages:

With these very simple steps you can have loklak_search deployed:

  • Step 1: Fork loklak_search repository and clone it to your desktop
  • Step 2: Then check out to your master branch $ git checkout master
  • Step 3: Deploy running this: $ npm run deploy
  • Step 4: Visit https://yourusername.github.io/loklak_search and you should see the search running
  • Step 5: As you search you might see that it can't find anything, to resolve this, on search you will see there is a red shield on search bar, click on it and allow to load scripts
  • Step 6: Reload and you will have a function loklak search page deployed with github pages.

For deploying with Heroku:

loklak_search can be deployed on Heroku using:

  1. Deployment on Heroku

One-click Heroku deployment is also available:

Deploy

Loklak Server

See here to run your own https://github.com/loklak/loklak_server (recommended), and change apiUrl in config accordingly. Last resource, or for production is https://api.loklak.org

Contributions, Bug Reports, Feature Requests

This is an Open Source project and we would be happy to see contributors who report bugs and file feature requests, submitting the pull requests as well. Please report issues in the GitHub tracker.

Branch Policy

We have the following branches:

  • development All development goes on in the development branch. If you're making a contribution, please make a pull request to development. PRs to the branch must pass a build check and a unit-test check on Travis (https://loklak-search.herokuapp.com - Is running off the latest development branch).
  • master This branch contains shipped code. After significant features/bug-fixes are accumulated on development, development branch is merged into master branch. (https://loklak.org - Is running off the lastest master branch.).
  • gh-pages This contains the autogenerated code of the master branch that is generated by Travis.

License

This project is currently licensed under GNU Lesser General Public License v3.0. To obtain the software under a different license, please contact FOSSASIA.

loklak_search's People

Contributors

achint08 avatar ajayns avatar alejoheredia avatar anshulmalik avatar championpaddler avatar daminisatya avatar dependabot[bot] avatar dishebh avatar djmgit avatar elgayar avatar gupta-utkarsh avatar hemantjadon avatar in-vincible avatar jigyasa-grover avatar mariobehling avatar marvin08 avatar meets2tarun avatar oanarosca avatar orbiter avatar parths007 avatar pipix51 avatar praveenojha33 avatar remorax avatar rishiraj824 avatar sakshee-19 avatar sharkness avatar shaz13 avatar shreyanshdwivedi avatar simsausaurabh avatar singhpratyush avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

loklak_search's Issues

Add more contact info to contact page

On the contact page at http://loklak.fossasia.org/contact, please add a section with the following info and use the sign up form of fossasia.org at https://github.com/fossasia/fossasia.org/blob/gh-pages/index.html .


If you would like to get updates about our activities and new releases, please subscribe to our newsletter here:

Name, Email, Subscribe


If you are a developer:

loklak.fossasia.org not working/loading

Console log.


Uncaught Error: Template parse errors:
Unexpected closing tag "a" ("XPwD/AVER/qFOTZZGAAAAAElFTkSuQmCC" alt="loklak social media search engine">
         </a>">
        [ERROR ->]</a>
      </div>
      <div id="navbar" class="navbar-collapse collapse">
"): ContactComponent@12:8


screen shot 2016-11-02 at 12 20 59 pm

Implement news sub tab with results from news organizations

Many news organizations have a twitter and youtube account. Please show a stream from news organization in the sub tab "News".

Implement as follows:

  • Create a json file with a list of accounts of social media of news organizations (sort alphabetically and by media, e.g. Twitter, Youtube)
  • Show the stream just like other search results in a sub tab "News"

screenshot from 2016-10-17 17 44 10

Activate search bar with cursor on opening start page

When a user enters a search site like google.com, the site activates the search bar and shows the cursor in the bar right away. This means the user does not have to click the search box to type.

Please implement it in the same way.

screenshot from 2016-10-17 17 37 44

Adapt height of top bar and simplify search box

screenshot from 2016-10-15 15 48 53

  • Please implement the same height as the Google search bar.
  • Currently the search gets a blue kind of shadow, when it is highlighted. Please only change the line color to blue and do not show a box shadow.

Fix travis.yaml

�[31;1mERROR:�[0m An error occured while trying to parse your .travis.yml file.

Please make sure that the file is valid YAML.

http://lint.travis-ci.org can check your .travis.yml.

The log message was: Build config file had a parse error: found character that cannot start any token while scanning for the next token at line 10 column 1.

Single page app routing problem in Github Pages

[Issue]

  • Whenever there is a refresh in the route segment of the page (not the home page), the gh-pages 404 is shown.
  • This is due to the fact that gh-pages doesn't have a file corresponding to that route, the route handling needs to be done by the framework (angular) itself.

[Expected Behaviour]

  • All single page applications (angular here) expect the all the routes to be redirected to the index.html, from where their router kicks in and handles the appropriate.

Show info and suggestions if no results are returned for search and move bottom bar to - bottom

If no results match the search, please move the info bottom bar to - bottom and display message as follows:

Your search {search terms/keywords here} did not match any documents.

We will crawl the social web with this search term again in the upcoming hours. Please check back again later. In the meantime please try the following to get relevant results. Suggestions:

Make sure that all words are spelled correctly.
Try different keywords, accounts or hashtags.
Try more general keywords, accounts or hashtags.

Compare to Google:

screenshot from 2016-10-17 20 20 19

api CORS error

I was trying to access the api http://api.loklak.org/api/search.json?q=foo but the resource is erroring with No 'Access-Control-Allow-Origin' header is present on the requested resource.

I want to know that is this an intended behaviour or something which can be fixed?

For testing the site should i use local version of loklak_server and not the api

Reduce image file size

Files in src/assets/images total size is 261kb. At least two of these files can be compressed without losing quality.

Implement contact page (rename imprint)

Instead of imprint please add a contact page at /contact.

Use the same design as the "about" page and add the following information:

Contact Us

Loklak
93 Mau Than Street
Can Tho
Viet Nam
Phone +84 (0) 907 65 29 27
Email: [email protected]
Board of Directors: Phuc Hau Dang
Loklak Ltd. is registered in Can Tho, Viet Nam.

Report a safety or abuse issue affecting our products.
If you know of a safety or abuse problem with any of loklak's services, we'd like to hear about it right away. Please use our contact form to report the issue.

changing the alternate text for an image

The alternate text for the image loklak_banner_206x45 is set as "Dispute Bills" as shown in the image below.

I think it should be something related to loklak.
capture

Structuring of application

Will it be good to have the model/schema (Typescript classes) of the api-responses or just plain JSON should be used?

  • Using classes will make the use of the response object more robust and easier to write.
  • But using plain JSON gives us more flexibility in case structure of response changes over time.

Please Suggest :)

Image files misnamed

The following files in assets/images are named incorrectly based on their sizes.
cow_200x233.png
loklak_banner_252x45.png

Enhance front page image and add favicon

  • The front page image is currently 64KB. Please check how this image size can be decreased without loosing quality.
  • Currently there is no favicon defined. Please add the loklak animal as a favicon.

Query Model Structure.

There should be model/class for query string processing, which can contain various filters and aspects of a search, mentions, hashtags, and most importantly time and location based searches, along with client side filtering like, videos/images/news

  • There should be direct linking of query string (from url) to a query object on component initialization.

  • On subsequent changes in query the object is modified and various filters can be applied on the object.

  • This will decouple the query string logic into a more robust object whose properties can be changed irrespective of the component.

    Eg. We want to implement the time restricted search in #43, this will be much easier to normalise if there is only one query object with property say since and until if these properties are set irrespective of which component sets it, the query will be performed accordingly.

  • Basically There can be single query object in the application whose properties varies according to the applied filters and narrowing of search results. These can be varied by different components and query will be performed on cumulative changes rather than each change requesting the search service to fetch the results.

  • Using this approach debouncing and defering of searches can be performed as there will be single requesting source.

Please provide inputs and suggestions :)

Home to feed page switching bug in Firefox(Gecko)

  • Fix the unintended switch which occurs in firefox on press of keys like esc, tab and delete/backspace.
  • First keystroke is ignored in firefox (during the switch). Needs a fix.

Both these issues occur as firefox handles the events differently than webkit browsers. In webkit the keypress event is fired only when a character key or enter/return key is pressed.
But in firefox it is also triggered with other keys as well.

Use same banner images across pages

There are different banners images, that should not be there.

  • Please rename the about-banner.jpg to banner.jpg
  • Delete all other banners and use banner.jpg across the relevant pages

Add information to about page

Please design the about page following the design of https://www.google.com/intl/en/about/

Please add the following information

  • one column
    Our mission is to make the world’s social media information openly accessible and useful generating open knowledge for all. # OpenData (/search?query=#OpenData) #OpenSource (/search?query=#OpenSource) #OpenKnowledge (/search?query=#OpenKnowledge)
  • three columns

News from us
Read up on our latest news and browse our blog (http://blog.loklak.net) for updates on our work.

Developers
Wanna know how to set up loklak yourself or you would like to develop an app based on loklak. On http://api.loklak.org you find more info about our APIs.

Contribute to our projects
Ever wondered what life as a developers looks like or what benefits you might expect as an Open Source contributor? Search for an issue to solve on our repositories with FOSSASIA (https://github.com/fossasia?utf8=%E2%9C%93&query=loklak) or the loklak org (http://github.com/loklak/) and check out feature requests and issues.

  • adjust height and use this image
    nasa-apollo8-dec24-earthrise

Subtab for video results

The screenshot below shows different facettes/filters.

screenshot from 2016-10-15 15 44 05

Please implement it in the same style for video results.

Subissue to #3

Images not showing up in private browsing mode

With Chrome and Firefox images do not show up in private/incognito browsing mode. I am not clear if this is a Github/Cloudflare issue or caused by us. Other fossasia sites are fine in private mode.

screenshot from 2016-10-18 00 09 52

CI setup for the repository

@mariobehling
Hi sir,
As I am able to see the Travis CI is not enabled for this repository, please look into that.
Also Circle CI is failing on builds and throwing some errors (due to absence of .circle.yml, i suppose).
The codecov is still showing unknown(don't know the reason).

Also i think direct merge to gh-pages should not be there, I mean there must be another branch for development (as mentioned in readme.md) so that production and development code remains segregated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.