#development

1 messages · Page 2024 of 1

slender wagon
#

it was showing earlier with the button btw

quartz kindle
#

overflow doesnt really matter

#

did you change display to block and opacity to 1?

slender wagon
#

ah ye

#

the display worked

quartz kindle
#

so thats what you have to do in your js

#

also instead of changing the opacity you can toggle the show class

#

so on page load, select the modal element, add the show class to its classlist and change the display style to block

slender wagon
#
element = document.getElementById("staticBackdrop")
element.classList.toggle('show')

this is adding the show class

#

when i show the modal with the button the css goes to this

#

so basically getting rid of display none and adding the display block

quartz kindle
#

yes, so add it yourself

split hazel
#

bruh c++ is cracked up its literally a variable

quartz kindle
#

element.style.display = "block"

#

like bot alerta said

quartz kindle
#

¯_(ツ)_/¯

slender wagon
#

element.aria-hidden="true";

#

trying to do this

#

it says ; expected

slender thistle
#

element["aria-hidden"]

slender wagon
#

pretty sure its from -

#

yeah

#

ty

quartz kindle
#

also, element.attributes / element.setAttribute()

wheat mesa
#

Once I started react/other templating langs I would never go back to static html/css/js

#

Makes doing stuff like that on the dom so much easier

carmine summit
#

      webhooks = await channel.fetchWebhooks();
      webhook = webhooks.find((w) => w.name === "TESdT");

      console.log(webhook);
``` am i dumb? why is webhook still an array of webhooks instead of undefined??
wheat mesa
#

const webhooks

#

Not sure if that’s your issue but js is not python, you must have a declaration keyword before the variable

#

Sometimes js screams at you for it, sometimes it doesn’t, but it should always be there no matter what

sage bobcat
#

One message removed from a suspended account.

wheat mesa
#

^

carmine summit
#

im not sure if thats gonna solve it but ill try

#

low hopes

hybrid cargo
sage bobcat
#

One message removed from a suspended account.

wheat mesa
carmine summit
#

oh wait im dumb. im editing the copy of the function

hybrid cargo
#

wait... you wrote that without a declaration keyword okeh, or did you declare webhook before this line of the code?

wheat mesa
carmine summit
carmine summit
#

ill do it once js starts screaming at me

hybrid cargo
#

I dont think your code would run without error if u dont declare webhook

carmine summit
#

ey it works

wheat mesa
#

We’re telling you that you NEED to have an identifier keyword

#

Otherwise you’ll have unexpected behavior later and you’ll wish that you spent the extra two seconds to put a keyword on each variable as your wrote them

sage bobcat
#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

wheat mesa
#

Yeah

#

Generally speaking 99% of all other langs ignore most whitespace

#

I think js has a small exception to that in some cases

hybrid cargo
#

💀

sage bobcat
#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

slender thistle
#

I mean it's not that hard to not use the same variable names

slender thistle
#

Because otherwise you get fuck-all formatting even gods would question

sage bobcat
#

One message removed from a suspended account.

#

One message removed from a suspended account.

slender thistle
#

Because it practically enforces the consistency in indentation

#

Which you should be doing regardless of whether it forces you to or not

sage bobcat
sage bobcat
carmine summit
#
amount, type = str.split(" ");
``` how do I assign amount from [0] and type from [1]?
slender thistle
carmine summit
#

using one line of code

slender thistle
#

Which lang?

carmine summit
#

js

wheat mesa
#

Why

#

Why are you still not using declarations

#

After we told you to

wheat mesa
carmine summit
sage bobcat
#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

carmine summit
#

yeah and its getting frustrating

sage bobcat
#

One message removed from a suspended account.

carmine summit
#

wasting api calls

sage bobcat
#

One message removed from a suspended account.

wheat mesa
#

Don’t use var in 99% of cases unless you know the caveats

#

Use let and const

sage bobcat
#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

wheat mesa
#

:c

sage bobcat
#

One message removed from a suspended account.

pine nova
#

why use var if u have let and const 💀

wheat mesa
#

Problem with var in js is that it’s hoisted and it’s at function scope

#

let is block scoped

#

(and const)

#

Neither of which are hoisted like var

earnest phoenix
#

Ok fuck it I'm gonna remove the var keyword from JavaScript

slender thistle
#

No balls

winter pasture
#

Oh no. This reminds me of remix.run using let for everything as it is shorter to write than const KEKW

quartz kindle
#

(i dont do it anymore tho xd)

winter pasture
#

Whenever I see a let, I instantly starts skimming thru the code to see where it was reassigned

#

It confuses me so much xD

quartz kindle
#

xDDD

winter pasture
#

So hurts readability imo

#

And the compiler will just shorten it anyways

earnest phoenix
#

Just use a linter such as ESLint, makes things way easier to control

winter pasture
earnest phoenix
#

You can also use it's recommended config derived from the repo by running npm init @eslint/config

winter pasture
#

But again, eslint needs to be used correctly (see attached meme)

quartz kindle
#

i mostly just stick to recommended, with a few personal preference additions

wheat mesa
#

Somebody save me please

#

We’re forced to do this for my web design class

#

Our teacher teaches us literally nothing

#

So he just assigns websites to do it for him mmulu

pine nova
#

lmao

crimson vapor
#

same but with AP CSP

wheat mesa
#

My history state test and my AP CSA test are on the same day

quartz kindle
#

i get that node wants fetch to be basically the same as the browser fetch, but its kinda stupid that everything else in node uses Buffer, but fetch doesnt

#

it only returns ArrayBuffer, you have to do Buffer.from(await response.arrayBuffer()) lol

split hazel
#

reliability issue

quartz kindle
#

consistency issue

wheat mesa
#

An unfortunate error regarding the components of skill

spark flint
#

I have a form that I submit with jQuery, how can I pass this file in the POST JSON ?

#

I'm getting the buffer and passing in the JSON but nothing is being recieved on the server side

earnest phoenix
#

Hello guys my bot is named "HyperX" I just put it because I like HyperX company, should i change this will it be a problem for me? I also submitted a ticket on support discord for this, but I did not get a response even after 1.5 months lol

quartz kindle
#

you dont send files with json

spark flint
#

It’s an image file

quartz kindle
#

either convert the image to base64 or use formdata instead of json

spark flint
#

I did base64, didn’t work well

#

I’ll try form data

lyric mountain
earnest phoenix
spark flint
#

how can i make these all the same height?

#

