All Projects β†’ crabber-net β†’ crabber

crabber-net / crabber

Licence: GPL-2.0 License
A Twitter clone written in Python + Flask with extended features and a focus on inclusivity.

Programming Languages

HTML
75241 projects
python
139335 projects - #7 most used programming language
javascript
184084 projects - #8 most used programming language
Rich Text Format
576 projects
CSS
56736 projects
Jinja
831 projects

Projects that are alternatives of or similar to crabber

Socioboard 4.0
Socioboard is world's first and open source Social Technology Enabler. Socioboard Core is our flagship product.
Stars: ✭ 475 (+1030.95%)
Mutual labels:  social-media, twitter, social-network
Twitter Cleanup
πŸ› Clean-up inactive accounts and bots from your Twitter
Stars: ✭ 275 (+554.76%)
Mutual labels:  social-media, twitter, social-network
django-sozluk
an exhaustive ekşi sâzlük clone, powered by Python
Stars: ✭ 245 (+483.33%)
Mutual labels:  social-media, social-network
Whizzz-The-ChatApp
Whizzz is a real-time, one-to-one Android chat application made using Firebase, a beautiful user interface, and a push-notification feature.
Stars: ✭ 66 (+57.14%)
Mutual labels:  social-media, social-network
friendica
Friendica Communications Platform
Stars: ✭ 1,048 (+2395.24%)
Mutual labels:  social-media, social-network
subsocial-node
NOTE: Development continues in https://github.com/dappforce/subsocial-parachain repo. Subsocial full node with Substrate/Polkadot pallets for decentralized communities: blogs, posts, comments, likes, reputation.
Stars: ✭ 73 (+73.81%)
Mutual labels:  social-media, social-network
SimpleSocial
A simple social network web application using ASP.NET Core 3.1
Stars: ✭ 16 (-61.9%)
Mutual labels:  social-media, social-network
WorkGroup
Self-Hosted private Social Media-Intranet for Companies.
Stars: ✭ 21 (-50%)
Mutual labels:  social-media, social-network
felfele
Decentralized social application that respects your privacy
Stars: ✭ 30 (-28.57%)
Mutual labels:  social-media, social-network
clubi
A group-oriented social media platform written in Laravel and Vue
Stars: ✭ 29 (-30.95%)
Mutual labels:  social-media, social-network
Socioboard-5.0
Socioboard is world's first and open source Social Technology Enabler. Socioboard Core is our flagship product.
Stars: ✭ 663 (+1478.57%)
Mutual labels:  social-media, social-network
sociallink
Alignments between knowledge bases and social media
Stars: ✭ 16 (-61.9%)
Mutual labels:  social-media, social-network
socialx react native
The SocialX ecosystem takes the social media experience to the next level.
Stars: ✭ 20 (-52.38%)
Mutual labels:  social-media, social-network
awesome-search-engine-optimization
A curated list of backlink, social signal opportunities, and link building strategies and tactics to help improve search engine results and ranking.
Stars: ✭ 82 (+95.24%)
Mutual labels:  social-media, social-network
SocialApp-React-Native
Social Networking mobile app similar to Instagram in React Native.
Stars: ✭ 79 (+88.1%)
Mutual labels:  social-media, social-network
LinkedIn Scraper
πŸ™‹ A Selenium based automated program that scrapes profiles data,stores in CSV,follows them and saves their profile in PDF.
Stars: ✭ 25 (-40.48%)
Mutual labels:  social-media, social-network
microsocial
Microsocial is an experimental social platform that takes a peer-to-peer approach to social media.
Stars: ✭ 21 (-50%)
Mutual labels:  social-media, social-network
Ocelot-Social
Free and open-source social network for active citizenship.
Stars: ✭ 49 (+16.67%)
Mutual labels:  social-media, social-network
ts-ui
Telar Social Network using Reactjs
Stars: ✭ 35 (-16.67%)
Mutual labels:  social-media, social-network
awesome-alternatives
A list of alternative websites/software to popular proprietary services.
Stars: ✭ 123 (+192.86%)
Mutual labels:  social-media, social-network

crabber A Twitter clone for crabby people.


Visit the official live site at crabber.net

Screenshots

Dark Mode

screenshot of crabber.net dark mode

Light Mode

screenshot of crabber.net light mode

Advantages

Beyond the novelty of "twitter but crab" as Crabber user @tuna so eloquently put it, there are a number of advantages Crabber has over Twitter. Here are a few:

  • Completely open-source and a light codebase. If you have problems you can fix those problems yourself and even host your own instance of the site.
  • The ability to edit posts for up to five minutes after they are posted.
  • A full, open REST API with an officially maintained Python client. There are no paywalls or massive hoops to jump through in order to use this unlike Twitter's API.
  • Much greater privacy and absolutely no tracking.
  • No sponsored posts or other advertisements (or anything else relating to finance).
  • Proper rules and moderation preventing misinformation and hate speech. (Admittedly, this is simply impossible for Twitter due to its astounding scale. They still lack this nonetheless.)
  • Better user page and bio customization.

Installation

  1. Clone the repo
git clone https://github.com/crabber-net/crabber.git
cd crabber
  1. Install dependencies (requires Poetry)
poetry install
poetry shell
  1. (Optional) Download the GeoLite2 City database from [MaxMind] (https://dev.maxmind.com/geoip/geolite2-free-geolocation-data?lang=en) saved as GeoLite2-City.mmdb in the project root to enable location bans.
  2. (Optional) Add configuration variables to your environment with a .env file or through other means.
  3. Set up the database
python scripts/initialize_database.py
  1. (Optional) If you want OpenGraph cards you need to set up a cron job that runs fetch_cards.py periodically.
crontab -e

This will open your crontab file in $EDITOR. If you're not sure how crontabs work, add this line:

* * * * * cd CRABBERDIRECTORY && poetry run python fetch_cards.py

This will run fetch_cards.py in your Crabber virtual environment once every minute. To run every five minutes change the first asterisk to 0/5. Learn about crontabs if you wish to make further adjustments.

Captcha

Crabber has the option of using an invisible captcha on the signup page to help prevent bots and spam, to enable this, set the HCAPTCHA_ENABLED to True in config.py, and set the HCAPTCHA_SITE_KEY and HCAPTCHA_SECRET_KEY environment variables to your site and secret key respectfully.

Running

Simply run crabber.py in your configured environment and open localhost in your browser, you can specify a port for the development server to run on by setting the PORT environment variable, it defaults to port 80 if not set.

PORT=1024 python crabber.py

This gets you a development server but should not be used in production. Install a "real" server like Apache2, Nginx, etc.

API

REST

Crabber has a REST API mounted at /api/v1 using the crabber_api.py blueprint. Documentation is available here.

If you are interested in contributing to the documentation please create an issue to let us know, any help is appreciated!

Python

A Python library has been written to simplify interaction with the site's API and make developing bots and other applications more fun.

You can find that library here on PyPi and its repo here.

pip install python-crabber
import crabber
api = craber.API(YOUR_API_KEY,
                 YOUR_ACCESS_TOKEN)

jake = crabber.get_crab_by_username('jake')
jake.follow()
molt = jake.get_molts()[0]
molt.like()
molt.reply('Wow, you\'re so cool!')
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].