https://github.com/wo0zz1/power-paint-web
NextJS application for online collective drawing
https://github.com/wo0zz1/power-paint-web
access-rules auth crdt docker email nextjs oidc react real-time ssr websockets yjs
Last synced: 13 days ago
JSON representation
NextJS application for online collective drawing
- Host: GitHub
- URL: https://github.com/wo0zz1/power-paint-web
- Owner: Wo0zZ1
- Created: 2026-02-12T09:34:03.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-06-09T14:17:49.000Z (14 days ago)
- Last Synced: 2026-06-09T16:15:01.150Z (14 days ago)
- Topics: access-rules, auth, crdt, docker, email, nextjs, oidc, react, real-time, ssr, websockets, yjs
- Language: TypeScript
- Homepage: http://power-paint.duckdns.org
- Size: 54.5 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Next.js Power Paint
## What is it?
> [Next.js](https://nextjs.org) project with an online paint application built using the Canvas API, WebSockets and Server Rendering.
## What features does it have?
- Real-time collaborative painting: Multiple users can paint on the same canvas simultaneously, and their changes will be reflected in real-time for all users.
- User authentication: Users can sign up and log in to the application via OAuth2 providers or email.
- Multiple brush types and colors: Users can choose from a variety of brush types and colors to create their artwork.
- Save and load paintings: Users can save their paintings to the server and load them later to continue working on them or share with others.
- Theme support: Users can switch between light and dark themes for a better painting experience.
- Internationalization: The application supports multiple languages to cater to a global audience.
## What about TODOs?
- [ ] Board image element
- [ ] AI image processing
- [ ] Grid pivot points
- [ ] Connectors
## How to run it?
### 1. Install the dependencies:
```bash
yarn install
```
### 2. Configure the environment variables:
```bash
cp .env.example .env
```
And then edit the `.env` file to set your environment variables.
### 3. Generate prisma types:
```bash
yarn prisma:generate
```
### 4. Run the development server:
```bash
yarn dev
```
> TIP: Make sure that you've already started other services
### 5. Build the application for production and start the server:
```bash
yarn build
yarn start
```
## Do not forget about tests!
You can run unit and integration tests using this command:
```bash
yarn test
```