• Stars
    star
    1,553
  • Rank 28,959 (Top 0.6 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created about 9 years ago
  • Updated about 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

loklak web application

#loklak webclient

Join the chat at https://gitter.im/loklak/loklak Build Status Code Climate codecov Dependency Status

The loklak webclient creates services using the loklak server as a data source. The goal is to develop a fully fledged alternative to closed source twitter like frontend applications. In order to run the service you can use the API of http://loklak.org or install your own loklak server data storage engine. For some parts of the service you require a twitter API currently (to be discontinued in the future). loklak.org 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.

--

Communication

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

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

Demo version

The goal is to have a demo version that is automatically deployed from our repositories to Heroku.

Installation

Build

  1. Install git, npm, nodejs, nasm, libpng-dev and dh-autoreconfpackages. Run the commands as:
    • sudo apt-get install git-core
    • sudo apt-get install npm
    • sudo apt-get install nodejs
    • sudo apt-get install nasm
    • sudo apt-get install libpng-dev
    • sudo apt-get install dh-autoreconf
  2. Run sudo npm install -g gulp to install gulp systemwide as a tool to run the task.
  3. Clone this repo from https://github.com/loklak/loklak_webclient.git
  4. Create your custom settings file by doing cp configFile.json custom_configFile.json. Edit your settings inside custom_configFile.json.
  5. Run npm install from the root directory AND from oauth-proxy subdirectory, AND from iframely

Technology Stack

Components

  • Nodejs

Services and Dependencies

The goal is to use Bower to manage front-end dependencies in future.

Twitter

Create a Twitter application at https://apps.twitter.com, remember to set the correct website url & callback url (for localhost, http://127.0.0.1/ works better), then modify custom_configFile.json as:

  • Set the twitterConsumerKey var in custom_configFile.json to set the Consumer Key (API Key) from your Twitter app
  • Set the twitterConsumerSecret var in custom_configFile.json to set the Consumer Secret from your Twitter app

A twitter app is valid only for a domain (defined when creating the app). So the credentails above need to be changed also according to the domain (e.g. you'll need to create 2 twitter apps separately for a clone in localhost and for a clone in a remote server)

Loklak Server

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

Iframely Link Debugging server

Link debugging server is essential to embed rich contents from tweets, e.g. videos, links, articles, photos, ..etc. This need to be ran separately, just like the loklak server. Go to ./iframely, and run node server. It's a MUST to be in ./iframely folder when executing the service. pm or *nix screen can help managing this service in the background.

Development

After adding twitter credentials and apiUrl, you can leave the rest as is and run gulp dev for development. gulp dev includes an express server to serve the build at gulpDevExpressPort, a proxy server at oauthProxyPort, and browser-sync at 3000. A browser window will be opened automatically.

For a remote server, along with twitter credential for the remote server: change all localhost to your domain e.g. "oauthProxyUrl": "http://mydomain.org:3002/oauthproxy"

Production

We recommend using screen of pm2 to manage your node processes.

  1. If you have your own web server engine, gulp prod will create static files only at directory build. You'll need to run oauth service manually by node oauth-proxy/index.js , and also the debugging service manually, see 'Iframely Link Debugging server'

  2. If your server don't have a web serve, gulp live will serve the app gulpDevExpressPort along with oauth service at oauthProxyPort. You'll need to run the 'Iframely Link Debugging server' mentioned above manually.

When there is a need to change default port oauthProxyUrl, oauthProxyRedirectUrl, oauthProxyPort should have the same port. The port to the application can be change at gulpDevExpressPort

IMPORTANT Since OauthProxy instance are also using fields from custom_configFile.json, if twitter credentials are changed, including consumerKey, consumerSecret & callbackUrl, OauthProxy must be restarted. This only applies for production since in development, the instance is restarted automatically with gulp dev

Troubleshooting

  • On *nix based systems (latest Ubuntu, Fedora version) you might get an Error: watch ENOSPC when running gulp dev. To fix, check this post on Stackoverflow.
  • version 'GLIBC_2.14' not found required by imagemin-jpegtran. To fix this, make sure you have installed nasm, libpng-dev, dh-autoreconf. Then do rm node_modules -r and npm install.
  • Problem with node-gyp? Check if you meet the requirements here: Link

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 pull requests as well. Please report issues in the GitHub tracker.

Branch Policy

We have the following branches

  • development All development goes on in this branch. If you're making a contribution, you are supposed to make a pull request to development. PRs to master must pass a build check and a unit-test check on Travis
  • master This contains shipped code. After significant features/bugfixes are accumulated on development, we make a version update, and make a release.

License

This project is currently licensed under the The MIT License (MIT). A copy of LICENSE.md should be present along with the source code. To obtain the software under a different license, please contact FOSSASIA.

More Repositories

1

visdom

A flexible tool for creating, organizing, and sharing visualizations of live, rich data. Supports Torch and Numpy.
Python
9,894
star
2

open-event-server

The Open Event Organizer Server to Manage Events https://test-api.eventyay.com
Python
2,906
star
3

phimpme-android

Phimp.me Photo Imaging and Picture Editor https://play.google.com/store/apps/details?id=org.fossasia.phimpme
Java
2,580
star
4

susi_server

SUSI.AI server backend - the Artificial Intelligence server for personal assistants https://susi.ai
Java
2,500
star
5

susi_android

SUSI.AI Android App https://play.google.com/apps/testing/ai.susi
Kotlin
2,418
star
6

open-event-frontend

The frontend for the Open Event API Server https://test.eventyay.com
JavaScript
2,313
star
7

open-event-droidgen

Open Event Android App Generator https://github.com/fossasia/open-event-android/raw/apk/sample-apk-fossasia17-development.apk
Java
2,048
star
8

pslab-android

PSLab Android App https://play.google.com/store/apps/details?id=io.pslab
Java
2,038
star
9

susi.ai

SUSI.AI Web Client https://susi.ai
JavaScript
2,026
star
10

open-event-wsgen

Open Event Website App Generator https://sched.eventyay.com
JavaScript
2,013
star
11

open-event-attendee-android

Open Event Attendee Android General App https://github.com/fossasia/open-event-android/blob/apk/open-event-dev-app-playStore-debug.apk
Kotlin
1,947
star
12

star-me

Star FOSSASIA Repositories on Github and Support the Community
JavaScript
1,906
star
13

fossasia.org

FOSSASIA Website https://fossasia.org
Less
1,883
star
14

susi_iOS

SUSI AI iOS app http://susi.ai
Swift
1,870
star
15

loklak_search

Frontend Search for loklak server https://loklak.org
TypeScript
1,840
star
16

open-event-organizer-android

Open Event Mobile App for Organizers and Entry Managers https://play.google.com/store/apps/details?id=com.eventyay.organizer
Java
1,793
star
17

badgeyay

Attendee Badge Generator for Conferences
JavaScript
1,791
star
18

badge-magic-android

Badge Magic with LEDs - Android App https://play.google.com/apps/testing/org.fossasia.badgemagic
Kotlin
1,788
star
19

meilix

Beautiful Linux System https://meilix.org | APT Repo: http://meilix.fossasia.org
Python
1,779
star
20

pslab-desktop

PSLab Desktop Application https://pslab.io
JavaScript
1,770
star
21

susper.com

Susper Decentralised Search Engine https://susper.com
TypeScript
1,742
star
22

neurolab-android

NeuroLab Android https://github.com/fossasia/neurolab-android/raw/apk/neurolab-dev-debug.apk
Java
1,710
star
23

open-event

Open Event Project, Samples, Documentation and Artwork http://open-event-dev.herokuapp.com
Python
1,701
star
24

labs.fossasia.org

Projects Website for FOSSASIA http://labs.fossasia.org
CSS
1,669
star
25

query-server

Query Server Search Engines
Python
1,665
star
26

gci16.fossasia.org

FOSSASIA Google Code-In Website 2016/17 http://gci16.fossasia.org
HTML
1,659
star
27

codeheat.org

Codeheat Coding Contest Website https://codeheat.org
Less
1,639
star
28

pslab-hardware

PSLab Hardware Design and Schematics https://pslab.io
Prolog
1,633
star
29

pslab-python

Python Library for PSLab Desktop: https://pslab.io
Python
1,632
star
30

flappy-svg

Flappy Bird in SVG. Play it at http://fossasia.github.io/flappy-svg/
JavaScript
1,613
star
31

susi_linux

Hardware for SUSI AI https://susi.ai
Python
1,609
star
32

pslab-scripts

Pocket Science Lab - Scripts for Sensor Experiments
Python
1,604
star
33

gci17.fossasia.org

FOSSASIA Google Code-In Website 2017/18 https://gci17.fossasia.org
CSS
1,598
star
34

gci15.fossasia.org

FOSSASIA Google Code-In Website 2015/16 http://gci15.fossasia.org
HTML
1,596
star
35

susi_skill_cms

A web application framework to edit susi skills http://skills.susi.ai
JavaScript
1,583
star
36

2017.fossasia.org

FOSSASIA Summit 2017 https://2017.fossasia.org
HTML
1,580
star
37

2018.fossasia.org

FOSSASIA Summit 2018 https://2018.fossasia.org
HTML
1,577
star
38

fossasia-communities

FOSSASIA API Files of Communities in Asia
1,576
star
39

open-event-attendee-ios

iOS app for open event
Swift
1,570
star
40

gci14.fossasia.org

FOSSASIA Google Code-In Website 2014/15 http://gci14.fossasia.org
JavaScript
1,569
star
41

knittingpattern

A Python Library for Knitting Patterns
Python
1,569
star
42

2016.fossasia.org

FOSSASIA Summit 2016 https://2016.fossasia.org
CSS
1,564
star
43

2012.fossasia.org

FOSSASIA Summit 2012 Event Site https://2012.fossasia.org
CSS
1,563
star
44

pslab-firmware

Firmware for PSLab Open Hardware Platform https://pslab.io
C
1,559
star
45

loklak_wok_android

"loklak wok" is a harvesting peer for the loklak_server https://github.com/fossasia/loklak_wok_android/raw/apk/loklak_wok_1.2_20160201.apk
Java
1,549
star
46

susi_chromebot

SUSI.AI Chrome Extension
JavaScript
1,548
star
47

directory.api.fossasia.net

Python
1,547
star
48

yaydoc

Docs! Yay! http://yaydoc.org
JavaScript
1,546
star
49

x-mario

x-mario, the gaming distro
Shell
1,542
star
50

searss

Search to RSS tool
Python
1,542
star
51

neurolab-hardware

Neurolab Hardware
1,541
star
52

2015.fossasia.org

FOSSASIA Summit 2015 Event Site https://2015.fossasia.org
CSS
1,539
star
53

meilix-systemlock

Meilix system lock
Python
1,537
star
54

meilix-generator

WebApp for generating a custom ISO image based on Meilix http://meilix.org
HTML
1,537
star
55

2014.fossasia.org

FOSSASIA Summit 2014 Event Site http://2014.fossasia.org
HTML
1,537
star
56

phimpme-drupal

Phimp.me - Photo App on Drupal
PHP
1,534
star
57

knitlib

Knitting backend library for knitting machines
Python
1,532
star
58

labyrinth

FOSSASIA Labyrinth
JavaScript
1,532
star
59

yaydoc-artwork

Open Source Books
1,532
star
60

sg18.sciencehack.asia

UNESCO Hackathon Website at the FOSSASIA Summit Singapore https://sg18.sciencehack.asia
CSS
1,532
star
61

phimpme-wordpress

Phimp.me - Photo App on Wordpress
PHP
1,532
star
62

CommonsNet

Sharing and Transparency for WiFi Networks
JavaScript
1,531
star
63

knitweb

knitting web app frontend and backend
JavaScript
1,530
star
64

pslab-case

PSLab Case https://pslab.io
1,530
star
65

fossasia.net

FOSSASIA.net Website https://fossasia.net
HTML
1,530
star
66

2011.fossasia.org

FOSSASIA Summit 2011 Event Site http://2011.fossasia.org
HTML
1,530
star
67

unesco.sciencehack.asia

UNESCO Hackathon Website https://unesco.sciencehack.asia
CSS
1,530
star
68

pslab-expeyes

PSLab for ExpEYES - Science Experiments and Data Acquisition for Physics Education https://pslab.io
Python
1,529
star
69

susi_tweetbot

Twitter Bot for Susi http://susi.ai
JavaScript
1,529
star
70

api.fossasia.net

FOSSASIA API
JavaScript
1,529
star
71

fossasia-nodemailer

JavaScript
1,529
star
72

xmario_buildscript

x-mario build script
Shell
1,529
star
73

2023.fossasia.org

HTML
1,528
star
74

hotelxoai.com

The Open Source Hotel in the Mekong Delta in Vietnam
HTML
1,527
star
75

2010.fossasia.org

FOSSASIA Summit 2010 Event Site http://2010.fossasia.org
HTML
1,527
star
76

susi_smart_box

SUSI.AI Smart Box https://susi.ai
1,526
star
77

blog.fossasia.org

Issue Tracker for https://blog.fossasia.org
1,526
star
78

fossasia11-drupal

FOSSASIA 2011 Drupal Site
PHP
1,526
star
79

open-event-next

Open Event Frontend "Next Version" with Vue.js
TypeScript
1,525
star
80

perspektive89.com

Open Source Journal Perspektive89.com
1,525
star
81

fossasia10-drupal

FOSSASIA 2010 Drupal Site
PHP
1,525
star
82

pslab-test-jig

PSLab Test Jig - Boards to test PSLab hardware https://pslab.io
1,523
star
83

cmap.api.fossasia.net

FOSSASIA Community Map
JavaScript
1,523
star
84

fossasia.github.io

FOSSASIA.GitHub.io
HTML
1,523
star
85

feed.api.fossasia.net

PHP
1,522
star
86

loklak-webtweets

FOSSASIA Tweets with loklak http://fossasia.github.io/loklak-webtweets/
Less
1,522
star
87

foss.vn

FOSS.vn Website http://foss.vn
HTML
1,522
star
88

susi_skill_data

A storage place for SUSI.AI skills https://susi.ai
1,521
star
89

susi_fbbot

Susi Facebook Bot http://susi.ai
JavaScript
1,519
star
90

knitpat

Knitting Pattern Format
Python
1,518
star
91

jugaadfest.com

Jugaadfest in India https://jugaadfest.com
HTML
1,518
star
92

susi_desktop

Desktop Client for http://api.susi.ai
JavaScript
1,517
star
93

loklak_wp_plugins

PHP
1,517
star
94

susi_telegrambot

Susi Telegram Bot http://susi.ai
JavaScript
1,516
star
95

susi_slackbot

Ask Susi Messengers http://susi.ai
JavaScript
1,516
star
96

open-event-scraper

Google spreadsheet parsing for Open Event JSON
Python
1,516
star
97

event-collect

event website listing to Open Event format scraper and converter
Python
1,516
star
98

knitserver

JavaScript
1,515
star
99

accounts.susi.ai

Accounts Service for SUSI.AI http://accounts.susi.ai
JavaScript
1,514
star
100

loklak_tweetheatmap

Heat map with tweets by search query using Loklak API and OpenLayers 3
JavaScript
1,513
star