using tailwind

#
                <div class="mt-5 my-1 px-1 w-full md:w-1/2 lg:my-4 lg:px-4 lg:w-1/4 ">
                    <article class="overflow-hidden rounded-lg shadow-lg box text-center" style="cursor: pointer;" >
                        <div onclick="location.href = '/blog/81e10d5b-3f6c-4284-aefa-a66a5d84dc96';">
                        <div class=" h-32 overflow-hidden mb-3">
                                <img class="w-full" src="/assets/images/81e10d5b-3f6c-4284-aefa-a66a5d84dc96.png" alt="" />
                        </div>
                        <header class="flex items-center justify-center leading-tight ">
                            <h1 class="text-lg">
                                <span class="text-white">
                                    big buns world
                                </span>
                            </h1>
                        </header>

                        <h1 class="justify-between leading-tight p-2 md:p-4">
                            <a class="text-white text-sm leading-7">
                                
                                    welcome to my first post!<br> hello world!<br> boom shakalacka!<br> wiener??<br> 
                                
                            </a>
                        </h1>
                    </div>
                    <div class="flex justify-center items-center">
                        <button onclick="location.href = '/blog/81e10d5b-3f6c-4284-aefa-a66a5d84dc96';" class="boxbtn uppercase text-white font-bold hover:shadow-md shadow text-xs px-4 py-2 rounded outline-none focus:outline-none sm:mr-2 mb-5 ease-linear transition-all duration-150" type="button">
                            View Post
                        </button>
                    </div>
                    </ar```
stiff dust
#

Hi I want to create activity invite link any one know whats the problem?

quartz kindle
#

What is an embedded application?
It is an web application that runs inside of the Discord window

Currently supported applications(that i know the id of):
Youtube 755600276941176913
Betray.io 773336526917861400
Poker Night 755827207812677713
Fishington.io 814288819477020702
Chess in the Park 832012774040141894
Doodle Crew 878067389634314250

stiff dust
#

i know

quartz kindle
#

well if it says its not embedded then its not

stiff dust
#

the id is correct !

#

maybe I should use string?

quartz kindle
#

ids are always strings

stiff dust
#

so this is the problem 01KEKWSmile

quartz kindle
#

i didnt even notice you didnt use a string lul

stiff dust
#

lol

junior pecan
#

can i have some rest apis please

boreal iron
#

https://discord.com/api

#

There you go

split hazel
#

@quartz kindle do databases like mysql traverse through the entire data file slowly and carefully until it finds the record if it has no indexes?

#

sounds stupid but i want to make sure theres no dark magic going on

#

and so records inserted first would have better speeds than records inserted last?

split hazel
#

and do strings have hashes

#

i'd imagine so

quartz kindle
#

if indexed yes

split hazel
#

much faster to search through

#

oh so if not they're not?

#

wow thats slow

#

really shows how important indexing is

#

at first i thought its just as simple as "this thing is here"

quartz kindle
#

im not sure about non-indexed hashing

#

maybe depends whether it has UNIQUE or something

split hazel
#

collisions could be a problem

#

very unlikely but a concern

quartz kindle
#

collisions are not usually a problem because they use a hash table with stuff like separate chaining

split hazel
#

actually no i have an idea

#

if there are two same hashes they will be compared character by character

quartz kindle
#

yeah

split hazel
#

that way you're only comparing and spending time on potential candidates instead of a bunch of other strings

quartz kindle
#

first the hash resolves to the entries, then the entries are compared to the query

split hazel
#

and check the length of the string to see if you can compare the strings every 4/8 bytes instead of 1:)

quartz kindle
#

sure

split hazel
#

the optimisations are melting on my tongue

#

i learnt how slow comparing something byte by byte really is through osdev

#

even tho its graphics it still ran like a 90s computer

quartz kindle
#

xD

split hazel
#

even worse

quartz kindle
#

luckly all those low level optimisations are built into everything we use

#

like indexOf in js is stupid fast

split hazel
#

yeah

#

it probably does a bit of what i just said

#

loads multiple characters into memory at once instead of one

quartz kindle
#

yeah

#

theres a name for that algorithm i forgot which one

split hazel
#

of course some dude thought of it first and decided to put his name on it

quartz kindle
#

boyer moore algorithm

#

its usually always 2 dudes lmao

split hazel
#

how did i know it was a name

#

i might make an algorithm and name it after myself

#

the speedy algorithm

#

dont need any marketing or points the name says it all

quartz kindle
#

xD

split hazel
#

did i ever mention i wanted to do data science/ml as a career

#

until i saw the learning curve

#

even im not that dedicated

quartz kindle
#

xD

split hazel
#

really interesting

#

i constantly see tools being released that simplify it

#

meaning you dont need statistical mathematics/calculus do make a machine learning model from scratch

#

or fancy mathematic algorithms that take ages to write down

sage bobcat
#

One message removed from a suspended account.

quartz kindle
quartz kindle
split hazel
#

pretty cool

#

might make some benchmarks from scratch myself

split hazel
quartz kindle
#

im watching a video on boyer moore now, its so interesting

wheat mesa
#

learned about algorithms today in cs, I think I'm one of the few people that actually enjoys them

proven lantern
#

i just did a leetcode algorithm thingy

shy turret
#

(not related to discord bots)

would converting a string to uInt8Array() be more 'optimized' than just sending a string over? (javascript)

quartz kindle
# proven lantern

idk what that is but looks like something that would be fun to optimize even more :^)

shy turret
#

a server

#

like

#

my own

quartz kindle
#

fuck that

proven lantern
#

just use oauth

#

dont even need to make an account

quartz kindle
quartz kindle
proven lantern
#

leetcode

#

pros

quartz kindle
#

disabled it now it works

#

oh for gods sake

#

go fuck yourself

proven lantern
#

lol

#

they can get away with it

lyric mountain
#

Tim said a curse word, tim said a curse word

quartz kindle
#

ok so first attempt got 70ms on test run but 180ms on submission

proven lantern
#

i think it runs through a bunch more tests on their servers

#

otherwise people will just store all the answers in an object for O(1)

quartz kindle
#

ye i figured

quartz kindle
# shy turret websocket

internally eveything is converted to buffers anyway, but from a js side converting it to a typedarray yourself is gonna be slower

bright hornet
wheat mesa
#

I have decided that I do not want to look at that much code at once C:

bright hornet
#

iz okay

austere surge
#

why not use a cache or whatever for cooldowns

#

unnecessary data usage for the database and your internet if you use online mongodb ||-.-||

pallid zinc
#

is there anyway to get application icon (one in the discord developer portal ) with the application id?

lament rock
#

you can look on the invite screen of the app and inspect element to see where the cdn link leads. Pretty sure the application_id is part of it. Idk if the api returns the icon of the application, but just the application_id might be a no

lament rock
bright hornet
viral swift
#

How do you disable SelectMenu after a specific time?

earnest phoenix
bright hornet
#

found out a negative way, using $min 😭

#

then data.wallet -= data.wallet

proven cloak
#

How do You do that ? Like Without ANY STATUS ?

#

pls telll

#

@pale vessel

#

You Created Aeon Right ? Can you tell me How you make its Status Invisible
bc i can't see if the Bot is Online, DND or Idle

pale vessel
#

it's using the interactions webhook

proven cloak
#

how pls tell

pallid zinc
proven cloak
split hazel
winter pasture
winter pasture
acoustic reef
#

is this looking good?

pale vessel
#

remove the duckduckgo part

acoustic reef
#

was talking bout the header but ok

pine nova
#

lmao

spark flint
acoustic reef
#

think i should've centered the "Toneh" part

spark flint
#

people really show off being Topgg verified

#

put image on top

#

center text underneath

pale vessel
spark flint
#

i swear i made one once

pale vessel
#

yikes

acoustic reef
#

so

lyric mountain
acoustic reef
#

?

spark flint
#

whats the point of saying "duckduckgo enthusiast"

lyric mountain
#

it's just a joke cuz windows also sells ur data

spark flint
#

thats like me saying "Discord user"

acoustic reef
earnest phoenix
spark flint
#

Developer, Gamer, <something>.

#

whats something you like to do

acoustic reef
#

kinda like designing

spark flint
#

Developer, gamer, aspiring designer.

dry imp
#

im a google enthusiast

split hazel
#

like disabling ternary data beyond what you can disable

#

and if you want windows to be more respecting than that you gotta use a local profile not a microsoft account

#

they're making that a lot harder by putting it in tiny letters at the bottom with a confusing name

#

apparently some editions dont even have that option

#

i have a pro license so i have that option

cinder patio
#

everything's selling ur data there's no point in trying to avoid it at this point

split hazel
#

time to hop on linux

radiant kraken
#

not everything

#

most of the things people commonly use and the vast majority of the internet is

cinder patio
#

I'm talking about products here not open source stuff

split hazel
#

i would get linux on laptop but im kinda locked to a windows os because i have a surface pro and linux most likely doesnt have the software i need

cinder patio
#

and 99% of the time you're not using an open source tool or app or whatever

radiant kraken
#

if it's not open source then it's likely to have money involved

split hazel
#

data is digital gold

cinder patio
#

there are free apps that are not open source... chrome

#

discord

split hazel
#

hop on chromium

split hazel
cinder patio
#

websites are also in this category

split hazel
#

uh

cinder patio
#

youtube, facebook, twitter, etc.

split hazel
#

brave?

#

lmao

#

i love brave but hate its focus on crypto

#

crypto is too risky for me im not dipping my fingers in it

cinder patio
#

I mean crypto enables better privacy in some ways

split hazel
#

yeah not this which is permanently embedded in your search bar

boreal iron
#

Also to manipulate group policies, block feature updates, telemetry, stop auto restarts etc

#

That’s the cool thing with Windows 10, nothing is hardcoded

#

And if you go to combine that with a pihole things are going to be very good in terms of privacy

viral spade
#

Hello, i am using discord.js 13 and have a question regarding sharding and database connections.

Currently i have 80 shards running, all using their own connection pool to a single mysql database. As i cache a lot of results, the database usage of every shard goes down after start. So at some point i have way more connections than needed, which takes a lot of ram on the database vps.

Now i would like to tunnel all db requests through the sharding manager's connection pool (is this a good idea?), but i can only find a broadcastEval function, where i can send messages to all shards. Is there a way to request-response (with async await) from one shard to the shardingManager only? How is this done?

bright thorn
#

I want to delete all object in side a array
How can i ?

#

Its mongodb

pale vessel
#

set it to an empty array

bright thorn
#

And i want only object 0 inside array

#

$set

#

is this

austere surge
#

i think set yea

bright thorn
#

not replace

#

set can delete?

#

Its craeted an other object

#

which is null

#

i want delete all object except 0

boreal iron
bright thorn
#

👍

final mica
#

Just a quick question, can I do this somehow in an one liner?

x = str(guild.bans)
return len(x)
split hazel
#

easy as that

final mica
#

Ah, god damn, I just used that in another command and didn't think about it here, ty lmao

pale vessel
#

python

lament rock
pale vessel
#

it's also a great way to check what intents a bot has, assuming they have the "add to server" button set up

final mica
slender thistle
#

len(string) what

quaint rampart
#

how would one wait for this function to return? idk im new to callbacks tbh

async confirmationCollector(embeds, interaction) {
        ...

        await collector.on('collect', async i => {

            if(i.customId === row.components[0].customId) {
                return true
            } else if(i.customId === row.components[1].customId) {
                return false
            } else if(i.customId === row.components[2].customId) {
                return null
            }

        })
    }

how im calling it:

const confirmation = await client.utils.confirmationCollector(...)
console.log(confirmation)
split hazel
#

its a bit more complicated doing that with a callback but im pretty sure there is an async version of the collector you want to use

#

what are you collecting?

quaint rampart
#

button interactions

#

from discord.js

split hazel
#

you would do something like

const i = await message.awaitMessageComponent({ ... });

if (i.customID...) { ... }
#

then your returns would work as expected

quaint rampart
#

ah thanks that helped a lot

#

never noticed that in the doc was it added in v13? or was it always there

lament rock
#

v13 is the only version with Interactions iirc

split hazel
#

i've been sitting here for an hour and a half trying to get this unsafe c code working

#

i am going insane

#

this is like operating system development all over again

proven lantern
#
We have extended the deprecation period for message content by an additional four months. The new deadline is now Wednesday, August 31, 2022, with enforcement starting on Thursday, September 1, 2022. During this time, we’re going to be educating users actively on Slash Commands, from content in our marketing to in-app indicators and prompts.
lyric mountain
#

I could swear that was a scam

#

idk, the avatar feels off

boreal iron
#

That has been announced weeks ago already

vivid fulcrum
#

they're going to extend it again in a few months

#

because slash command adaptation is low

#

slash commands are not stable enough to be the major way to invoke commands

#

especially with slate2

boreal iron
#

I mean they are still missing features they announced in the beginning

#

Like sub command grouping in the UI

#

I would also like to see a date picker

#

(as field type)

proven lantern
#

autocomplete is needed for modal fields

boreal iron
#

As well as other field types than text input in modals

#

Etc

proven lantern
#

slash command permissions

boreal iron
#

Everyone would then probably prefer to open a modal when using a command

proven lantern
#

i was going to replace most of my commands with modals, but it's missing too many features

#

also needs array input

boreal iron
#

Yea

#

I don’t like to verify any input string to match my data type I want

#

Also simple check boxes would be neat

#

But as cry said…

#

I doubt at this development speed we will see these features in 4 months

lyric mountain
#

at this point I doubt discord will even enforce slashes (go ahead with message intent)

#

it'll probably be just another "one day" implementation

lament rock
#

Discord's docs for slash commands also suck so badly

#

I was so fucking confused about how booleans are sent since the field for value only says string, int or double but when I asked, they said it's also sent as boolean

simple stump
#

Is it possible to wait for CSS and/or JavaScript to load when making HTTP requests? I'm using Puppeteer and looked up quite a few tutorials on improving the load time, but the hoster I'm using (specifically a VPS) only has 2 GB of RAM, so regardless of how much I improve the load time of Puppeteer it's not really possible to speed it up enough. TLDR, can I make HTTP requests and wait for CSS or JS to load?

lament rock
#

css and js files are requested independently from the html, if it exposes a page ready event or render or something that would intrinsically imply what you're looking for, then that would be great. Otherwise, you'd have to wait for someone who actually knows or dig through source code

boreal iron
wheat mesa
#

You learn something new every day

boreal iron
#

So… length isn’t counting the items but returning the private property?

white anvil
#

length is a property not a method you are correct

split hazel
#

why is c++ so slowwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwvwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

#

i swear they've chosen simplicity over performance

#

look at this

#

this is disgusting

#

c is over 2x faster in file reading and seeking

vivid fulcrum
#

just put everything on the stack!

split hazel
#

if you didnt notice sherlock i put the data buffer on the stack and not the heap

split hazel
#

who wouldve known a segfault in unsafe code

lament rock
#

the same way you can access members of Objects, you can do to most things including primitives when they're assigned to variables

quartz kindle
#

but i dont like their measurements

#

i finally got something that works but every time i run it the measurements are very different, without any code changes

proven lantern
quartz kindle
#

yeah took me a hell of a long time lmao

proven lantern
#

i started doing another problem this morning

#

then i gave up

quartz kindle
#

rip

proven lantern
#

i'll finish it later

quartz kindle
#

im gonna benchmark this myself to see what the real numbers are

proven lantern
#

the js engine is too tricky

quartz kindle
#

yeah i really dont like their measurements

proven lantern
#

it likes to optimize

quartz kindle
#

look at this

#
var findMedianSortedArrays3 = function(nums1, nums2) {
    const a = [...nums1, ...nums2].sort((a,b) => a - b);
    const x = a.length / 2;
    return Number.isInteger(x) ? (a[x-1] + a[x]) / 2 : a[Math.floor(x)];
};
#

this gives me 1300ms at 1 million iterations in dev tools

#

in their website it gives 180ms

#

my latest code gives me 25ms at 1 million iterations in dev tools

#

their website gives it 100ms

#

another code i tried gave me 125ms in dev tools, and 170ms on their website

proven lantern
#

doesn't this break O(log(m+n))

const a = [...nums1, ...nums2].sort((a,b) => a - b);```
#

the sorting

quartz kindle
#

yeah, i did it to test if they actually measure performance correctly

#

doesnt look like they do

proven lantern
#

lol

#

whoops

#

i never even tried that

quartz kindle
#

the code with sort is almost 100x slower compared to the more optimized code on dev tools, but on their website its barely 2x slower lol

proven lantern
#

they have quantum computers

quartz kindle
#

xD

#

also memory usage for this kind of test is useless in js

#

this kind of tests are really made for C langs, not js

proven lantern
#

oh cool

#

yeah i can see it

pallid zinc
lament rock
quartz kindle
#

@proven lanternyeah this is really stupid

#

i looked up some solutions that people post in discussions

#

look at this

#

just ran this and it gave me 108ms lol, but dev tools gives me 1000+ms, aka still 100x slower than my code

wheat mesa
#

why do people not use arrow functions?!

#

merged.sort((a, b) => a - b)

#

come onnnn

proven lantern
proven lantern
#

he thinks they look too much like comparisons

quartz kindle
proven lantern
#

i disagree with him though

quartz kindle
#

no way in hell this is fast

wheat mesa
#

it's the jsdoc that makes it fast mmLol

proven lantern
#

yeah, their website it broken

quartz kindle
#

people be thinking their code is fast af and gonna try use it in real world

