Skip to content
This repository was archived by the owner on Dec 2, 2025. It is now read-only.

KararTY/BeFriendlier-Web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

246 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BeFriendlier

Looking to match with POG Twitch friends?

External APIs in use

Requirements

  • Production:
    • postgresql

Features

  • Website profile page.
    • Customizable background color.
    • 5 favorite streamers.
    • 128 characters bio, including 3 favorite Twitch emotes.
  • Emotes
    • Collect Twitch emotes.
    • Combine emotes to make exclusive battle emotes.
    • Battle with your matched friends using your battle emotes.
  • Leaderboards
    • See who has farmed the most emotes and become 👑🦆 (King/Queen Duck). Hosted channels have a separate leaderboard.
  • Twitch bot (Separate).

Changelogs

Setup

  • npm i / yarn i / pnpm i --shamefully-hoist to install packages.
  • Copy .env.example, to a new file named .env.
  • Change the environment values in the new .env file.
  • Check config/ directory for other configurations to change. Default config values should be sufficient for development, however.
  • If your DB_CONNECTION is not set to sqlite, make sure to create a database with the same name under DB_NAME.
  • npm run r:m:s for seeding the database with initial values. If NODE_ENV is set to development, you will also get development values to test around with.
  • npm run dev to start web server in watch mode (Reloads on file change) with debugging websocket enabled.
  • Or alternatively npm run build && npm start to build & start web server in "production" mode (No reloading on file change and no debugging websocket). That's it.

Contributing

  • Use ts-standard for linting and code style:
    • Run npm run lint to check for formatting issues.
    • Run npm run format to fix formatting issues.
  • Always create a new branch, it's recommended to not push to master.
  • Issue a pull request. Pull requests are squashed into 1 commit.
  • Pull requests should only introduce or fix one thing.
  • Use Conventional Commits specification for your commit messages. Read more here. This project mostly make use of fix/feat/chore/docs/refactor.
  • If you are creating a release in your own fork, run npm run release.

Database relationships

  • User
    • profile hasMany: Profile
    • emotes hasMany: EmoteEntry
    • favoriteStreamers manyToMany: Favorite streamers list. (Matches to other users)
  • Profile
    • manyToMany: Matches list. (Matches to other profiles)
  • BattleEntry
    • user belongsTo: User
    • battle belongsTo: Battle
  • Battle
    • battleEntries hasMany: BattleEntry
  • (Pivot) Favorite streamers list.
  • (Pivot) Matches list.

Find the database models under app/Models.

Todo

Check project page for Todo list.

About

Looking to match with Twitch friends?

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors