planetscale / beam
- суббота, 26 февраля 2022 г. в 00:29:52
A simple message board for your organization or project
Beam is a simple tool that allows members to write posts to share across your organization. Think of it like a lightweight internal blog. Features include a simple Markdown-based editor with preview, image drag and drop, comments and likes, search, a clean responsive layout with dark mode support, and an admin role for hiding posts.
npm install
cp .env.example .env
.env
and set the DATABASE_URL
variable with the connection string from PlanetScalenpx prisma db push
By default Beam uses GitHub for authentication, but you can use Okta if you prefer.
http://localhost:3000/api/auth/callback/github
.env
AUTH_PROVIDER
to github
GITHUB_ID
to the Client ID valueGITHUB_SECRET
to the secret value generated aboveGITHUB_ALLOWED_ORG
to the GitHub organization name your Beam members must belong toNEXTAUTH_SECRET
to a random secret. This is a good resource.To enable image uploads, set the environment variable NEXT_PUBLIC_ENABLE_IMAGE_UPLOAD
to true
.
Beam uses Cloudinary for storing uploaded images. You can sign up for a free account.
.env
with the following variables:
CLOUDINARY_CLOUD_NAME
: Cloud NameCLOUDINARY_API_KEY
: API KeyCLOUDINARY_API_SECRET
: API SecretIf you'd like to have new Beam posts published to a Slack channel, follow these instructions.
npm run dev
Open http://localhost:3000 in your browser.
One-click deploy: