pygame-community / pyga.me Goto Github PK
View Code? Open in Web Editor NEWπΈοΈπ The website for the pygame community hosting the landing page and pygame-ce documentation.
Home Page: https://pyga.me
License: GNU General Public License v3.0
πΈοΈπ The website for the pygame community hosting the landing page and pygame-ce documentation.
Home Page: https://pyga.me
License: GNU General Public License v3.0
Like https://unity.com, we should have a hamburger menu instead of just having a smaller navigation bar. Whoever wants to work on this, please use this icon library: https://fonts.google.com/icons
Hugo isn't a python-based static website generator, but it's currently used by
Before I begin, I would like to clarify that the initial reason for choosing React + NextJS was to get a website up and running as quickly as possible within 4 days without learning any new website frameworks.
The reason for this switch is that we are currently using NextJS + React, which are heavily based on JavaScript/TypeScript and since most of our contributors are low-level programmers heavily involved with C, learning a new language like JavaScript could be frustrating. Another thing to note is that we do not use any dependencies related to React, so there should be no reason to even use it in the first place.
I would like @Mega-JC & @Starbuck5's opinions on this.
Hello! I noticed that the Six Shooter image at the bottom of the page had disappeared. After some poking around, I discovered by setting my zoom level to 90% or below, the image appeared. 100% or above, it was as if it didn't exist. In case, you were wondering, I set my zoom level through the Cmnd/Ctrl and + keys. This issue is probably occurring because my monitor size is to small. The fix is probably to set the image's size with dynamic units (vw, vh).
I think we should have a section dedicated to listing all the changes across pygame-ce versions. It could possibly list all the changes from the latest version at the top and further down show older versions.
This repository was created to quickly get a website up and running for the pygame-ce fork of the upstream pygame project and its documentation, both which can now be accessed at https://pyga.me and https://pyga.me/docs .
This effort is really appreciated, not just by me, but by probably all the other pygame-ce developers and users of the site.
However I later noticed that the scope of the website was left pretty open-ended, with the overall goal being the creation of a dynamic site for the entire pygame community, involving things like a system for user projects.
This sounds cool, but from my perspective, taking the website in that direction doesn't seem like a good idea. Despite the JS-only tech stack, there seems to be a lack of planning for how to reliably expand the site to fulfil those promises, as well as a lack of communication with the org maintainers on how to manage the project.
Instead of expanding the website this way, it would be better to keep it as a surface for showcasing pygame-ce as a library and host its documentation instead, much like it's currently doing, and move plans for dynamic community content (e.g user projects) to another project entirely.
This has multiple benefits:
Simple, zero-cost static site hosting for pygame-ce related matters via GitHub Pages.
This frees up developers from worrying too much about web development matters, as they can instead focus on putting up up-to-date information about pygame-ce online.
Separation Of Concerns.
Community endeavours are best managed separately from the development side of things, as they can be much larger in scope and more demanding. This also applies to websites. However, this doesn't mean that both must be completely isolated, as links can be used to seamlessly link them together.
By separating the larger aspects of a dynamic community website from the smaller aspects of a development/documentation website, we on the community management side can better define the goals of the site, the technology required, the way development should be managed, the external services required to run the site, the domain name to use, and how to fund the endeavour.
Before the forking of upstream pygame and pygame-ce, plans for a community website were raised multiple times in the Pygame Community Discord server from both server staff and public members, and ever since registration was disabled on https://www.pygame.org and the site maintainer started taking it down to virtue signal political matters, it's become pretty clear that a new website would benefit the pygame community at large. Let us give this endeavour the attention and organisation it needs to be successful for a long time.
Now pygame can be deployed on most platforms(web,android,desktop).So if the website contain some info about would be great.
eg: pygbag for web,buildozer for android,pyinstaller for desktop(win,mac,linux)
https://pyga.me/docs/ref/sprite.html
I believe this paragraph is discussing Groups, but erroneously refers to a Sprite class drawing multiple Sprites it contains.
we can definitely work from here - https://www.pygame.org/wiki/tutorials although it would also be nice to write out own tutorials. Maybe we could write a mini tutorial series which takes you from start to finish building a simple game
If you attempt using pygame.mixer.Channel.queue
with a Sound derived class, pygame will raise an error as if you didn't pass a Sound-based class at all. Here is the class I use, which netted me the error:
# _SoundBase is an alias for pygame.mixer.Sound
class Sound(_SoundBase):
def __init__(self, file: str|ndarray|_SoundBase):
if isinstance(file,str):
super().__init__(resource_path(file)) # Keep the source directory in case it's needed, and use an absolute path instead of a relative one
self.dir = file
elif isinstance(file, _SoundBase):
super().__init__(file) # Clone the original Sound object
else:
super().__init__(array=file)
volume = property(
_SoundBase.get_volume, _SoundBase.set_volume, doc="The current sound's volume."
) # Access the volume as a property for convenience.
num_channels = property(_SoundBase.get_num_channels)
# Convenience conversion methods
def __bytes__(self):
return self.get_raw()
def __len__(self):
return self.get_length()
def __copy__(self):
return self.__class__(self.dir)
def play(self, loops: int = 0, maxtime: int = 0, fade_ms: int = 0):
if is_played(self): # is_played is a function checking if a sound is played by at least one channel.
super().stop() # Stop the previous playback to avoid sound overlapping
return super().play(loops, maxtime, fade_ms)
copy = __copy__
__deepcopy__ = __copy__
And here is the error I got (pygame-ce 2.3.2 (SDL 2.26.5, Python 3.12.0)):
Traceback (most recent call last):
File "C:\Users\XXXXXXX\Documents\Python\Oracle-Project\testEngine.py", line 1733, in <module>
get_channel(wooshpart1).queue(wooshpart2) # wooshpart1 and wooshpart2 are both instances of Sound (the derived class)
TypeError: The argument must be an instance of Sound
Hey,I was just thinking of adding a playground page
(A page that provides the ability to run pygame web games(pygbag).)
eg : https://playground.pyga.me/gameId
Or is there any other decisions taken by the core dev team?
The official website representing Pygame: Community Edition utilizing NextJS, ReactJS, and TypeScript. We are currently using GitHub Pages to deploy our website, which might change in the future if we decide to add a database to store user projects
This is an issue for discussing alternative hosts for deploying pyga.me website.
All tutorial links in https://pyga.me/docs/#tutorials redirect to "This page could not be found"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.