Skip to content

Repository files navigation

ForgeDB logo

ForgeDB

An advanced DataBase extension for ForgeScript powered apps.

@tryforge/forge.db@tryforge/forgescriptDiscord

Contents

  1. Installation
  2. Events
  3. Updating
  4. Documentation
  5. Credits

Effortless installation


  1. Run the following command to install the required npm packages:
npm i @tryforge/forge.db sqlite3
  1. Now, in your client initialization:
const{ ForgeDB }=require("@tryforge/forge.db")/* I'm assuming that the client can be an app or anything else */constclient=newForgeClient({
...options// The options you currently haveextensions: [newForgeDB()]})

Congratulations, you have successfully connected your client to a local database.

MongoDB Installation


  1. Run the following command to install the required npm packages
npm i @tryforge/forge.db mongodb
  1. Now, in your client initialization:
const{ ForgeDB }=require("@tryforge/forge.db")// I'm assuming that the client, can be an app or anything elseconstclient=newForgeClient({
...options// The options you currently haveextensions: [newForgeDB({type: "mongodb",url: "Your_MongoURI_URL"})]})

Congratulations, you have successfully connected your client to a MongoDB database

Other Installation


Your here because you want to try other DBs. So now just follow the steps below to set up your bot to work with other DBs:

  1. You have to first install ForgeDB, so you just run this command in your terminal:
npm i @tryforge/forge.db
  1. Now that you've installed ForgeDB, you'll now have to install the DB package you want to use. Here are the ones ForgeDB currently supports:
    • Better Sqlite3
    npm i better-sqlite3
    • MySQL

      MySQL have got two versions, you can use either of them.

      • MySQL
        npm i mysql
      • MySQL2
        npm i mysql2
    • Postgres
    npm i postgres
  2. Now that you have installed your preferred DB package, now you have to connect it with ForgeDB and ForgeScript:
const{ ForgeDB }=require("@tryforge/forge.db")// I'm assuming that the client, can be an app or anything elseconstclient=newForgeClient({
...options// The options you currently haveextensions: [newForgeDB({type: "";//You've to put the DB you want to use, available: mysql, postgres, better-sqlite3, sqlite, mongodburl?: stringhost?: stringport?: numberusername?: stringpassword?: string})]})

Congratulations, you have now successfully connected your DB with ForgeDB and your client is connected to it now.

Events


  • What are DB events?

DB events are the events which get triggered when certain activities happen on your DB.

  • How are they helpful in developing apps powered by ForgeScript?

DB events are really helpful in developing apps owned by ForgeScript, as they help you in monitoring activity in your DB and improve your logs.

  • How to use them?

Now when you finish configuring your database, you will have to head over to main file of your client and you will have to type this:

const{ ForgeDB }=require("@tryforge/forge.db")constdb=newForgeDB({
...options? //The options you have for ForgeDB if you have anyevents: []/* the events you want to use.  Available: `connect`, `variableCreate`, variableUpdate, `variableDelete` */})constclient=newForgeClient({
...options// The options you currently haveextensions: [db]})db.commands.add({type: ""// Available types: connect, variableCreate, variableUpdate, variableDeletecode: `Your_Code_Goes_Here`})

Credits

Thanks for reading till the end and using ForgeDB ;)
This package was made by with love aggelos, an awesome man who develops cool ForgeScript extensions.

ContributorContributionConatct
AggelosMain developerDiscordGitHub
AdityaDescriptions for functionsDiscordGitHub
AureaMade this cool readmeDiscordGitHub
AayushFixed grammatical and spelling mistakesDiscordGitHub
KoomballImproved Readme fileDiscordGitHub

About

Elevating ForgeScript's capabilities, ForgeDB introduces an intuitive database solution. It seamlessly integrates with ForgeScript, offering efficient database management functions.

Resources

Stars

15 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages