Canvas

2297 readers
491 users here now

Canvas — The Fediverse’s r/place


July 12th, 2025 @ 4am UTC



Links

Timelapses

founded 2 years ago
MODERATORS
1
 
 

🔴 CANVAS 2025 IS LIVE FOR THE NEXT 24 HOURS 🔴

https://canvas.fediverse.events/

July 12th @ 4am UTC - July 14 @ 4am UTC

Canvas is a yearly event that brings the Fediverse together to work on a collaborative pixel canvas for 48 hours

2
 
 

🔴 CANVAS 2025 IS STILL LIVE 🔴

https://canvas.fediverse.events/

July 12th @ 4am UTC - July 14 @ 4am UTC

Canvas is a yearly event that brings the Fediverse together to work on a collaborative pixel canvas for 48 hours

https://canvas.fediverse.events/ https://toast.ooo/c/canvas https://social.fediverse.events/@canvas Matrix - Discord

3
305
[2025] CANVAS 2025 IS LIVE (2025.canvas.fediverse.events)
submitted 1 day ago by grant@toast.ooo to c/canvas@toast.ooo
 
 

OK WE'RE ACTUALLY LIVE NOW

a little hiccup at the start but we're here

4
 
 

Find your groups for Canvas 2025!

Reply to this post with:

  • group name
  • matrix and/or discord
  • template url (see below)
  • a fun fact!

template url

templates are can easily be shared by copying the url once you setup a template on Canvas

steps:

  1. open Canvas
  2. Open settings in the top right
  3. Enable the template switch
  4. paste your image url into the input box (note: you may need to use image urls uploaded to imgur if it fails to load on canvas)
  5. set the position, size, and everything
  6. copy the page url
5
 
 

share your community tools that are helpful for Canvas!

replies should include:

  • tool name
  • url
  • description
  • optional: images
6
 
 

having issues or don't know where to post a short question? you've found the post for that!

post your questions below or in our Matrix or our Discord

7
692
[2024] Thank you for participating!! (social.fediverse.events)
submitted 1 year ago* (last edited 1 week ago) by grant@toast.ooo to c/canvas@toast.ooo
 
 

the event has concluded! thank you all for participating!

this has been incredibly fun to run, as it was last year (although there was a bit more hiccups this time around)

⚠ Crossposters: link back to this post as it will be updated with more information ⚠

Event date: July 12th, 2024 @ 4am UTC til ~~July 15th @ 4am UTC (72 hours)~~ July 16th @ 4am UTC (72 hours + 24 hours) (it was extended due to a massive performance issue that caused major downtime)

Future events

I'm planning to host another one next year, so stay tuned 👀

If you have suggestions for canvas 2025 or any other events, post them in this post (thanks Ategon)

Supporting the project 💜💜💜

I have spent a little over 6 months completely rebuilding Canvas from the ground up to support future features, and i would love to work on more fediverse events

poster sales

posters of the final canvas will be sold, if you would like to stay updated with information on those, follow the Mastodon account or send an email to hello@sc07.company 💜

https://sc07.shop/

the shop site will also include stickers for the following instances:

  • mastodon.world
  • lemmy.world
  • blahaj.zone
  • toot.community
  • toast.ooo
  • Canvas 2024

✨ I wanted to have the shop setup before the event ending, but i couldn't get it setup quick enough unfortunately

EDIT: Shop is now live!

direct donations

Donating via Stripe is the best way to donate directly

contributing to the code

canvas is open-source and is on a self-hosted gitlab instance at https://git.sc07.company/sc07/canvas

at time of writing; the gitlab server randomly restarts due to resource limits

Timelapses

