Inital Commit!

This commit is contained in:
KoffeeJava
2026-01-29 19:41:22 -07:00
commit 19ad2840b8
14 changed files with 334 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
import requests
from . import misc
from . import project
from . import user
def isOnline():
url = f"https://projects.penguinmod.com/api/v1/ping"
response = requests.get(url)
if not response.status_code == 200:
return -1
return 0

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

45
src/macaronipm/misc.py Normal file
View File

@@ -0,0 +1,45 @@
import requests
import json
from colorist import Color
from colorist import Effect
from colorist import ColorHex
ORANGE = ColorHex("#ff8800")
def setToken(settoken):
global TOKEN
TOKEN = settoken
def setProject(projectid):
global PID
PID = projectid
def follow(target, toggle):
url = "https://projects.penguinmod.com/api/v1/users/follow"
data = f'{{"token":"{TOKEN}","target":"{target}","toggle":{toggle}}}'
headers = {'Content-type': 'application/json'}
response = requests.post(url, headers=headers, data=data)
if not response.status_code == 200:
print(f"MacaroniPM: {Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return 0
def GetFeatured():
print(f"{ORANGE}MacaroniPM: The featured function is stil being worked on. It is recomended {Effect.BOLD}{Effect.UNDERLINE}NOT{Effect.OFF}{ORANGE} to use this.{Effect.OFF}")
url = f"https://projects.penguinmod.com/api/v1/projects/searchprojects?page=0&query=&type=featured&token={TOKEN}&reverse=false"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return response.text.split()

91
src/macaronipm/project.py Normal file
View File

@@ -0,0 +1,91 @@
from . import misc
import io
import requests
import json
import base64
from colorist import Color
from colorist import Effect
def getThumbnail():
url = f"https://projects.penguinmod.com/api/v1/projects/getproject?projectID={misc.PID}&requestType=thumbnail"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
base64_data = base64.b64encode(io.BytesIO(response.content).read()).decode('utf-8')
return f"data:image/jpeg;base64,{base64_data}"
def getMeta():
url = f"https://projects.penguinmod.com/api/v1/projects/getproject?projectID={misc.PID}&requestType=metadata"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return json.loads(response.content)
def loveToggle(toggle):
url = "https://projects.penguinmod.com/api/v1/projects/interactions/loveToggle"
data = f'{{"projectId":"{misc.PID}","token":"{misc.TOKEN}","toggle":{toggle}}}'
headers = {'Content-type': 'application/json'}
response = requests.post(url, headers=headers, data=data)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return 0
def voteToggle(toggle):
url = "https://projects.penguinmod.com/api/v1/projects/interactions/voteToggle"
data = f'{{"projectId":"{misc.PID}","token":"{misc.TOKEN}","toggle":{toggle}}}'
headers = {'Content-type': 'application/json'}
response = requests.post(url, headers=headers, data=data)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return 0
def getRankedProjects(page):
url = f"https://projects.penguinmod.com/api/v1/projects/getprojects?page={page}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return json.loads(response.content)
def hasLovedVoted():
url = f"https://projects.penguinmod.com/api/v1/projects/getuserstatewrapper?projectId={misc.PID}&token={misc.TOKEN}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return json.loads(response.content)

120
src/macaronipm/user.py Normal file
View File

@@ -0,0 +1,120 @@
from . import misc
import io
import requests
import json
import base64
from colorist import Color
from colorist import Effect
def getMeta(target):
url = f"https://projects.penguinmod.com/api/v1/users/profile?target={target}&token={misc.misc.TOKEN}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return json.loads(response.content)
def isBlocking(target):
url = f"https://projects.penguinmod.com/api/v1/users/hasblocked?target={target}&token={misc.misc.TOKEN}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
jsons = json.loads(response.content.decode())
return jsons['has_blocked']
def getPfp(target):
url = f"https://projects.penguinmod.com/api/v1/users/getpfp?username={target}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
base64_data = base64.b64encode(io.BytesIO(response.content).read()).decode('utf-8')
return f"data:image/jpeg;base64,{base64_data}"
def userExist(target):
url = f"https://projects.penguinmod.com/api/v1/users/userexists?username={target}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return json.loads(response.content)['exists']
def isBanned(target):
url = f"https://projects.penguinmod.com/api/v1/users/isBanned?username={target}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return json.loads(response.content)['isBanned']
def logout():
url = "https://projects.penguinmod.com/api/v1/users/logout"
data = f'{{"token":"{misc.misc.TOKEN}"}}'
headers = {'Content-type': 'application/json'}
response = requests.post(url, headers=headers, data=data)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
return 0
def getMessages():
url = f"https://projects.penguinmod.com/api/v1/users/getmessages?token={misc.TOKEN}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
jsons = json.loads(response.content.decode())
return jsons
def getUnreadMessages():
url = f"https://projects.penguinmod.com/api/v1/users/getunreadmessages?token={misc.TOKEN}"
response = requests.get(url)
if not response.status_code == 200:
print(f"{Color.RED}Something went wrong!")
print(f"Status code: {response.status_code}")
print(f"Response from url: {Effect.BOLD}{Effect.UNDERLINE}{json.loads(response.content.decode())["error"]}{Effect.OFF}")
return -1
jsons = json.loads(response.content.decode())
return jsons