{"id":25164473,"url":"https://github.com/vizonex/pyllparse","last_synced_at":"2025-04-03T15:47:51.675Z","repository":{"id":177896253,"uuid":"661061875","full_name":"Vizonex/pyllparse","owner":"Vizonex","description":"a parody of llparse like pyppeteer that I made a couple months ago that I never got around to sharing or uploading.  Original was in typescript by Indutny","archived":false,"fork":false,"pushed_at":"2023-10-30T00:33:42.000Z","size":70,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-09T04:41:04.890Z","etag":null,"topics":["c","llparse","parody","parser","python-parody"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Vizonex.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-07-01T17:06:54.000Z","updated_at":"2025-01-13T07:12:19.000Z","dependencies_parsed_at":"2023-07-10T21:46:25.394Z","dependency_job_id":"d6b4cac4-de73-4c02-9a2c-97492df413aa","html_url":"https://github.com/Vizonex/pyllparse","commit_stats":null,"previous_names":["vizonex/pyllparse"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vizonex%2Fpyllparse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vizonex%2Fpyllparse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vizonex%2Fpyllparse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vizonex%2Fpyllparse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Vizonex","download_url":"https://codeload.github.com/Vizonex/pyllparse/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247033132,"owners_count":20872521,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","llparse","parody","parser","python-parody"],"created_at":"2025-02-09T04:32:17.614Z","updated_at":"2025-04-03T15:47:51.651Z","avatar_url":"https://github.com/Vizonex.png","language":"Python","readme":"# pyllparse\nA python parody of the typescript library llparse.\n\nI take no credit for the orginal work done by indutny and I was originally very nervous about making \nthis python library that I made public... \n\nLinks to the original library \n- https://llparse.org\n- https://github.com/nodejs/llparse\n\nUnlike the typescript library all 3 of llparse's libraries were combined in this version of the code for the sake of portability... \nI ended up mentioning how I did this a while back and I also had a concept for a C parser as well but I just didn't like it and I ended up using this instead but I also learned typescript as a bonus and It was alot of fun for me. I don't plan to make this into a real pypi library yet but I also didn't want to take away from the magic of the original source code that I borrowed from...\n\n# Why Did I Translate llparse to python?\n- I wanted to work with a langauge I was more familiar with\n- Better educate myself and others on how these great libraries like llhttp are made\n- Write faster C code that could do more than just a simple split function or a regex...\n- Make it easy for me or someone else to find a problem and solve it in typescript after testing it in python\n- Typescript takes 2 commands to run a script with node-js it while python only takes one cutting the time required tremendously...\n- The orginal project was MIT licensed.\n- I wanted to write my own C Parsering tool with llhttp styled callbacks of my own using a language I was the most comfortable with using.\n- I didn't like __Lemon Parser__ or __Yacc__ all that much and a good ide for handling them in Visual Studio Code with error checking to my knowlegde does not exist.\n- The closest thing I got to what I wanted was a project named __NMFU__ shorthand for no memory for you and even I had problems with writing things using that library...\n\nThis was the Code that inspired me to try and make a new pyi writer branch for cython and if it wasn't for llhttp \nexisting as well as it's magical experience I would've never done what I did.\n\nUnlike llparse in typescript, this version has more integrated and experimental features like automatically building the api seen in llhttp and \nI've added a few other things like the dot compiler from llparse_dot and I also made a brand new cython compiler \nfor it making easy and simple to make pxd files to port your projects to cython \n\n# TODOS\n- Make a script to compile projects to node-js by making a .gyp file for them...\n- Make a script for compiling C files to `.lib` and `.dll` extensions as well as the `.a / .so` files seen on Linux and Apple Systems...\n- Add in additional debuggers\n- Make a youtube tutorial on how to use this library on Vizonex Builds\n- Release pypi packages\n- Build an enum compiler like seen in llhttp\n- Implement llvm bytecode and js outputs if I have the time for it.\n \n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvizonex%2Fpyllparse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvizonex%2Fpyllparse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvizonex%2Fpyllparse/lists"}