#

rip

quartz kindle
proven lantern
#

nope

#

i can send it over if you wanna try it out

quartz kindle
#

sure

proven lantern
#

giant

#

i'll delete it once you copy it

quartz kindle
#

done

#

array concat + array sort solution: 1000ms
your solution: 40ms

proven lantern
#

lol

#

nice

quartz kindle
#

indeed, also makes much more sense

#

i got 125ms with my first solution, then 25ms on the final one

#

now i can finally sleep lmao

#

been breaking my head over this for 2 days

proven lantern
#

lol, those problems are addicting

quartz kindle
#

yeah but not such hard problems

#

i like simpler problems

proven lantern
#

you handled like every base case possible

quartz kindle
#

these are too hard

quartz kindle
proven lantern
#

i like this part

quartz kindle
#

xD

wheat mesa
#

stupid question: is there an easy way to get rid of this annoying horizontal scrollbar on my website? Currently using react + mantine + nextjs

pale vessel
#

find the element that caused the website to overflow

#

and try activating windows, that might also work

boreal iron
#

Aye… buying a key for $3 on eBay will solve all your issues

pine nova
#

or just apply on the element that causing overflow

pale vessel
#

no

pine nova
#

💀

pale vessel
#

that's a duct tape solution...

#

there's something wrong with the measurements or the content is too long (with no word wrap)

pine nova
#

i mean he wanted to remove the scrollbar i gave the easiest solution

#

🗿

wheat mesa
#

I found the issue, I'm fixing it right now

#

I'd like to avoid duct tape solutions lol

lament rock
#

You'll have fun making "reactive" apps for mobile if you design to your screen's specs, so using percentages is the better option if you want a consistent style across all devices

wheat mesa
#

This is just a portfolio website for myself, I'm not worrying about supporting mobile atm

#

Mainly using it to learn nextjs and react

#

I'm really liking the modularity that react provides

#

And how easy it is to define routes/pages with nextjs

bright hornet
#

when i change their positions, even there's a data in database, it keeps calling the 10,000 and 15,000

#

fixed

dry imp
#

you're welcome

bright hornet
#

LMAO XD

slender thistle
#

No need to thank me

bright hornet
fresh lagoon
#

hello

#

i was uploading my bot

#

like

#

rn

#

but i need to have top.gg invite link

#

does anyone know how do i get that?

winter pasture
fresh lagoon
#

966764448939393084

winter pasture
fresh lagoon
#

noon

#

u dont get me

#

do i need to add

#

Top.gg Server URL

The Top.gg link for the main community or server associated with your bot.

winter pasture
#

Nah, that’s optional

fresh lagoon
#

kk

#

submitted

winter pasture
fresh lagoon
#

i already linked the support server in the

#

submit appeal

#

or however it is called

#

cuz my native language isnt english

#

as i said submitted 👍

winter pasture
#

I see it here now. A bot reviewer will have a look at it within a week or so

fresh lagoon
#

O-O

#

lol

#

thas a while

winter pasture
#

Normally it goes a lot faster. But yeah, we get hundreds of bots each week that we all manually review

winter pasture
#

We got strict guidelines to provide a high quality curated bot list

fresh lagoon
#

lmk when u can review it

#

it would be my pleasure

#

to guide u in

#

btw have a nice day

winter pasture
#

Sounds good. Enjoy the rest of your day

gilded plankBOT
#

If your bot is approved:
You'll get a DM from @gilded plank and you'll be assigned the <@&265125253443878912> role here.

If your bot is declined:
You'll get a DM from @gilded plank and you'll also get a ping in #mod-logs.

💡 Please make sure you have your DMs activated for this server.

fresh lagoon
#

same

#

btw

#

some of the commands are broken

#

in the bot

#

does that affect anything

#

in the submission?

winter pasture
#

As long as the majority works and the main functionality of the bot is also working your good

