1
0
mirror of https://koodu.h-i.works/projects/thebadspace synced 2025-05-06 14:41:02 -05:00
2025-05-05 22:44:21 +02:00
2025-04-18 15:16:32 -06:00
2023-08-14 12:07:53 -07:00
2025-04-18 15:16:32 -06:00
2023-08-14 12:07:53 -07:00
2023-08-14 12:07:53 -07:00
2023-08-14 12:07:53 -07:00
2023-08-14 12:07:53 -07:00
2022-11-15 12:57:14 -08:00
2023-08-14 12:07:53 -07:00
2024-09-20 15:09:45 -06:00
2025-04-16 15:04:32 -06:00
2022-11-15 12:57:14 -08:00
2023-08-17 15:14:01 -07:00
2022-11-15 12:57:14 -08:00
2023-08-14 12:07:53 -07:00
2025-04-22 13:39:14 -06:00
2025-04-17 23:47:16 -06:00
2023-08-14 12:07:53 -07:00
2024-04-15 14:36:38 -06:00
2023-08-14 12:07:53 -07:00
2023-08-14 12:07:53 -07:00
2023-08-14 12:07:53 -07:00

The Bad Space

As the fediverse is a largely unregulated space, The Bad Space arose from a need for collaborative safety tools that can be used identify instances that house bad actors, are poorly moderated, and/or contain inappropriate/offensive content (CSAM, hate speech, fascist ideology, etc.) that puts marginalized communities at risk for harassment and abuse.

The goal of TBS is to provide a way for communities to work together based on their specific needs and not a one-size-fits-all moderation approach for a more tailored and nuanced experience.

Requirements

TBS is built with the Laravel framework, so PHP 8.2 and Composer is required, as well as PostgreSQL 14+ for the database. Git is not strictly required as the code base can be manually downloaded, but it does make installing and updating easier.

NOTE: On Linux, some additional PHP extensions need to be installed, but don't worry it's easy. Run sudo apt-get install php-mbstring, sudo apt-get install php-xml and sudo apt-get install php-zip to get them and you're good to go.

NOTE: Environment set up on a local machine can be a pain in the ass, so to make that easier Herd can be used for MacOS and Windows and FlyEnv for Linux folks that don't want to do it all by hand. DBNgin can be used to make database setup painless. Yes, and they are all free.

Install

Use git clone https://koodu.h-i.works/projects/thebadspace.git to install or just go grab the zip from the repo and unzip it.

Create your database in PostgreSQL and remember the name of the database and the username and password used to access it.

Go into the folder through your terminal and run composer install to grab all the dependencies needed and create the .env file that stores all project specific variables.

Open the .env file and add your database information so it resembles the following:

DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=your_database_name
DB_USERNAME=database_username
DB_PASSWORD=database_password

Now that the app is aware of what database is being used, it's time to set up the tables.

Back in your terminal, run php artisan migrate and if your database is set up correctly, all the tables will be created automatically.

Congrats, you're all set up.

Usage

TBS can be run locally or on a remote server.

To get up and running on your local machine, hop back in your terminal and run php -S localhost:8000 -t public/ in the folder of the project.

If you're running it on a server, use these configs to get going.

For Nginx

server {  
      listen 80;
      server_name yourcoolassdomain.com;
      client_max_body_size 20M //Change to whatever to limit/increase file upload size
      location  / {
            try_files $uri /index.php$is_args$args;
      } 
}

For Apache

<VirtualHost *:80>
    ServerAdmin admin@yourcoolassdomain.com
    ServerName yourcoolassdomain.com
    ServerAlias www.yourcoolassdomain.com
    DocumentRoot /path-to-fipamo-folder/public
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Remember to restart Apache/NGINX once these configs have been plugged in.

Go the root domain of the site you just set up (or http://localhost:8000 if running locally) and you'll see a screen to set up an admin account.

Once the admin account has been created, go to The Den section in the menu and login in.

Adding Sources

The core of TBS is adding sources of the instances (currently just Mastodon, but more coming soon) to be used to compile exportable block lists. Note: While many instance block lists are publicly available, it is good practice to ask for permission to use them.

Sources can be added under the Manage Sources link. Fill in the appropriate information and then save. Note: Some instances keep their block lists private for safety reasons, so you will need an access token to use them. These tokens cannot be created by TBS and must be obtained from the instance itself.

Once everything is filled in, save the source.

To remove a source from the compilation process, mark its status as active and save.

Compiling Sources

Now it's time to grab the block list data from the individual sources entered needed to compile curation information.

This can be done under Manage Locations on the Den front page. Click Update Source Data to grab block list info from the sources added earlier.

When that is completed, then click Update Locations Data to compile individual sources data into one that the site uses to display info about moderated instances. If this is being run for the first time, this must be clicked twice.

Once that's done, go to the main domain again, and you'll see the results of the compilation process.

Description
No description provided
Readme GPL-3.0 3.2 MiB
Languages
CSS 43.4%
PHP 38.1%
Blade 18.1%
Twig 0.3%