traxxx/README.md

148 lines
5.1 KiB
Markdown

# Traxxx
**NSFW** - The latest releases from your favorite porn studios in one place.
## Install & run
Use [nvm](https://github.com/creationix/nvm) to install a recent version of NodeJS. Download and unpack or clone this repository, and run the following in the root directory:
`npm install`
### Set up database
Install PostgreSQL, make sure password authentication is enabled (scram-sha-256) and create a database with a privileged user. For optimal search engine performance, copy `traxxx.stop` to your PostgresQL text search directory, usually `/usr/share/postgresql/tsearch_data/ or `/usr/local/share/postgresql/tsearch_data/`.
### Configuration
Do not modify `config/default.js`, but instead create a copy at `config/local.js` containing the properties you wish to change. If you have set `NODE_ENV`, copy `assets/js/config/default.js` to `assets/js/config/[environment].js`. After setting up PostgreSQL and configuring the details, run the following commands to create and populate the tables, and build the project:
`npm run migrate`
`npm run seed`
You can also use `npm run flush` to run both steps at once, and wipe the database completely later.
#### Networks and channels
To scrape the networks and channels available in the database, you can configure `include` and `exclude` lists. To include all available channels and only use the `exclude` list, leave the `include` parameter unconfigured. The `exclude` lists will exclude channels and child networks from networks on the `include` lists, but not vice versa. That is, if the `include` list includes a network and the `exclude` list excludes one of that network's channels, the channel will not be scraped. However, if the `include` list includes a channel, and the `exclude` list includes its parent network, the channel will be scraped.
This configuration will scrape Evil Angel and all XEmpire channels, except for LesbianX.
```
include: {
networks: [
'xempire',
],
channels: [
'evilangel',
],
},
exclude: {
channels: [
'lesbianx',
],
}
```
This configuration will scrape all channels, except for BAM Visions, and except all channels part of the Vixen network.
```
exclude: {
channels: [
'bamvisions',
],
networks: [
'vixen'
],
},
```
### Building
To build traxxx, run the following command:
`npm run build`
To generate the thumbnails for logos and tag photos, run:
`npm run logos-thumbs`
`npm run tags-thumbs`
### Run
`./traxxx --option value` or `npm start -- --option value`
* `--server`: Run the web server
* `--all`: Fetch updates from the channels and networks in the configuration file.
* `--channel [slug] [slug]`: Fetch updates from specific channels. The slug is the channel's name in lowercase and without cases or special characters. For example, Teens Like It Big is teenslikeitbig.
* `--network [slug] [slug]`: Fetch updates from all sites of a specific network. The network slug is composed similarly to the channel slug.
* `--after "[time]"`: Do not fetch scenes older than this period or date. Example values are: `"1 month"`, `"3 years"`, `"2019-01-01"`.
* `--scene [URL]`: Try to retrieve scene details from its official channel or network URL.
* `--deep`: Follow each release link found running `--channel` or `--network` and scrape it for more details. Enabled by default ; use `--no-deep` to only save information found on the overview pages.
#### Actors
* `--actors "[name]" "[name]"`: Fetch actor profiles. When no names are specified, actors without existing profiles are scraped
* `--actors-file [filepath]`: Fetch all scenes for the actors specified in a file using a newline delimiter.
* `--actors-sources [slug] [slug]`: Scrapers to use for actor profiles. Defaults to config.
* `--actors-update [time]`: Update actors that don't have any profiles newer than period ("1 month") or date (2020-08-01). Using this argument without a value will default to 1900-01-01, practically updating all actors.
* `--actors-scenes`: Fetch all scenes for scraped actors. Use with caution, as an actor may have many scenes.
* `--scene-actors`: Fetch profiles for actors associated with scraped scenes. Use with caution, as scenes may have many actors, each with many profiles.
#### Developers
* `--no-save`: Do not store retrieved information in local database, forcing re-fetch.
* `--level`: Change log level to `silly`, `verbose`, `info`, `warn` or `error`.
## Supported networks & sites
896 channels on 64 networks, continuously expanding!
* 21Naturals
* 21Sextreme
* 21Sextury
* Adult Time
* Amateur Allure
* Assylum
* Aziani
* Babes
* Bang!
* Bang Bros
* Blowpass
* Brazzers
* Burning Angel
* Cherry Pimps
* DDF Network
* Digital Playground
* Dogfart Network
* Evil Angel
* Fake Hub
* Fame Digital
* Fantasy Massage
* Full Porn Network
* Girlsway
* Hush Pass
* Hussie Pass
* Insex
* Interracial Pass
* JayRock Productions
* Jules Jordan
* Kelly Madison Media (Teen Fidelity)
* Kink
* LegalPorno
* Men
* Metro HD
* Mike Adriano
* Mile High Media
* MOFOS
* Naughty America
* New Sensations
* Nubiles
* Perfect Gonzo
* Perv City
* Pimp.XXX
* Porn Pros
* Private
* Pure Taboo
* Reality Kings
* SCORE
* Sexy Hub
* Team Skeet
* Teen Core Club
* Twistys
* Vivid
* Vixen
* VogoV
* Whale Member (Holed, POVD)
* Wicked
* XEmpire