tulip cradle
#
Error: Could not locate the bindings file. Tried:
 → /home/container/node_modules/better-sqlite3/build/better_sqlite3.node```
spark flint
#

What is the best way for me to get all servers my bot shares with a user from a user id?

#

Discord.js

slender thistle
#

A loop with a condition for logging I'd say

spark flint
#

Alrighty

#

It’s because at the moment I detect when on userUpdate when an accounts name/pfp changes to a discord scam one (modmail, hype squad etc), and I need to ban them from all servers they’re in with the bot

pearl trail
#

forgor should it be ([_, v]) or (_, v)

quartz kindle
#

youll have to fetch the member on each guild

pearl trail
split hazel
#

i am slowly losing my sanity segmentation fault by segmentation fault with c

rustic nova
#

is there like no way to actually pass docker-compose env variables into volumes?

#

nevermind figured something out

quartz kindle
pearl trail
#

code i sent only works if guild member intent enabled or unless all people cached after they send a message

pearl trail
#

pepe_glass a sec

#

dang my bad

earnest phoenix
pearl trail
#

it should be ([v, _])

spark flint
earnest phoenix
#

Oh wait that error is thrown from the second part I suppose

pearl trail
spark flint
#

got it working with that

pearl trail
#

hm

#

oh, yeah. afaik it's [Snowflake, Guild]

boreal iron
quartz kindle
#

why are you even doing that

#

just do .filter(guild => guild.members...)

#

no need for (v,_) or any of that

#

.filter and .map iterates over values not over entries

spark flint
pine nova
#

💀

stoic eagle
#

How can I set my Bot's prefix as bot mention

pallid zinc
wheat mesa
#

I don’t think that was the question but yeah

pallid zinc
#

Ig he meant prefix as bot ping

split hazel
#

how do i use the mongusdb database

pearl trail
winter pasture
split hazel
#

not mongodb

#

mongusdb

winter pasture
#

Wtf is that 😂

lyric mountain
astral cape
spark flint
#

yes

astral cape
spark flint
#

Made by @solemn latch

#

a mod

astral cape
#

ok thank you

pallid zinc
boreal iron
#

Don't need to cover nicknames anymore

lyric mountain
boreal iron
#

hmm maybe not on v10

#

Idk just copied it off the dev portal

lyric mountain
#

Who even thought it was a good idea to begin with?

pallid zinc
boreal iron
sharp saddle
split hazel
#

too late im already making a database

boreal iron
#

🤦‍♂️

quartz kindle
#

from scratch

#

in C

#

speedySQL2

split hazel
#

no sql

#

json

boreal iron
#

lmao

quartz kindle
#

speedyjasondb

#

jason speedees db

split hazel
#

well it uses json to send/receive data but the underlying data is stored in a raw binary file

quartz kindle
#

gonna use msgpack?

split hazel
#

wot

quartz kindle
#

a binary serializer

#

speaking of which i still havent released mine lel

split hazel
#

is it just a way to serialise data to a string

quartz kindle
#

to binary/buffer

split hazel
#

that works too

#

except my database side parser uses nlohmann json

#

not the fastest but the simplest

quartz kindle
split hazel
#

might switch to a faster one in the future

quartz kindle
#

msgpack is the most popular binary serializer (not necessarily the best tho), it has implementations in dozens of langs

split hazel
#

so it can kinda encode data into smaller sizes right

boreal iron
#

soon 'speedypack'

split hazel
#

guess what

#

my db support dynamic string lengths

#

even tho it kills a lot of the performance potential in seeking for data

#

because it has to read the header of the record to see the size of it

quartz kindle
#

for example it doesnt waste bytes for non-data characters in json such as " and }

#

it encodes numbers in their proper binary formats instead of string

#

its schema-less so you dont need to define schemas beforehand like you do with protobuff or avro

simple stump
#

How would I change every user's nickname in the server while waiting if the bot is getting rate limited? I have 1.4k members in a server and the bot get's rate limited every so often. I have this bit of inefficient code that loops through all the members and get's their nickname, but the bot get's rate limited after around 20 members.

guild.members.fetch().then(members => {
  members.forEach(async member => {
    await message.guild.members.fetch(member.id).then((member) => {
      if (!member.displayName) {
        console.log("Couldn't get " + member.id + "'s display name.");
        return;
      }
      if (member.displayName.includes("[") && member.displayName.includes("]")) {
        let memberNick = member.displayName;
        let splite = memberNick.split(" ");
        member.setNickname('[1000] ' + splite[1]);
        console.log(member.displayName + " -> " + '[1000] ' + splite[1]);
      }
    });
});

The goal is to change every user's nickname to [1000] <some_string>. Currently, some user's have their nickname as [1023] Eltik, or something similar to that. So now, I want to change it to [1000] Eltik.

(btw i made this bit of code a year ago lmao)

quartz kindle
#

and depending on the implementation it can be a lot faster than json

quartz kindle
#

use for(...) { await ... }

simple stump
#

Ah so something like:

guild.members.fetch().then(members => {
  for (let i = 0; i < members.length; i++) {
    let member = members[i];
    await message.guild.members.fetch(member.id).then((member) => {
      if (!member.displayName) {
        console.log("Couldn't get " + member.id + "'s display name.");
        return;
      }
      if (member.displayName.includes("[") && member.displayName.includes("]")) {
        let memberNick = member.displayName;
        let splite = memberNick.split(" ");
        member.setNickname('[1000] ' + splite[1]);
        console.log(member.displayName + " -> " + '[1000] ' + splite[1]);
      }
    });
  }
});
quartz kindle
#

no, members is a collection, not an array

#

you can do for(const member of members.values())

simple stump
#

Oh ic. Ty

quartz kindle
#

also, it would be better to use await for everything

#

fetched = await members.fetch()

#

as well as await member.setNickname()

simple stump
#

Alright I'll do that 👍 For changing all 1,000 members would the bot just take a while to finish changing all the nicknames, or would it just stop midway through?

quartz kindle
#

also you dont need to fetch the member again

#

you already fetched all members

simple stump
#

oops i just noticed that ty.

quartz kindle
#

djs will take care of adding the proper delays for you

#

as long as everything is awaited

simple stump
simple stump
acoustic reef
#

MySQL best database !!!

civic scroll
#

💀

boreal iron
#

we probably need some exorcism in here

civic scroll
#

man

#

relational database isn't always the way

acoustic reef
#

sheesh

split hazel
slender thistle
#

OurSQL

acoustic reef
#

yes

split hazel
#

it was just a server based sqlite3 rip off

#

literally just sqlite3 databases under the hood and you sent in sql queries

sick agate
wheat mesa
#

on the off chance anyone has used react with mantine here: jsx const Home: NextPage = () => { return ( <> <BasePage title={"Home"} logoText={"WaffleDev"}/> <Grid> <Grid.Col offset={2} span={3}> <ProjectShowcase name={"something"} githubLink={"something"} description={"something"} imageLink={"something"} /> </Grid.Col> </Grid> </> ) } Something is wrong with the Grid.Col element, it's giving a padding of -8px which causes the div to overflow by 16px and give a horizontal scroll bar

#

(I know it's an issue with the Grid.Col element, if I remove the content within the Grid.Col, the issue persists, and if I get rid of all the columns the issue goes away)

toxic jolt
#

guys i how fix this problem

wheat mesa
spark flint
#

what would be best way to check if a paypal.me link is valid with nodejs?

winter pasture
spark flint
#

I mean like

#

check if its a real username

winter pasture
#

I guess add a check that aligns with PayPal regarding length and valid characters after the / too lol

spark flint
#

It returns http 200 regardless of valid link or not yikes

winter pasture
#

I mean, why is it needed? How do you deal with PayPal being down for a few minutes

#

What about anti ddos/bot technologies

spark flint
#

I was hoping there was an api for it or some shit OMG

winter pasture
#

Nah. There definitely is one internally, but nothing public that I’m aware of

spark flint
#

ah ok

winter pasture
#

(Used to work for PayPal)

spark flint
winter pasture
winter pasture
spark flint
#

does the login with paypal bit allow me to get client id and secret?

winter pasture
spark flint
#

I mean for when I want to use Paypal express checkout

#

afaik i have to have their client id and secret for payments to go to their account

#

either that or just make the donate button lead to their paypal.me page

winter pasture
spark flint
#

ah ok

winter pasture
#

You would need to read the docs unfortunately

spark flint
#

am trying to lol

#

i'm not very good at understanding docs KEK

winter pasture
#

PayPal docs are so confusing imo

spark flint
#

yup

#

djs docs are my fav

#

easy to read

winter pasture
#

Seems like they have redesigned it a lot. But not close to Stripe

winter pasture
sharp geyser
winter pasture
sharp geyser
#

True

winter pasture
#

It also does not prevent spelling mistakes where the spelling will resolve to another user

sharp geyser
#

Mmm yea

winter pasture
#

What I would have done tbh, check if the URL matches the PayPal requirements (starts with, length and invalid characters) and just ask the user to double check their entry 🤷‍♂️

spark flint
#

its irelevant whether its their page or not, I just hoped to add some validation to ensure their page is correct and leads to a valid user

sharp geyser
#

Well this seems like something beyond your control at this point

#

Also what does it matter if it is a valid user anyway? What are you doing this for?

spark flint
#

Donation pages, and it will have Stripe too

#

I originally hoped to be able to use paypal checkout with email addresses, but its not possible

sharp geyser
#

Honestly if you are doing donation pages just integrate with paypal oauth2

#

That is what nearly everyone does

#

This way you can be a lot more certain they are a valid user

wheat mesa
#

If you’re trying to confirm if something is a valid user is there not an api GET call for a user page that returns a 404 if it doesn’t exist?

spark flint
#

nope

#

sadly not

#

well not public anyways

wheat mesa
#

What does a user link look like

spark flint
#

https://paypal.me/USERNAME

sharp geyser
#

Seems like returning a 200 status code on a unsuccessful getting of a user seems like bad practice for a platform that allows developers to interact with it but idk

spark flint
#

yeah

#

i tested with random spam as the username and it returned 200 even tho i confirmed it was invalid

sharp geyser
#

Though this does seem a bit pointless as it is unlikely someone will just spam something and if it does happen so what?

wheat mesa
#

just add ratelimits and move on

#

I'm sure if you really cared enough you could scrape the html to validate but that's just stupid to do

split hazel
#

@quartz kindle haha speedydb / mongusdb is on the rise

#

still considering using that library you suggested

#

(< 1ms time taken to process + receive data with no compiler optimisations)

#

even tho its simple numeric data atm its a sign

#

i've optimised the database to ignore advanced certain features that arent needed when dynamic data (strings) is not present in the table

#

and hashing is automatically done only if the string is long enough

sharp geyser
#

Any idea on how I can get the "Click me" to go below everything?

#
      <Container style={{minHeight: "85vh", display: "flex", margin: "auto", alignItems: "center"}}>
          <div>
              <Avatar className={'mr-5'} radius="lg" size="xl" src="https://imgs.search.brave.com/Q1JPL__FReDNKqetfnrYnBMKYs-uB8OwCnE6G55y7LE/rs:fit:1200:1200:1/g:ce/aHR0cDovL3dhbGxz/ZGVzay5jb20vd3At/Y29udGVudC91cGxv/YWRzLzIwMTcvMDEv/RG9nLWZ1bGwtSEQu/anBn" />
          </div>
          <div>
              <h1 className={'text-2xl'}>Hello I'm Aaron and I'm {age}</h1>
              <p className={'text-lg'}>I'm a small time developer who enjoys working on random projects. I also love nature and watching MacGyver.</p>
          </div>
          <div style={{display: "flex", flexDirection: "row"}}>
              <Button>Click Me</Button>
          </div>
      </Container>
#

Rn this is how everything looks

#

Everything is in their own divs inside a Container element

#

and that container element has its own styles where I make it have display set to flex

split hazel
#

instead of telling you what to do individually i'll give you a plan

#
  • make a parent div and make it display flex with flex direction row (include the aligning items)
  • make another div and place "hello im..." and "im a small time developer..." inside it
  • after the above div place the button
#
<div style={{display: "flex", flexDirection: "row"}}>
    <Button>Click Me</Button>
</div>

has no effect whatsoever because there is only one element inside of the div (and it wont solve your problem)

#

@sharp geyser

sharp geyser
#

Mmmm alright I will try that

split hazel
#

play around a bit with flexbox and you will master it trust me

sharp geyser
#

Yea I am rather new to actually doing my own css and plus it is limited to what I can actually do with a lib it seems

quartz kindle
#

what are you using for storage?

split hazel
#

also the second div is not necessary just in case you wanted to do some extra styling with it

split hazel
#

the c++ one is 2x slower (did a benchmark)

quartz kindle
#

a single giant file or multiple files?

#

how are you organizing the data?

real rose
#

MacGyver though >>>

split hazel
#

for now there are 2 files in a directory (table), one file holds the table header which describes the names of the columns and their types and a second file which holds all of the data, each record (row) prefixed with a header describing the sizes of the data held in columns + a size of the entire record to skip over it easily

sharp geyser
#

:^)

split hazel
#

only problem is to save space i made the record header structs packed which basically tells the compiler to not add padding between fields to prevent unaligned memory access and i got 3 warnings complaining about that

quartz kindle
#

dynamic row size?

#

interesting

#

you still need to iterate over rows no?

split hazel
split hazel
#

only disadvantage is there is basically no room for a longer string unless the user has shortened it by updating the record and so the record needs to be relocated to the end of the file, leaving a gap in the records

#

im surprised still modern operating systems havent figured out a way to insert data between existing data in a file

quartz kindle
#

typically in order to support dynamic content size with best performance you would use pointers

#

each table row would be fixed size and its non-fixed contents would be pointers to a dynamic sized data located somewhere else

split hazel
#

yeah thats what i was thinking too

#

otherwise its slow and inefficient running around the table having to read a header to skip to the next record

#

i'll keep that in mind for my next revision

#

but then another issue is that - you have to read from another file and keep the pointers updated if you were to move things around in the file to maximise space (unless they both point to each other)

wheat mesa
#

anyone know how to get an svg background image to stay at the bottom of the page even when scrolling?

#
body {
  padding: 0;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
    Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-image: url(../public/background.svg);
  background-repeat: no-repeat;
  background-position: bottom;
}
``` this works for me, but only when there's no vertical scrolling
#

