Skip to content

Snazzah/slash-create-worker

Repository files navigation

/create with Cloudflare Workers

A slash-create template, using Cloudflare Workers.

Deploy to Cloudflare Workers

Getting Started

Cloning the repo

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

Installing and setting up Wrangler

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

Filling in secrets

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

Development

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.

Production

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.