A slash-create template, using Cloudflare Workers.
You can either use degit to locally clone this repo without git, or create a new repo from this template and clone that.
npx degit Snazzah/slash-create-worker
After that, make sure to install dependencies using npm or yarn:
npm install
# yarn
Make sure to sign up for a Cloudflare Workers account in a browser before continuing. Install wrangler with npm or yarn:
npm install -D wrangler@latest
# yarn global add wrangler@latest
Read more about installing wrangler.
Afterwards, run wrangler login
to login to your Cloudflare account with OAuth:
wrangler login
You can enter in environment secrets with wrangler secret put
, here are the keys that are required to run this:
npx wrangler secret put DISCORD_APP_ID
npx wrangler secret put DISCORD_PUBLIC_KEY
npx wrangler secret put DISCORD_BOT_TOKEN
To run this locally, copy .env.example
to .dev.vars
and fill in the variables, then you can run npm run dev
(or yarn dev
) to start a local dev environment and use something like ngrok to tunnel it to a URL.
To sync commands in the development environment, copy .env.example
to development.env
and fill in the variables, then run npm run sync:dev
(or yarn sync:dev
).
Note: When you create a command, make sure to include it in the array of commands in
./src/commands/index.ts
.
To sync to production, copy .env.example
to .env
and fill in the variables, then run npm run sync
. To publish code to a worker, run npm run deploy
.