Ninkilim Transition Your Twitter Legacy To A Decentralized Open Source Social Network
Login

Ninkilim: Transition your Twitter Legacy to a Decentralized Open Source Social Network

When Twitter was launched in July 2006 there was a chronological timeline and a API which allowed developers to create applications and researchers to analyze what users were posting.

Since then Twitter has replaced the chronological timeline with algorithms deciding which tweets you see and if your tweets are getting seen, has added advertising, restricted freedom of speech and access to it's API.

Many users have already moved on to other social networks leaving the content they have created behind for X to monetize or have deactivated / deleted their accounts.

Although European GDPR gives the users the right to request a copy of their data and X provides such a download, there is currently not much use for it except to view the archive of your Tweets on your computer.

Ninkilim currently provides the ability to import the data from this archive and display your tweets on your own server / website, thereby removing the restructions placed on the X API by making your content available by a simple and open JSON and XML interface.

In the near future Ninkilim aims to provide the ability to syndicate content from other users using this software and to become a truly decentralized and open source social network.

Pricing / Costs

The software is free and open source, a virtual server costs about $5/month, a domain costs about $15/year, SSL is available for free from letsencrypt.org

Current Features

Planned Features

INSTALLATION

sh git clone https://github.com/RealBorg/Ninkilim.git gh repo clone RealBorg/Ninkilim

Requirements

sh apt-get install libcatalyst-perl \ libcatalyst-devel-perl \ libcatalyst-model-dbic-schema-perl \ libcatalyst-plugin-configloader-perl \ libcatalyst-plugin-session-perl \ libcatalyst-plugin-session-state-cookie-perl \ libcatalyst-plugin-session-store-dbic-perl \ libcatalyst-plugin-static-simple-perl \ libcatalyst-view-json-perl \ libcatalyst-view-tt-perl \ libdatetime-format-pg-perl \ libdbd-pg-perl \ libdbix-class-schema-loader-perl \ liblingua-identify-perl \ libtext-multimarkdown-perl \ postgresql \ starman

System / Database Configuration

sh adduser ninkilim sudo -u postgres createuser -d ninkilim sudo -u ninkilim createdb ninkilim sudo -u ninkilim psql -f ninkilim.sql ninkilim

Data Import

Apache Integration

sh a2enmod headers proxy proxy\_http ssl apache <VirtualHost *:80> ProxyPreserveHost On RequestHeader set X-Forwarded-Port "80" ProxyPass / http://localhost:3000/ ProxyPassReverse / http://localhost:3000/ </VirtualHost> <VirtualHost *:443> ProxyPreserveHost On RequestHeader set X-Forwarded-Port "443" RequestHeader set X-Forwarded-Proto "https" ProxyPass / http://localhost:3000/ ProxyPassReverse / http://localhost:3000/ </VirtualHost>

ARTICLES

sh mkdir root/articles mkdir root/articles/title vi root/articles/title/en.md - Open http://localhost:3000/articles/title?lang=en

SEARCH ENGINE OPTIMIZATION

sh wget -o root/static/sitemap-1.xml https://<yoursite>/sitemap/1 wget -o root/static/sitemap-2.xml https://<yoursite>/sitemap/2 ...