diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f72d4210a12f2d80b6e444d4dfa44de46a25992a..fd9bec55aea4d03fa7db4ddf4cfcaec8c48ca366 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,30 +2,30 @@ This project is open-source, and contributions are welcome. In fact, the Atlas relies on user contributions. -You may contribute to the project by sending your submissions through Lemmy ([2024](https://toast.ooo/c/2024lemmycanvasatlas) or [2025](https://toast.ooo/c/2025fedicanvasatlas)) (recommended) or submitting a Merge Request on the Gitlab repo. Other than that, you can get help from [Matrix](https://matrix.to/#/#lemmy-canvas-atlas-discussion:mariusdavid.fr) or the lemmy community. +You may contribute to the project by sending your submissions through Lemmy ([2024](https://toast.ooo/c/2024lemmycanvasatlas) or [2025](https://toast.ooo/c/2025fedicanvasatlas)) (recommended) or by submitting a Merge Request on the Gitlab repo. If you need help, you can get it on [Matrix](https://matrix.to/#/#lemmy-canvas-atlas-discussion:mariusdavid.fr) or on the Lemmy community. -## New Atlas entries +## New Atlas Entries -To contribute to the map, we require a certain format for artwork region and labels. This can be generated on the drawing mode ([2024](https://atlas.mariusdavid.fr/?mode=draw) or [2025](https://atlas2025.mariusdavid.fr/?mode=draw)) on the website. +To contribute to the map, we require a certain format for artwork region and labels. This can be generated using the drawing mode ([2024](https://atlas.mariusdavid.fr/?mode=draw) or [2025](https://atlas2025.mariusdavid.fr/?mode=draw)) on the website. -To add a new entry, go to the drawing mode and draw a shape/polygon around the region you'd like to describe. You can use the Undo, Redo, and Reset buttons to help you creating a good polygon. Make sure that the lines you're drawing don't form a [self-intersecting polygon](https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Complex_polygon.svg/288px-Complex_polygon.svg.png). +To add a new entry, go to the drawing mode and draw a shape/polygon around the region you'd like to describe. You can use the Undo, Redo, and Reset buttons to help you create a good polygon. Make sure that the lines you draw don't form a [self-intersecting polygon](https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Complex_polygon.svg/288px-Complex_polygon.svg.png). -You can also edit existing entries. To do that, [enter the normal mode](https://atlas.mariusdavid.fr/), select the entry you want to edit, then click `Edit`. To retrace it, you can click `Add Period`, then `Delete` the old first Period. +You can also edit existing entries. To do that, [enter the normal mode](https://atlas.mariusdavid.fr/), select the entry you want to edit and click `Edit`. To retrace it, you can click `Add Period`, then `Delete` the old first Period. If you want to see which areas of the canvas do not have entries yet, select "Highlight Empty" to hide areas that already have entries. -Multiple periods can be added to represent the changing state of the artwork on different times. You can set the start and end period of the canvas. You can also copy the polygon from one period to the other, duplicating a period to be edited later, as well as deleting a period (if there is more than one). An alert is also shown if there are errors that needed attention. +Multiple time periods can be added to represent the changing state of the artwork on different times. You can set the start and end period of the canvas. You can also copy the polygon from one period to another, duplicating a period to be edited later, as well as deleting a period (if there is more than one). An alert is also shown if there are any errors that need attention. When you're happy with the shape you've drawn, press Finish. You will now be able to enter some information about the entry: - **Name**: A short, descriptive name. -- **Description**: A short description that can be understood by somebody not familiar with the topic. If you were involved in drawing this artwork, you may include the meta, describing the process of drawing the artwork in the event. -- **Links**: Some links that are most relevant to the topic, and/or regarding the process of the drawing the artwork in the event. - - **Lemmy**: A Lemmy community, server or post in the form of an URL, `!community@example.com` or `@example.com` - - **Matrix**: A matrix room id of the organizers, in the form of `#room_id:server.tld` +- **Description**: A short description that can be understood by somebody not familiar with the topic. If you were involved in drawing this artwork, you may include the meta and describing the process of drawing the artwork in the event. +- **Links**: Some links that are the most relevant to the topic, and/or regarding the process of the drawing the artwork in the event. + - **Lemmy**: A Lemmy community, instance or post in the form of an URL, `!community@example.com` or `@example.com` + - **Matrix**: A matrix room ID of the organizers, in the form of `#room_id:server.tld` - **Website**: If you're describing a project, the project's main website would be suitable here. - **Subreddit**: Format it like `r/subreddit`. - - **Discord**: Write the invite code, that the invite link without the `discord.gg/` part. + - **Discord**: Write the invite code. That's the invite link without the `discord.gg/` part. All fields but the name are optional. For example, a country flag doesn't necessarily need a description. @@ -33,30 +33,30 @@ Once you've entered all the information, you'll be presented with a pop-up windo ### Through Lemmy (Recommended) -You will need to post that message to the community (`!2024lemmycanvasatlas@toast.ooo` for 2024 or `!2025fedicanvasatlas@toast.ooo`) via Lemmy (or another Activity-Pub powered service that allow long enought messages). +You will need to post that message to the community (`!2024lemmycanvasatlas@toast.ooo` for 2024 or `!2025fedicanvasatlas@toast.ooo`) for 2025 via Lemmy (or another Activity-Pub powered service that allows messages with enough characters). -Paste the whole JSON file in the body, and then post it. Eventually, a bot should answer that your post has been processed (or not) in less than 30 minutes. If that does not happen after 1 hour, then this is a bug, and you can report it. You can also use the second contributionn method. +Paste the whole JSON file in the body, and then post it. Eventually, a bot should answer that your post has been processed (or not) in less than 30 minutes. If that does not happen after 1 hour, then this is a bug, and you can report it. You can also use the second contribution method. ### Through the forge If you know about Git, and know how to create a merge request on GitLab, you can create a patch that will be merged as-is in the repo. -For that, you first need to create an account on the forge used, [git.sc07.company](https://git.sc07.company), if you do not already have one. This instance is managed by grant, and have manual approval to avoid spam. +For that, you first need to create an account on the forge used, [sc07.dev](https://sc07.dev/), if you do not already have one. This instance is managed by grant, and uses manual approval to avoid spam. -The, you can fork the repository, create a local clone of it, and then: +After this, you can fork the repository, create a local clone of it, and then: - - If you create a new entry, just crate a new file ending in .json in that folder, and paste the JSON - - If you modify an existing entry, find the file with the same "id" in it, and replace it with the JSON + - If you create a new entry, just create a new file ending in .json in that folder, and paste the JSON into it + - If you modify an existing entry, find the file with the same "id" in it, and replace it's contents with the new JSON -Please note that `entries/` if for 2024 and `entries2025` for 2025. +Please note that you should use `entries/` if for contributing to the 2024 atlas and `entries2025` for the 2025 one. -The commit message and description doesn't matter, but you may change it into something more descriptive to make it easier for checking (e.g. Add Foo Bar or Edit Foo Bar for the commit message). However, we suggest you to edit the title (at least) and the description of the pull request, containing the changes that you want to do (something like Add Foo Bar or Edit Foo Bar for the title, similar to the commit message, is also sufficient). +The commit message and description don't matter, but you may change it into something more descriptive to make it easier for checking (e.g. Add Foo Bar or Edit Foo Bar for the commit message). However, we suggest you to (at least) edit the title and the description of the pull request, containing the changes that you want to make (something like Add Foo Bar or Edit Foo Bar for the title, similar to the commit message, is also sufficient). Once you have successfully created the patch, the file can be committed, and a pull request towards the `main` branch can be created. A member will merge the pull request if it is adequate. ### Example -Hereforth is an example of the structured entry data (from the original r/place 2023 Atlas) +Here is an example of the structured entry data (from the original r/place 2023 Atlas) ```json5 { @@ -82,23 +82,23 @@ Hereforth is an example of the structured entry data (from the original r/place } ``` -`109-166, T:0-1` has this meaning. +`109-166, T:0-1` has this meaning: - `109-166`: Default canvas variation (r/place), period [109](https://2023.place-atlas.stefanocoding.me/#/109) to [166](https://2023.place-atlas.stefanocoding.me/#/166). - `T:0-1`: "The Final Clean" canvas variation, period [0](https://2023.place-atlas.stefanocoding.me/#/T:0) (The Final Clean) to [1](https://2023.place-atlas.stefanocoding.me/#/T:1) (Unofficial Corrections). ## Development -Other than contributing to the Atlas data, code contributions are also accepted. Here are some information regarding some aspects on the repository. +Other than contributing to the Atlas data, code contributions are also accepted. Here is some information regarding some aspects on the repository. ### Web interface -This website is built using classic HTML 5 (no JS frameworks such as Vue, React, etc are used). Bootstrap 5 is used as a CSS framework. +This website is built using classic HTML 5 (no JS frameworks such as Vue, React, etc. are used). Bootstrap 5 is used as a CSS framework. -You first need to merge the atlas data. That can be done, by being in the root folder, by running `sh build_atlas.sh`. This will generate the atlas for all the editions. +You first need to merge the Atlas data. That can be done by being in the root folder and running `sh build_atlas.sh`. This will generate the atlas for all of the editions. You will also need to build the `index.html` from `index_template.html`. This can be done (depending on whether you want to edit the 2024 or 2025 version) with `python3 tools/pre_process.py 2024 ./web` or `python3 tools/pre_process.py 2025 ./web` -Opening the HTML file on your browser is adequate enough to edit. If it doesn't work, you can try running a local HTTP server. +Opening the HTML file on your browser is adequate enough to edit. In case this doesn't work, you can try running a local HTTP server. ```sh # Run it inside the web/ folder. @@ -113,12 +113,12 @@ npx serve # Node.js (serve) ### Tools -The `tools` folder have various scripts for the maintainance of the project, such as... +The `tools` folder has various scripts for maintainance of the project, such as... - Adding submitted entries from Lemmy - Formatting/tidying up the data - Building the site for production (which is not used for now) -The tools may built with various programming languages, but mostly it is made in Python 3. +The tools may be built with various programming languages, but they're mostly made in Python 3. -Note that not all of the script are usefull in the context of this Lemmy Atlas. +Note that not all of the scripts are useful in the context of the Lemmy Atlas project. diff --git a/entries2025/30p87.json b/entries2025/30p87.json new file mode 100644 index 0000000000000000000000000000000000000000..f9806d3e7f2456f943ccab5a44f96fc8faf59b5c --- /dev/null +++ b/entries2025/30p87.json @@ -0,0 +1,172 @@ + { + "id": 1877453206, + "name": "30p87's Blåhaj", + "description": "An Ikea Blåhaj holding a heart with transgender flag colouring and lettering representing the Fediverse user \"30p87\".", + "links": { + "website": [ + "https://www.ikea.com/us/en/p/blahaj-soft-toy-shark-90373590/" + ] + }, + "path": { + "15-48": [ + [ + 347, + 78 + ], + [ + 344, + 80 + ], + [ + 341, + 84 + ], + [ + 338, + 89 + ], + [ + 336, + 95 + ], + [ + 332, + 96 + ], + [ + 329, + 98 + ], + [ + 326, + 101 + ], + [ + 326, + 103 + ], + [ + 334, + 104 + ], + [ + 334, + 117 + ], + [ + 335, + 123 + ], + [ + 338, + 128 + ], + [ + 340, + 128 + ], + [ + 341, + 129 + ], + [ + 343, + 132 + ], + [ + 344, + 132 + ], + [ + 347, + 128 + ], + [ + 350, + 128 + ], + [ + 352, + 129 + ], + [ + 353, + 127 + ], + [ + 353, + 126 + ], + [ + 367, + 126 + ], + [ + 371, + 120 + ], + [ + 371, + 117 + ], + [ + 345, + 117 + ], + [ + 350, + 107 + ], + [ + 353, + 107 + ], + [ + 355, + 105 + ], + [ + 356, + 102 + ], + [ + 357, + 100 + ], + [ + 358, + 96 + ], + [ + 356, + 95 + ], + [ + 353, + 94 + ], + [ + 353, + 88 + ], + [ + 352, + 83 + ], + [ + 351, + 80 + ], + [ + 349, + 78 + ] + ] + }, + "center": { + "15-48": [ + 345, + 99 + ] + } + } \ No newline at end of file diff --git a/entries2025/arch.json b/entries2025/arch.json new file mode 100644 index 0000000000000000000000000000000000000000..fad83e6263d6a56e4dccdb878a14ce69106ea9d7 --- /dev/null +++ b/entries2025/arch.json @@ -0,0 +1,100 @@ + { + "id": 6873776693, + "name": "Arch Linux Logo", + "description": "Logo of the popular \"Arch\" Linux Distribution", + "links": { + "website": [ + "https://archlinux.org/" + ] + }, + "path": { + "7-48": [ + [ + 366, + 156 + ], + [ + 379, + 133 + ], + [ + 383, + 134 + ], + [ + 383, + 133 + ], + [ + 380, + 130 + ], + [ + 384, + 122 + ], + [ + 396, + 145 + ], + [ + 396, + 146 + ], + [ + 392, + 147 + ], + [ + 397, + 149 + ], + [ + 402, + 156 + ], + [ + 401, + 157 + ], + [ + 388, + 151 + ], + [ + 388, + 147 + ], + [ + 387, + 145 + ], + [ + 385, + 143 + ], + [ + 383, + 143 + ], + [ + 381, + 146 + ], + [ + 379, + 151 + ], + [ + 366, + 157 + ] + ] + }, + "center": { + "7-48": [ + 387, + 138 + ] + } + } \ No newline at end of file diff --git a/entries2025/fqqd.json b/entries2025/fqqd.json new file mode 100644 index 0000000000000000000000000000000000000000..400f2bb49230a5b1fa06c9a471d9d400bcbfe453 --- /dev/null +++ b/entries2025/fqqd.json @@ -0,0 +1,184 @@ + { + "id": 2949833562, + "name": "FQQD", + "description": "FQQD's avatar pixel art and domain logo. Basically just another user in the fediverse, but check out the website if you want. This artwork was a collaboration between FQQD and 30p87.", + "links": { + "website": [ + "https://fqqd.de" + ] + }, + "path": { + "7-48": [ + [ + 360, + 67 + ], + [ + 373, + 67 + ], + [ + 373, + 69 + ], + [ + 383, + 69 + ], + [ + 383, + 71 + ], + [ + 385, + 71 + ], + [ + 385, + 77 + ], + [ + 385, + 78 + ], + [ + 391, + 78 + ], + [ + 392, + 78 + ], + [ + 392, + 77 + ], + [ + 392, + 81 + ], + [ + 393, + 81 + ], + [ + 393, + 88 + ], + [ + 392, + 88 + ], + [ + 392, + 92 + ], + [ + 391, + 92 + ], + [ + 391, + 94 + ], + [ + 390, + 94 + ], + [ + 390, + 95 + ], + [ + 389, + 95 + ], + [ + 389, + 104 + ], + [ + 399, + 114 + ], + [ + 399, + 116 + ], + [ + 353, + 116 + ], + [ + 353, + 106 + ], + [ + 358, + 106 + ], + [ + 358, + 95 + ], + [ + 357, + 95 + ], + [ + 356, + 94 + ], + [ + 356, + 92 + ], + [ + 355, + 92 + ], + [ + 355, + 88 + ], + [ + 354, + 88 + ], + [ + 354, + 81 + ], + [ + 355, + 81 + ], + [ + 355, + 77 + ], + [ + 356, + 77 + ], + [ + 356, + 75 + ], + [ + 360, + 75 + ], + [ + 360, + 67 + ] + ] + }, + "center": { + "7-48": [ + 373, + 89 + ] + } + } diff --git a/entries2025/irelephant.json b/entries2025/irelephant.json new file mode 100644 index 0000000000000000000000000000000000000000..e17dbe8deaa4b42c6f105958a08136ea7ab17d38 --- /dev/null +++ b/entries2025/irelephant.json @@ -0,0 +1,82 @@ + { + "id": 2686030274, + "name": "irelephant", + "description": "The avatar of a Fediverse user called \"irelephant\". This was previously located below what is now the Antifa emblem.", + "links": { + "website": [ + "https://app.wafrn.net/blog/irelephant" + ] + }, + "path": { + "20-48": [ + [ + 300, + 87 + ], + [ + 300, + 105 + ], + [ + 302, + 107 + ], + [ + 320, + 107 + ], + [ + 322, + 105 + ], + [ + 322, + 87 + ], + [ + 320, + 85 + ], + [ + 302, + 85 + ], + [ + 300, + 87 + ] + ], + "7-19": [ + [ + 314, + 66 + ], + [ + 325, + 66 + ], + [ + 325, + 77 + ], + [ + 314, + 77 + ], + [ + 314, + 66 + ] + ] + }, + "center": { + "20-48": [ + 311, + 96 + ], + "7-19": [ + 320, + 72 + ] + } + } \ No newline at end of file diff --git a/entries2025/ohaa.json b/entries2025/ohaa.json new file mode 100644 index 0000000000000000000000000000000000000000..51f4073fe7979e799db82cdf4e1a723827beb897 --- /dev/null +++ b/entries2025/ohaa.json @@ -0,0 +1,164 @@ + { + "id": 4973532720, + "name": "Ohaa.xyz", + "description": "The domain of Fediverse user \"Oha\".", + "links": { + "website": [ + "https://ohaa.xyz" + ] + }, + "path": { + "31-48": [ + [ + 311, + 118 + ], + [ + 311, + 113 + ], + [ + 313, + 111 + ], + [ + 315, + 111 + ], + [ + 316, + 112 + ], + [ + 317, + 111 + ], + [ + 318, + 111 + ], + [ + 319, + 112 + ], + [ + 319, + 114 + ], + [ + 320, + 114 + ], + [ + 321, + 115 + ], + [ + 323, + 113 + ], + [ + 325, + 113 + ], + [ + 326, + 114 + ], + [ + 327, + 114 + ], + [ + 328, + 113 + ], + [ + 330, + 113 + ], + [ + 332, + 115 + ], + [ + 332, + 117 + ], + [ + 329, + 120 + ], + [ + 329, + 121 + ], + [ + 328, + 122 + ], + [ + 329, + 123 + ], + [ + 329, + 124 + ], + [ + 327, + 126 + ], + [ + 315, + 126 + ], + [ + 314, + 125 + ], + [ + 314, + 124 + ], + [ + 315, + 123 + ], + [ + 316, + 122 + ], + [ + 316, + 119 + ], + [ + 315, + 119 + ], + [ + 314, + 120 + ], + [ + 313, + 120 + ], + [ + 312, + 119 + ], + [ + 311, + 118 + ] + ] + }, + "center": { + "31-48": [ + 322, + 121 + ] + } + } \ No newline at end of file diff --git a/entries2025/pickaxe.json b/entries2025/pickaxe.json new file mode 100644 index 0000000000000000000000000000000000000000..2fdc5b2ab0d79bb99de410afdf1f41da8bd87a7c --- /dev/null +++ b/entries2025/pickaxe.json @@ -0,0 +1,60 @@ + { + "id": 8734612200, + "name": "Minecraft Pickaxe", + "description": "A diamond pickaxe from the video game \"Minecraft\"", + "links": {}, + "path": { + "35-48": [ + [ + 323, + 95 + ], + [ + 326, + 95 + ], + [ + 333, + 87 + ], + [ + 333, + 92 + ], + [ + 337, + 92 + ], + [ + 336, + 82 + ], + [ + 326, + 81 + ], + [ + 326, + 85 + ], + [ + 331, + 85 + ], + [ + 323, + 92 + ], + [ + 323, + 95 + ] + ] + }, + "center": { + "35-48": [ + 334, + 85 + ] + } + } \ No newline at end of file diff --git a/entries2025/speckflagge.json b/entries2025/speckflagge.json new file mode 100644 index 0000000000000000000000000000000000000000..f05ca012770ecbde1b73703ed933fbabc424d9fa --- /dev/null +++ b/entries2025/speckflagge.json @@ -0,0 +1,44 @@ + { + "id": 2768648321, + "name": "Speckflagge", + "description": "This is the Speckflagge (direct translation: \"bacon flag\"), the official flag for the city and state of Bremen, Germany.", + "links": { + "website": [ + "https://www.bremen.de/" + ] + }, + "path": { + "33-48": [ + [ + 343, + 78 + ], + [ + 343, + 78 + ], + [ + 343, + 69 + ], + [ + 330, + 69 + ], + [ + 330, + 78 + ], + [ + 343, + 78 + ] + ] + }, + "center": { + "33-48": [ + 337, + 74 + ] + } + } \ No newline at end of file diff --git a/entries2025/troleg.json b/entries2025/troleg.json new file mode 100644 index 0000000000000000000000000000000000000000..061e33f2ec780976a51c6929cdcc0bb98c7b5308 --- /dev/null +++ b/entries2025/troleg.json @@ -0,0 +1,40 @@ + { + "id": 6700359868, + "name": "Troleg", + "description": "The domain of a user going by \"Ole\"", + "links": { + "website": [ + "https://troleg.de" + ] + }, + "path": { + "32-48": [ + [ + 240, + 139 + ], + [ + 240, + 143 + ], + [ + 272, + 143 + ], + [ + 272, + 139 + ], + [ + 240, + 139 + ] + ] + }, + "center": { + "32-48": [ + 256, + 141 + ] + } + } \ No newline at end of file