iplib3
python-ms
Our great sponsors
iplib3 | python-ms | |
---|---|---|
31 | 15 | |
11 | 1 | |
- | - | |
8.7 | 8.8 | |
10 days ago | 10 days ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
iplib3
-
Blackjack project review
Instead of keeping all the code at the repository root, maybe consider a more traditional project structure. As far as examples go, I've got this for an executable, and I think this works for a more complex project.
-
Relative importing from another directory. No known parent package.
What that means in practice, I have yet to figure out how to explain in the simplest way possible, but perhaps an example repository might help somewhat. The details more or less boil down to
-
A tip I just taught myself
First, some values simply never change. For example, my iplib3 has plenty of hard-coded constants set by the IPv4 and IPv6 specifications and there's no need to have those in some external config file because, again, unless the standard gets updated those are constant.
-
I’ve been struggling with organizing projects and utilizing classes so I’ve been looking for public projects I can study
I haven't touched this codebase in a while (although I really should), but it serves as one of my better examples for object-oriented programming. It's reasonably large, yet meticulously linted: https://github.com/Diapolo10/iplib3
-
Help with importing custom packages
I don't have any projects using setuptools anymore so unfortunately I can't give an example for that, but if Poetry is fine then iplib3 will probably suffice. Focus on the imports and the project structure, and maybe pyproject.toml, everything else is just noise.
-
Begginer learning Python
Well, my GitHub profile is part of my flair in this subreddit, feel free to dig around. My latest project was an attempt to port the ms JavaScript library to Python, and I think I did alright. Other things I can highlight would be my iplib3 package, a server implementation for the EguiValet messaging service, and finally I've got a fairly unfinished text colouring utility called escapyde.
-
Suggest me so GitHub repositories
And iplib3 could use some cleanup, such as redesigning the inheritance to add support for seamless conversion between all supported types. The documentation should also be written as right now there's basically nothing.
-
Casino Craps Game - Code critique and project help
You could maybe take a look at my iplib3 project for some examples. Alternatively, the EguiValet server project should be fine too.
-
Are there some rules that state how code for python module should look like?
While I have a very recent project that would otherwise be a perfect example, it does something a bit unusual with imports so I'll instead use iplib3 as an example, even though I haven't had time to work on it lately.
-
How to write 'helloworld'-level unit tests?
The Pytest documentation does a much better job at explaining how this works in practice than I ever could. I don't have any super simple example repositories, but iplib3 might work: https://github.com/Diapolo10/iplib3/blob/main/tests/test_address.py
python-ms
-
Sleekiest Python Trick you know.
Traditionally, you import a package and then use things from it to do a task. However, it is actually possible to have the import itself do stuff; I used this technique in python_ms to replicate the original JS module down to its import. And fuckit did it way before that.
-
What's the best way to manage Python versions and environments for a beginner on mac?
As a side note, if you use GitHub Actions or a similar CI/CD system, you can use a matrix or equivalent to create builds or run tests on various different operating systems and Python versions, so you might not even need to worry about running multiple Python versions locally. For example, I use that to build releases for multiple platforms, and to run comprehensive test suites in all configurations.
-
Importing modules
At first I considered this one, but since it does some funky stuff with sys.path I figured that might confuse you if you started to follow everything to the letter. Otherwise it would probably be more suitable.
-
I`ve created my first project on GitHub
I don't really have any simple project examples that use databases (the closest thing would be a certain server project, which is probably too complex for you right now), but to showcase project structure I can suggest python_ms.
-
Wordle Solver package for fun/practice, would really appreciate any feedback or suggestions!
I'm also rather fond of GitHub Actions, so I'd create additional scripts for Dependabot updates and some linters/Black to automatically run on every push/pull request. Maybe even automating the PyPI publishing process via Git version tags, and adding releases to GitHub. For that, I believe python_ms is a decent example.
-
Coding Project Review
First impressions; I kinda wish the code was in its own subdirectory as generally speaking the repository root is for metadata files/build scripts only. This project will probably serve as a decent example of that.
-
Python Library Upload
I also recommend at least looking into letting a CI/CD pipeline handle this for you (for example GitHub Actions) because that way you don't need to expose your API key in the repository, or risk committing secrets in general. As an example, here's my Actions script for uploading new python-ms releases.
-
My first project is a mess!
Having a pretty README also can't hurt, I'm particularly proud of this one: https://github.com/Diapolo10/python-ms/blob/main/README.md
-
Design patterns and structure of source files
As far as examples go, I think my EguiValet server project might suffice for this one. It's probably a bit bigger than whatever you're working on, but python_ms would probably be too bare-bones in this case.
-
Publishing to PyPI via GitHub Action
If you want an example, python_ms will probably work. I decided to publish on merged pull requests to main instead of waiting for tags (I should probably change that in my template by now), and it's using Poetry, but it's my smallest project that's easy enough to follow in a short time.
What are some alternatives?
pytricia - A library for fast IP address lookup in Python.
RuneScore - A script that pulls a RuneScape player's stats from Jagex' servers, and outputs a HTML file containing them.
iplist-youtube - An attempt to list all Youtube IPs at one place.
rcoc - Random country, city name generator
ipnetwork - IPNetwork command line and C# library take care of complex network, IP, IPv4, IPv6, netmask, CIDR, subnet, subnetting, supernet, and supernetting calculation for .NET developers. It works with IPv4 as well as IPv6, is written in C#, has a light and clean API, and is fully unit-tested
DBMS
5G00EV25-3001_server - The server side of the course communication system project
escapyde - Yet another ANSI escape sequence library for Python - now modernised!
5G00EV25-3001_client - The client side of the course communication system project
gh-action-pypi-publish - The blessed :octocat: GitHub Action, for publishing your :package: distribution files to PyPI: https://github.com/marketplace/actions/pypi-publish
sportsipy - A free sports API written for python
schedule-generator