Not to mention it cuts off the bottom of my background color

#

Nevermind I have a different issue now

#

Ok so does anyone know how to make body extend through the entire height of the page? It's only extending to the viewport height, but I need it to extend to the whole thing

quartz kindle
split hazel
#

yeah

#

i just tested the database under a little load and it works great

#

(also found an issue in my tcp group splitter mechanism under load)

#

inserted 1000 different records with 3 columns, one being a string

#

it performs very fast, the hash seems to be doing its job

quartz kindle
#

what kind of hash are you using?

split hazel
#

just the standard one that comes with c++

#

dont like the std::string overhead with it tho

#

if it matches i load it and use strcmp on it

#

you see loading a whole column/record into memory for no reason would be a waste

quartz kindle
#

there are dozens of third party hashers for cpp lel

split hazel
#

also the data file is 60kb

quartz kindle
#

most of them are faster than std::hash

split hazel
#

i'll have a look into them too

#

one at a time tim

quartz kindle
#

xD

split hazel
#

and before even comparing the hash or string it first compares the lengths from the 5 byte header thats loaded on every record search

#

well not 5 byte

#

more like 21 bytes since each column adds an extra 4 bytes to the header#

#

what hashing algorithm would you suggest?

#

doesnt even have to be 64-bit

#

in fact the saved 4 bytes would be nice

#

collisions dont matter all that much but would be preferred if it was avoided

pearl trail
quartz kindle
wheat mesa
bright thorn
#

am hosting my bot and website in same vps both are in nodejs
so if my bot cross 10 k guild i have to made one more cluster for shards so thats mean i need to create one more flask?

quartz kindle
#

is the website running inside the bot?

#

like is flask in the same file?

raw nest
#

I have an ExpressJS server and a config.json file for all configs. Can the user somehow read the config.json file if it makes a request per url in the browser and then in the devtools??

austere surge
#

see yourself

#

they might be able to

stable eagle
#

Up to how many servers is 1gb ram enough for hosting?

solemn latch
#

It really depends.
You can stretch 1gb really far with a cacheless(or near cacheless) bot.

lament rock
#

or by not using Discord.js

cinder patio
#

you should get a cheap server until your bot grows and needs more resources

solemn latch
lament rock
#

module import strings are what took up the most memory in my bot

solemn latch
#