i need to rewrite the timelapse script as some people pointed out some weirdness with the other ones (that's also what delayed this post by almost 3 hours)

Data

Database dump: (48mb) https://cdn.sc07.company/canvas/2024/canvas-stripped.sql.txt

Contains pixel placements, canvas moderation actions, and palette colors no IP addresses

chat.fediverse.events

This will stay up as long as i can keep it running for, i'll make some improvements eventually as well

tools (like a canvas atlas)

if anyone is wanting to build something for canvas, i'd be willing to host the project & give it a subdomain of .fediverse.events

just send me a matrix dm, a dm on discord (grahhnt) or an email hello@sc07.company

Special thanks

thank you to the moderators that helped me this year, even with how stressful it was 🔨

and the contributors to the code once the event started: 💻

  • Ategon
  • Marius
  • soda_cans

and thank you, once again, for participating this year, i hope you enjoyed it as much as i did 💜

i'm going to now go enjoy my 21st 🥳🎉

  • grant

Related links (edit 2025):

8
 
 

Joking, of course! What an exceptionally noble and admirable way to begin drafting a constitution.

🇩🇪 ♥ 🇲🇽

Translation"Human dignity is inviolable. Article 1 of the Basic Law (GG)"

"Die Würde des Menschen ist unantastbar" is the first sentence of Article 1 of the German Basic Law (Grundgesetz, GG).

Disclosure: Alt text & translation were AI-generated.

9
 
 

Edit: I'm in!

10
68
[2025] CANVAS IN 24 HOURS (2025.canvas.fediverse.events)
submitted 2 days ago by grant@toast.ooo to c/canvas@toast.ooo
 
 

July 12th, 2025 @ 4am UTC

SPREAD THE WORD 🔥

Related posts:

what is Canvas?

Canvas is a collaborative pixel canvas that includes everyone apart of the Fediverse! Any fediverse platform that supports direct messages is able to login and participate for this 48 hour live event

socials

11
42
submitted 2 days ago* (last edited 1 day ago) by Ategon@programming.dev to c/canvas@toast.ooo
 
 

Combined all the templates I could find into one giant template for ease of seeing where theres free space

Feel free to reply with other templates for me to add them on or with updates to templates

Theres currently 3 space conflicts (with smaller art going on the same spot as larger art)

https://canvas.fediverse.events/#tu=https%3A%2F%2Fbytes.programming.dev%2Ffiles%2F3e70781f-4bec-4a1d-836e-d6d34e6c9b38&tw=500&tx=0&ty=0&ts=ONE_TO_ONE&x=250&y=250&zoom=1

  • edit: added toast.ooo
  • edit 2: updated programming.dev template
  • edit 3: added feddit, bt free, fireside fedi, synthwave
  • edit 4: updated synthwave position
  • edit 5: added 3 new designs. Im not doing any more edits to this as its close to the event now
12
 
 

it's time to get hyped!

July 12th, 2025 @ 4am UTC

you can now open the Canvas to setup your templates and preview how it's going to work!

2025 Canvas Size: 500x500

Related posts:

what is Canvas?

Canvas is a collaborative pixel canvas that includes everyone apart of the Fediverse! Any fediverse platform that supports direct messages is able to login and participate for this 48 hour live event

socials

13
95
‼️ATTENTION‼️ (social.fediverse.events)
submitted 2 weeks ago* (last edited 2 weeks ago) by canvas@social.fediverse.events to c/canvas@toast.ooo
 
 

‼️ATTENTION‼️
Less than 3 weeks until canvas starts!
Don’t forget to join the matrix/discord - via our profile.

@canvas@toast.ooo

https://2025.canvas.fediverse.events/

14
92
30 DAYS | CANVAS 2025 (2025.canvas.fediverse.events)
submitted 1 month ago by grant@toast.ooo to c/canvas@toast.ooo
 
 

July 12th, 2025 @ 4am UTC

https://2025.canvas.fediverse.events/

✨ just as it was last year, the entire Fediverse is invited ✨

follow via microblog @canvas@fediverse.events

join the chat on matrix or on discord (bridged)

are you an app developer? check out the fediverse.events api 👀 (matrix room also linked there)

What’s Canvas?

canvas is a 48 hour event were anyone apart of the fediverse can contribute to a pixel canvas, one pixel at a time

15
 
 

Sticker's fine, somehow, and already on my ThinkPad. Unfortunately I only got 1, and sc07.shop seems to be down. Oh well.

Where the hell was that envelope stuck...

16
 
 
17
 
 

https://sc07.shop/

Get Canvas 2024 & 2023 prints, and stickers to support various instances!

18
 
 

Over the last 2 weeks, I worked to adapt the code that was used for making the 2023 r/place atlas, adapting it to work with this event, as well as making it work on GitLab and Lemmy.

The site is at atlas.mariusdavid.fr, the lemmy community is !2024lemmycanvasatlas@toast.ooo.

The goal of the atlas is to register the meaning of the elements(/arts/placements/zones) of the Canvas, as well as (optionally) meta element about the element itself (like which community placed it).

It offer both the possibility to create new entry or to edit existing ones.

It is ready to receive your contribution (I’ve already put a few elements I worked on). You can start by clicking the “Draw” button, then drawing the element and filling other informations (all but the title are optionals. The 4 specific kind of links (Lemmy, Matrix, Discord, SubReddit) are just to better format them, but any kind of link can be put in the “Website” box). Once finished, you’ll have a piece of JSON code that you can copy-paste in a post on the above community (not this !canvas@toast.ooo one). A bot will then make an MR on Gitlab, which will allow preview, review and approval. (note that opening the MR might take 10 minutes, and making the preview another 10 minutes. Technically speaking, it work by polling, which is not very efficient for quick reaction time).

The full source code is also available on sc07’s GitLab https://git.sc07.company/marius851000/fediverse-canvas-atlas-2024 and there is also a Matrix room at https://matrix.to/#/#lemmy-canvas-atlas-discussion:mariusdavid.fr (avaible from the general Canvas space).

ps: There is no formal method to describe an entry. I will recommend starting by describing what is presented, then putting more meta information, like which community (or user) placed it, who drew it and this kind of stuff.

19
 
 

Orders ship out a week from now!!

- 🖼 Canvas 2023 & 2024 posters @canvas@fediverse.events
- 🖌 mastodon.world, lemmy.world, blahaj.zone, toot.community, toast.ooo & Canvas 2024 stickers
- 🌍 Shipping internationally (DM me if you have any issues)

https://sc07.shop/

Instance sticker proceeds go to their respective instance ✨

@canvas@toast.ooo #canvas #canvas2024 #shop #stickers

20
16
submitted 11 months ago* (last edited 11 months ago) by the_real_monte@sh.itjust.works to c/canvas@toast.ooo
 
 

There was an error with the fediverse-auth on the Canvas site where after a certain point new logins started being logged as all lower case which created duplicates of 59 users and were treated as separate users. I have merged all of the duplicate accounts and rebuild the database.

This also means that all of the stats on Canvas Stats are incorrect. The canvas Stats app has been updated with the new data.

You can find the fixed database dump sql file on my github: https://raw.githubusercontent.com/TheRealMonte/data-files/main/2024/canvas-2024-fixed-sql.sql The file is 33,568 kB.

The SQL file has 4 tables:

  • users (user_id, username, ranking, total_pixels_placed)
  • colors (color_id, color_name, color_hex)
  • pixels (log_id, user_id, x_cord, y_cord, color_id, time_placed, is_mod_action, is_top, time_deleted)
  • top_cord (top_cord_id, user_id, x_cord, y_cord, count_placed)

The users table includes the rank and total pixels placed for each user. Deleted pixels are not counted. There are 13 users who deleted every pixel the placed. They are still ranked, but their total pixel count is 0.

The colors table includes the color ID, name, and hex which when joined with the pixels table can be used to easly select the color name or hex.

The pixels table includes the username, x and y coordinates, color ID, the time the pixel was placed, if the pixel was a moderator placement, if the pixel can be seen in the final image, and the time the pixel was deleted or NULL.

The top_cord table includes the x and y coordiantes for the coordinate each user placed the most pixels on along with the count.

The only data not included here is the pixel color counts for each user. You an find the pixel color counts for a user by selecting:

SELECT color_name, count(color_name) FROM public.pixels JOIN users on users.user_id = pixels.user_id JOIN colors on colors.color_id = pixels.color_id WHERE username = <username> GROUP BY color_name

21
 
 

Another update to Canvas Stats app. You can now view your pixels you placed during the event in your browser and download the pixels as a png image!

22
 
 

have you been working on a tool to show information related to canvas? want to share it around/get input?

Data files:

Repos:

if you would like me to host it on a subdomain of .fediverse.events post a comment below explaining your project

23
 
 

I have updated Canvas Stats with the new data from the sql log. Rankings should mostly be the same as the old data, but your total pixel count will be lower since deleted pixels no longer count. A new feature to the site is you can now see if your top coordinate placed is also another users top coordinate placed, which would mean you were probably battling it out over a pixel.

I am also generating images of individual user's pixels. If anyone is interested, just send me a DM. Here is an example of just the pixels that @rrconkle@lemmy.zip placed:

If you would prefer the background to be black instead of white, let me know in your DM.

Another feature I added was overall stats for the event.

24
 
 

Full Timelapse: PeerTube, YouTube, Raw File

Full Image: https://cdn.sc07.company/canvas/2024/finished.png

Canvas poster

🚨🚨🚨 You can now pre-order the posters!!

https://sc07.shop/

These are pre-orders, the first orders will be shipped out August 1st following the shipping information listed on the site

Most countries are supported if yours is not listed, send me an email hello@sc07.company or comment below 💜

Instance Stickers

Proceeds from instance stickers go to their respective instances 💞

Direct Donations

If you would like to directly donate to Canvas w/o making any purchases, I accept donations via Stripe 💜

(i wasn't clear on the stripe page that the fediverse handles would be public, so this is a placeholder until i get confirmation they all want it public or not)

Support

If you are having issues with the website, send an email to hello@sc07.company

Database Dump

the old system for pixel placement logs was flawed, and someone suggested the brilliant idea of just publishing the database dump, it already has all the information anyway

no ip addresses, or ban logs only pixel placements (with username), pixel moderation logs and palette settings

https://cdn.sc07.company/canvas/2024/canvas-stripped.sql.txt

Canvas Repo - Canvas Timelapse Repo

25
 
 

Small disclaimer this is from the txt log which is not exactly complete, there are few pixels missing here and there.

One second of the video is about 30 minutes of drawing (one frame contains 1 minute of drawing, 30 frames per second)

Also a little bit of bragging - couldn't resist the challenge and got this all glued together in Python! Which is obviously a valid tool for this considering the rich data processing ecosystem.
Well maybe except the video generation part... definitely except the video generation - Pyav - bindings for ffmpeg, are really badly documented, luckily they have at least good enough examples.

The short story of how:

  • little bit of python script to convert the txt log into csv
  • from csv to pandas, there I made a few cleaning passes to get the "format" just right (mainly dealing with the mod_fill action)
  • pyav, ffmpeg and the world of video - oh boy:
    • for each one minute of drawing data
    • replay them over the canvas (numpy RGB array)
    • embed/copy the canvas into the video frame (another ndarray)
    • (add the timestamp above the canvas - cv2)
    • invoke pyav magic to mux/append it into the video
    • hope that your numpy array slices, splices, "broadcasts", pyav codec options and stream configurations are correct. Otherwise, watch as you end up with 1GB+ of mp4 file - 3 hours to watch whole (1s/30fps) with really bad resolution or inverted/wrong colors:)

If anyone wants to tweak this or has ideas how to make this better just hit me up. Can also put the code somewhere if wanted.

What a wild ride ha!

view more: next ›