diff --git a/.gitignore b/.gitignore index 2df4c91..2ccf20c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu, VD15 and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + # Byte-compiled / optimized / DLL files __pycache__/ *.py[cod] diff --git a/bot/add_card.py b/bot/add_card.py index ffa9601..def64f6 100644 --- a/bot/add_card.py +++ b/bot/add_card.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu, Moon, VD15 and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + import requests import config from fediverse_factory import get_fediverse_service diff --git a/bot/bot_app.py b/bot/bot_app.py index ffbd413..9070415 100644 --- a/bot/bot_app.py +++ b/bot/bot_app.py @@ -1,18 +1,18 @@ -#Kemoverse - a gacha-style bot for the Fediverse. -#Copyright © 2025 Waifu -# -#This program is free software: you can redistribute it and/or modify -#it under the terms of the GNU Affero General Public License as -#published by the Free Software Foundation, either version 3 of the -#License, or (at your option) any later version. -# -#This program is distributed in the hope that it will be useful, -#but WITHOUT ANY WARRANTY; without even the implied warranty of -#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -#GNU Affero General Public License for more details. -# -#You should have received a copy of the GNU Affero General Public License -#along with this program. If not, see https://www.gnu.org/licenses/. +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu, VD15, Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. import time import traceback diff --git a/bot/config.py b/bot/config.py index 36177f9..f226d45 100644 --- a/bot/config.py +++ b/bot/config.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu, VD15, Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + '''Essentials for the bot to function''' import configparser import json diff --git a/bot/custom_types.py b/bot/custom_types.py index 7fc7885..6aad962 100644 --- a/bot/custom_types.py +++ b/bot/custom_types.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 VD15 and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + from typing import TypedDict, List, Dict, Any BotResponse = TypedDict('BotResponse', { diff --git a/bot/db_utils.py b/bot/db_utils.py index bdbd0d8..18e705f 100644 --- a/bot/db_utils.py +++ b/bot/db_utils.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu VD15, Moon, and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + from random import choices import sqlite3 import config diff --git a/bot/fediverse_factory.py b/bot/fediverse_factory.py index fe501db..d7d61b5 100644 --- a/bot/fediverse_factory.py +++ b/bot/fediverse_factory.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + from fediverse_service import FediverseService from misskey_service import MisskeyService from pleroma_service import PleromaService diff --git a/bot/fediverse_service.py b/bot/fediverse_service.py index 1292d63..4bb4169 100644 --- a/bot/fediverse_service.py +++ b/bot/fediverse_service.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + from abc import ABC, abstractmethod from typing import List, Optional, Union, BinaryIO from fediverse_types import FediverseNotification, FediversePost, FediverseFile, Visibility diff --git a/bot/fediverse_types.py b/bot/fediverse_types.py index c1580b6..99d58ce 100644 --- a/bot/fediverse_types.py +++ b/bot/fediverse_types.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + from dataclasses import dataclass from typing import Optional, List, Dict, Any from enum import Enum diff --git a/bot/misskey_service.py b/bot/misskey_service.py index 510b32b..aad3944 100644 --- a/bot/misskey_service.py +++ b/bot/misskey_service.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + import misskey from typing import List, Optional, Dict, Any, Union, BinaryIO from fediverse_service import FediverseService diff --git a/bot/mock_fediverse_service.py b/bot/mock_fediverse_service.py index 34a1c0c..bc6546d 100644 --- a/bot/mock_fediverse_service.py +++ b/bot/mock_fediverse_service.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + """Mock FediverseService for testing purposes""" from typing import List, Optional, Union, BinaryIO diff --git a/bot/notification.py b/bot/notification.py index f264718..95a3292 100644 --- a/bot/notification.py +++ b/bot/notification.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu, Moon, VD15, and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + import config from parsing import parse_notification from db_utils import is_whitelisted, is_player_banned diff --git a/bot/parsing.py b/bot/parsing.py index d625980..7cadd79 100644 --- a/bot/parsing.py +++ b/bot/parsing.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu, Moon, VD15, and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + import re import config from response import generate_response diff --git a/bot/pleroma_service.py b/bot/pleroma_service.py index 21320d1..4886c90 100644 --- a/bot/pleroma_service.py +++ b/bot/pleroma_service.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Moon and contributors. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + from mastodon import Mastodon from typing import List, Optional, Dict, Any, Union, BinaryIO import io diff --git a/bot/response.py b/bot/response.py index e661bbf..93cf614 100644 --- a/bot/response.py +++ b/bot/response.py @@ -1,3 +1,19 @@ +#Kemoverse - a gacha-style bot for the Fediverse. +#Copyright © 2025 Waifu, VD15 and contributors. +# +#This program is free software: you can redistribute it and/or modify +#it under the terms of the GNU Affero General Public License as +#published by the Free Software Foundation, either version 3 of the +#License, or (at your option) any later version. +# +#This program is distributed in the hope that it will be useful, +#but WITHOUT ANY WARRANTY; without even the implied warranty of +#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +#GNU Affero General Public License for more details. +# +#You should have received a copy of the GNU Affero General Public License +#along with this program. If not, see https://www.gnu.org/licenses/. + from datetime import datetime, timedelta, timezone from typing import TypedDict, Any, List, Dict import db_utils as db diff --git a/contributing.md b/contributing.md new file mode 100644 index 0000000..5858d9e --- /dev/null +++ b/contributing.md @@ -0,0 +1,49 @@ + + +# Contributing to Kemoverse + +Contributions are welcome with the following requirements: + +## Licensing + +- All contributions must be licensed under the **AGPLv3-or-later** or a compatible license. +- If you include code from another project (e.g., MIT Expat), please **list the license and copyright holders** clearly. +- If your contribution introduces code under a different license, you **must clarify this**, so the project can remain license-compliant. + +## Attribution + +- Please **add your name** to the license header of any file where you’ve made a **nontrivial change**. +- Nontrivial changes include: + - New features + - Logic changes + - Major refactoring or structure changes + - Not: typo fixes or simple reformatting + +## Commit Messages (optional but appreciated) + +- Try to write clear, descriptive commit messages. + +## Communication + +- If you're planning a major change or feature, please open an issue or contact the maintainers first. +- This helps avoid duplicated work and makes collaboration easier. + +--- + +Thank you for helping grow the Kemoverse 💫 \ No newline at end of file diff --git a/dev_runner.py b/dev_runner.py index b39a434..92fd0aa 100644 --- a/dev_runner.py +++ b/dev_runner.py @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + import subprocess import os from watchdog.observers import Observer diff --git a/docs/index.md b/docs/index.md index 292d673..f6ad524 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,3 +1,20 @@ + # 🎲 Kemoverse Documentation Welcome to the developer documentation for **Kemoverse**, a gacha trading card game in the Fediverse! diff --git a/docs/install.md b/docs/install.md index e5f8658..8584b79 100644 --- a/docs/install.md +++ b/docs/install.md @@ -1,3 +1,20 @@ + ## 🧪 Installation diff --git a/docs/theme.md b/docs/theme.md index 69e9ed3..f3f54b4 100644 --- a/docs/theme.md +++ b/docs/theme.md @@ -1,3 +1,20 @@ + Welcome to the **Visual Identity** guide for the Kemoverse. This page contains the standard colors, logos, and graphic elements used across the game (cards, UI, web presence, bots, etc). Please follow these guidelines to ensure consistency. --- diff --git a/example_config.ini b/example_config.ini index 1dd738e..b147f34 100644 --- a/example_config.ini +++ b/example_config.ini @@ -1,3 +1,20 @@ +; Kemoverse - a gacha-style bot for the Fediverse. +; Copyright © 2025 Waifu and VD15 + +; This program is free software: you can redistribute it and/or modify +; it under the terms of the GNU Affero General Public License as +; published by the Free Software Foundation, either version 3 of the +; License, or (at your option) any later version. + +; This program is distributed in the hope that it will be useful, +; but WITHOUT ANY WARRANTY; without even the implied warranty of +; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +; GNU Affero General Public License for more details. + +; You should have received a copy of the GNU Affero General Public License +; along with this program. If not, see https://www.gnu.org/licenses/. + + ; Rename me to config.ini and put your values in here [application] ; Comma separated list of fedi handles for any administrator users diff --git a/migrations/0000_setup.sql b/migrations/0000_setup.sql index 4dcbc64..2f0dd85 100644 --- a/migrations/0000_setup.sql +++ b/migrations/0000_setup.sql @@ -1,3 +1,20 @@ +/* +Kemoverse - a gacha-style bot for the Fediverse. +Copyright © 2025 VD15 and contributors. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see https://www.gnu.org/licenses/. +*/ CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT UNIQUE NOT NULL, diff --git a/migrations/0001_fix_notif_id.sql b/migrations/0001_fix_notif_id.sql index 3494d6e..bf7eb2e 100644 --- a/migrations/0001_fix_notif_id.sql +++ b/migrations/0001_fix_notif_id.sql @@ -1 +1,18 @@ +/* +Kemoverse - a gacha-style bot for the Fediverse. +Copyright © 2025 VD15 and contributors. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see https://www.gnu.org/licenses/. +*/ INSERT OR IGNORE INTO config VALUES ("last_seen_notif_id", 0); diff --git a/migrations/0002_weigh_infer.sql b/migrations/0002_weigh_infer.sql index 28a1002..cf571f1 100644 --- a/migrations/0002_weigh_infer.sql +++ b/migrations/0002_weigh_infer.sql @@ -1 +1,19 @@ +/* +Kemoverse - a gacha-style bot for the Fediverse. +Copyright © 2025 Waifu and contributors. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see https://www.gnu.org/licenses/. +*/ + ALTER TABLE characters DROP COLUMN weight; diff --git a/migrations/0003_rename_tables.sql b/migrations/0003_rename_tables.sql index a3ba3a7..7d9e0c4 100644 --- a/migrations/0003_rename_tables.sql +++ b/migrations/0003_rename_tables.sql @@ -1,3 +1,21 @@ +/* +Kemoverse - a gacha-style bot for the Fediverse. +Copyright © 2025 VD15 and contributors. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see https://www.gnu.org/licenses/. +*/ + ALTER TABLE users RENAME TO players; ALTER TABLE characters RENAME TO cards; ALTER TABLE pulls RENAME user_id TO player_id; diff --git a/migrations/0004_add_administrators.sql b/migrations/0004_add_administrators.sql index 7503e21..51bef49 100644 --- a/migrations/0004_add_administrators.sql +++ b/migrations/0004_add_administrators.sql @@ -1 +1,19 @@ +/* +Kemoverse - a gacha-style bot for the Fediverse. +Copyright © 2025 VD15 + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see https://www.gnu.org/licenses/. +*/ + ALTER TABLE players ADD COLUMN is_administrator BOOLEAN NOT NULL DEFAULT 0; diff --git a/migrations/0005_add_whitelist.sql b/migrations/0005_add_whitelist.sql index d24f2e3..7769253 100644 --- a/migrations/0005_add_whitelist.sql +++ b/migrations/0005_add_whitelist.sql @@ -1,3 +1,21 @@ +/* +Kemoverse - a gacha-style bot for the Fediverse. +Copyright © 2025 VD15 + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see https://www.gnu.org/licenses/. +*/ + CREATE TABLE IF NOT EXISTS instance_whitelist ( tld TEXT UNIQUE PRIMARY KEY ); diff --git a/readme.md b/readme.md index 7bedcea..40e41e3 100644 --- a/readme.md +++ b/readme.md @@ -1,3 +1,21 @@ + + # Kemoverse A gacha-style bot for the Fediverse built with Python. Users can roll for characters, trade, duel, and perhaps engage with popularity-based mechanics. Supports both Misskey and Pleroma instances. Name comes from Kemonomimi and Fediverse. @@ -63,20 +81,29 @@ The bot is meant to feel *light, fun, and competitive*. Mixing social, gacha and ## 📝 License -This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). +Unless stated otherwise, this repository is: -This means: +**Copyright © 2025 Waifu and contributors** +**Licensed under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later)** -- You are free to use, modify, and redistribute this software under the same license. +--- -- If you modify and deploy the software (for example, as part of a web service), you must also make the source code of your modified version available to users of that service. +### 🛠️ What this means for you: + +- You are free to **use**, **modify**, and **redistribute** the code, as long as you preserve the same license. +- If you run a modified version of this software as part of a service (e.g., a website or bot), you must also **share the source code** of your modifications with users. + +A copy of the license should also be included in this repository. +If not, you can always find it at [gnu.org/licenses](https://www.gnu.org/licenses/). + +--- + +The AGPL exists to **protect user freedom**, especially in networked and server-side software. If you enhance or build upon this project, please help the community by sharing your changes too. + +Unless explicitly stated otherwise, **all files in this repository are covered by the AGPL v3.0 or any later version**. -You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/. -The full license text can be found here: https://www.gnu.org/licenses/agpl-3.0.html -The AGPL is designed to ensure that software freedom is preserved, especially in networked environments. If you improve this project or build something on top of it, please give back to the community by sharing your changes too. -Unless another license is listed, every file in the project is licensed under the GNU Affero General Public License version 3 (or at your option), any later version. ```mermaid flowchart TD diff --git a/requirements.txt b/requirements.txt index 4a749b2..d747e71 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,19 @@ +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. + blinker==1.9.0 click==8.1.8 Flask==3.1.0 diff --git a/startup.sh b/startup.sh index e8c3bed..3741e71 100755 --- a/startup.sh +++ b/startup.sh @@ -1,20 +1,20 @@ #!/bin/bash -#Kemoverse - a gacha-style bot for the Fediverse. -#Copyright © 2025 Waifu -# -#This program is free software: you can redistribute it and/or modify -#it under the terms of the GNU Affero General Public License as -#published by the Free Software Foundation, either version 3 of the -#License, or (at your option) any later version. -# -#This program is distributed in the hope that it will be useful, -#but WITHOUT ANY WARRANTY; without even the implied warranty of -#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -#GNU Affero General Public License for more details. -# -#You should have received a copy of the GNU Affero General Public License -#along with this program. If not, see https://www.gnu.org/licenses/. +# Kemoverse - a gacha-style bot for the Fediverse. +# Copyright © 2025 Waifu and VD15 + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see https://www.gnu.org/licenses/. # Navigate to the project directory (optional) cd "$(dirname "$0")" diff --git a/web/static/style.css b/web/static/style.css index 74231c1..95380a8 100644 --- a/web/static/style.css +++ b/web/static/style.css @@ -1,13 +1,30 @@ +/* +Kemoverse - a gacha-style bot for the Fediverse. +Copyright © 2025 Waifu + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see https://www.gnu.org/licenses/. + */ body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; - background-color: #f4f6fa; + background-color: #FAFAFA; color: #333; margin: 0; padding: 0; } header { - background-color: #7289da; + background-color: #5aa02c; color: white; padding: 20px; text-align: center; diff --git a/web/templates/_base.html b/web/templates/_base.html index a1f1b22..f025c75 100644 --- a/web/templates/_base.html +++ b/web/templates/_base.html @@ -1,3 +1,20 @@ +
diff --git a/web/templates/_error.html b/web/templates/_error.html index defc5d8..6d18f04 100644 --- a/web/templates/_error.html +++ b/web/templates/_error.html @@ -1,3 +1,20 @@ + {% extends "_base.html" %} {% block title %} {{ error.code }} diff --git a/web/templates/about.html b/web/templates/about.html index 184fde9..b704664 100644 --- a/web/templates/about.html +++ b/web/templates/about.html @@ -1,3 +1,20 @@ + {% extends "_base.html" %} {% block content %} diff --git a/web/templates/index.html b/web/templates/index.html index f9bf7a0..6f2351d 100644 --- a/web/templates/index.html +++ b/web/templates/index.html @@ -1,3 +1,21 @@ + + {% extends "_base.html" %} {% block header %} diff --git a/web/templates/submit.html b/web/templates/submit.html index d0424b8..ad36de4 100644 --- a/web/templates/submit.html +++ b/web/templates/submit.html @@ -1,3 +1,20 @@ + {% extends "_base.html" %} {% block content %} diff --git a/web/templates/user.html b/web/templates/user.html index 8010538..1ccb447 100644 --- a/web/templates/user.html +++ b/web/templates/user.html @@ -1,3 +1,20 @@ + {% extends "_base.html" %} {% block content %}