👀 I don't think I've ever seen my djs bots use 180mb of memory

lament rock
#

wtf how

austere surge
#

my bot is apparently using 0% mem and cpu atm

solemn latch
#

I'll check when I get home, but I had maybe 10-15 djs bots on a 1gb machine at one point. I dont think that's normal to have so much memory usage with the library.

lament rock
#

If you wanna see meme memory usage, this stats page of my bot (not currently posting) shows when I started on djs v10 and v11.
https://amanda.moe/to/stats

austere surge
#

random drop and increase of servers ?

lament rock
#

shard dropped and missed a report window

austere surge
#

ok

lament rock
#

or that was Discord shitting itself

#

probably both

austere surge
#

what about the users lmao

#

just dropped

lament rock
#

I migrated from redis to postgres at that time

austere surge
#

ok

lament rock
#

my redis instance was dying so hard

austere surge
lament rock
#

I haven't reported to the stats page in 3-4 months

solemn latch
#

👀 what happened here

austere surge
#

diead

lament rock
#

Moved away from actual Discord.js to a cacheless version of Discord.js I made (now being deprecated lol)
When stats start to post again, I'll just be interacting with raw api

solemn latch
#

Oo

#

I've only done a few things with the raw api, it's fun.

lament rock
#

You'd like some modules by DasWolke on github then

winter pasture
raw nest
#

I have a Discord Bot Dashboard.
I'm saving actions with the user_id and username#disc
now if the user changes his username or dics how can I get this? I was thinking about only saving user_id and then fetch but that would probably exceed the rate limit... Any suggestions

winter pasture
#

Use the userId as index/lookup as would never change. But also store userName+Disc as a local cache and if there is a mismatch when a new entry gets added, just update the local userName+Disc

#

You could also have your own local cache / ratelimiter that gets passed a userId and returns a username. So it uses the cached userName+Disc for X amount of time, and if it’s expired refresh it within your rate limit check

raw nest
#

aight thanks

quartz kindle
#

raw api gang

split hazel
#

@quartz kindle i want to run a shit ton of queries at once for my db but tcp is being an asshole and idk how to solve it other than add a 5-10ms delay between sending data

#

basically like a massive group of packets get grouped together, which is fine my db can handle that but i think it eventually starts splitting a single packet in half and puts it in another one and so my database kills the connection because it detected an "incorrectly formatted" packet

#

the packet sizes just get too large

#

you dont know whether someone is maliciously sending too many packets or if it is done by grouping

#

dont know how to solve it

#

waiting for another query to complete? a "maximum concurrent" queries count before the client starts throttling?

#

god how do people live with tcp - yeah yeah its a stream connection but at some point too much becomes too much

split hazel
#

finally when the file is at 1.7mb it starts slowing down significantly on empty queries

#

funnily enough string search perform a bit faster than number searches because the strings arent loaded because of the length

quartz kindle
#

if you get a split packet in a tcp message, you store it away and assemble it when you receive the next tcp message, only when you have the complete packet you can do anything with it and decide if its valid or not, and parse it/send it anywhere

#

you cannot detect maliciousness on a tcp level that easily

earnest phoenix
#

I have a bot that blocks words, should I keep a whitelist folder that only I can edit inside the db or in a txt file?

split hazel
#

literally on the verge of just using udp and using a checksum to verify the message

tulip cradle
split hazel
#

it's an object now so like setFooter({name: "", value: ""})

earnest phoenix
#

You can use like .setFooter({ text: 'sometext, iconURL: 'someURL' })

pine nova
#

not name

#

name is in author

split hazel
#

I haven't used djs in over a year cut me some slack lol

pine nova
#

setAuthor

earnest phoenix
#

.setAuthor() have name

pine nova
#

ye

split hazel
#

I stopped developing bots altogether

tulip cradle
#

It works in vscode perfectly fine

earnest phoenix
#

But its deprecated

split hazel
#

you should load it all into memory anyways so the performance won't matter

earnest phoenix
split hazel
#

you will put all of the bad words in a variable anyways so the speed of both doesn't matter

earnest phoenix
#

oh okay

wheat mesa
#

it is 99 times out of 100 a very bad idea to keep using deprecated things

tulip cradle
wheat mesa
#

I know

tulip cradle
#

Solution?

wheat mesa
#

It's deprecated right now, which means it will likely not be supported for much longer

tulip cradle
wheat mesa
#

There was like 20 people that gave you solutions

#

Ah nevermind that was for the wrong thing

pine nova
#

💀

wheat mesa
#

.setAuthor({name: 'something', url: 'some url', iconURL: 'discord avatar url'});

tulip cradle
wheat mesa
#

The last two are optional. You only have to give it the name

tulip cradle
#

I using same things

wheat mesa
#

You're using .setAuthor('iconURL', 'URL')

tulip cradle
#

No

#

Weit

tulip cradle
#

I said it works on vscode perfectly fine the problems is on vps

spark flint
#

make sure you're using the same version everything

#

like same node version, same djs version

#

etc

tulip cradle
#

Same node

wheat mesa
#

Your vps does not automatically update your code for you

tulip cradle
#

Same code same node same npm

wheat mesa
#

Then you're not running the same command that's causing the issue

#

You need to update it to the new stuff

tulip cradle
#

Slash cmd

#

Bruh

wheat mesa
#

Do not keep using deprecated methods

tulip cradle
wheat mesa
#

Then you're not using the same djs version

#

If you're not getting a WARNING in your console

tulip cradle
#

No

wheat mesa
#

Show your package.json on your vscode version

tulip cradle
#

W8 i am mobile

#

On

quartz kindle
#

you have two different warnings

#

so you have to update your code for both of them

wheat mesa
#

again, the warnings have given you something to fix, and we gave you the solution to it

#

I'm not quite sure why you're not changing it mmLol

quartz kindle
#

btw djs latest version is 13.6 you're using 13.1

boreal iron
#

node-fetch 2

tulip cradle
#

?

boreal iron
#

I know which error will blob up next after he updates the packages

tulip cradle
#

which

boreal iron
#

You might wanna stay on version 2.x

tulip cradle
boreal iron
#

It has been converted to an esm package

#

iirc with v3

wheat mesa
#

Does anyone have any free/really cheap hosting services for react apps? I don't need anything fancy, I want to host my portfolio website once I'm finished making it

#

(And I'm a student if that opens up options for services that provide educational packages)

pallid zinc
#

Replit

#

1 year free for students KEKW