Git Product home page Git Product logo

discord-reputation-bot's Introduction

Reputation Bot

A light backend application for discord-server admins who'd like to provide a system where members can read and write reviews about their transaction experiences with other users.

Why I Built This

As a discord user, I noticed some servers with #review-channels where members would leave post transaction reviews for other members in a text thread, which made it difficult to find and track reviews for a specific user. I thought that adding a database would help with managing reviews as the amount of reviews in these channels increased.

Technologies Used

  • Next.js
  • Prisma
  • Discord API
  • Ngrok

Live Demo

Try the application live at https://discord-reputation-bot.vercel.app/

Features

  • User can read a review
  • User can leave a review

Stretch Features

  • Admin can delete reviews

Preview

bot-get bot-post

Development

System Requirements

  • Node.js 18 or higher
  • NPM 18 or higher

Getting Started

  1. Clone the repository.

    git clone https://github.com/anthony-urbina/discord-reputation-bot
    cd discord-reputation-bot
  2. Install all dependencies with NPM.

    npm install
  3. Install Ngrok globally.

    npm install -g ngrok
  4. Run Ngrok to expose your local server.

    ngrok http 3000
  5. Import the example database to PostgreSQL.

    npm run db:import
  6. Make a copy of the .env.example file. Name your copy .env.

    cp .env.example .env
  7. Set up your environmental variables in .env. Replace changeMe with your own credentials.

    DISCORD_APP_ID="changeMe"
    DISCORD_PUBLIC_KEY="changeMe"
    DISCORD_PRIVATE_KEY="changeMe"
    ACCELERATE_DATABASE_URL="prisma://accelerate.prisma-data.net/?api_key=changeMe
    POSTGRES_URL_NON_POOLING="postgresql://user:changeMe@host:port/db_name?schema=public"
  8. Create the tables in your database

    npx prisma db push
  9. Generate Prisma Client:

    npx prisma generate --no-engine
  10. Start the project. Once started you can view the application by opening http://localhost:3000 in your browser.

    npm run dev

Troubleshooting

  1. If you are having any issues setting up Prisma Accelerate please visit https://www.prisma.io/docs/data-platform/accelerate/getting-started

discord-reputation-bot's People

Contributors

anthony-urbina avatar solidityteam avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.