The loklak walls app creates social media walls using the loklak server as a data source. The goal is to develop a fully fledged alternative to closed source twitter wall services. 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 still 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.
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
The goal is to have a demo version that is automatically deployed from our repositories:
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
sudo npm install -g gulpto install
gulpsystemwide as a tool to run the task.
cp configFile.json custom_configFile.json. Edit your settings inside
npm installfrom the root directory AND from
oauth-proxysubdirectory, AND from
The goal is to use Bower to manage front-end dependencies in future.
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.jsonto set the Consumer Key (API Key) from your Twitter app
custom_configFile.jsonto set the Consumer Secret from your Twitter app
custom_configFile.jsonto a different string
custom_configFile.jsonto a different email
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)
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
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.
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
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.
We recommend using
pm2 to manage your node processes.
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'
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
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
Error: watch ENOSPCwhen 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 -rand
node-gyp? Check if you meet the requirements here: Link
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.
We have the following branches
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.