quickserv
mojo
quickserv | mojo | |
---|---|---|
7 | 51 | |
317 | 2,654 | |
- | 0.4% | |
0.0 | 7.9 | |
over 1 year ago | 29 days ago | |
Go | Perl | |
MIT License | Artistic License 2.0 |
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.
quickserv
-
The beauty of CGI and simple design
> Zero external configuration, other than telling your webserver to enable CGI on your file
This is only true if you've done it before, and know what you're doing. In reality, it looks like a mess of `mod_cgi` configuration, trying different combinations of file permissions, finding the magic `cgi_bin` directory, finding the right obscure log files when there are inevitably errors, wrestling with CORS and other subtleties of HTTP headers, and other complexities that are only easy to navigate if you're already an experienced CGI user.
That being said, I love the philosophy of using CGI for scripts. Instead of using CGI itself, though, I wrote a (single-file, statically-linked) web server called "QuickServ" to bring this philosophy into the twenty-first century. It has all of the upside of CGI, but is much easier to set up and run, especially for beginners.
One of its benefits is that it automatically parses submitted HTTP forms, and converts the form fields to command line arguments. That means it's extremely easy to put existing CLIs on the web with minimal changes other than writing an HTML form front-end.
If you like CGI, I will (shamelessly) ask that you check it out!
https://github.com/jstrieb/quickserv
https://news.ycombinator.com/item?id=29002694
-
Websocketd – It's like CGI, twenty years later, for WebSockets
This is awesome! This occupies a similar niche to—and might pair well with—my user friendly, single-binary webserver with CGI-like capabilities called QuickServ. When I released that here, one of the comments was that it would be nice to have WebSocket support. Now, I can just point people to this!
https://github.com/jstrieb/quickserv
- jstrieb/quickserv: Dangerously user-friendly web server for quick prototyping and hackathons
- Introducing QuickServ • Dangerously user-friendly web server for quick prototyping and hackathons
- QuickServ • Dangerously user-friendly web server for quick prototyping and hackathons
- QuickServ – User-friendly web server (only for Local networks!)
- Show HN: QuickServ • Dangerously user-friendly web server
mojo
- Mojolicious
-
CSS in Perl
Initial thoughts
-
Perl 5.38 Released
If you end up doing web development, check out Mojolicious:
https://mojolicious.org/
-
How can I host a perl based website on a vps?
If you choose to go down the Mojolicious road, there's lots of deployment information and guides in the Mojolicious Cookbook.
-
Mojo may be the biggest programming language advance in decades
I guess this will make it harder to search for Mojo(licious)-related stuff. 😩
-
Getting the result/reject values from a Mojo::Promise using async subs
But if I want the return value of 'test_p' or the error message 'This is an error', I can't seem to figure that out. I tried looking at the promise tests (https://github.com/mojolicious/mojo/blob/main/t/mojo/promise.t) but that didn't seem to work either.
-
Choose boring tools
Several! The 3 big players in order of release are Catalyst, (released in 2005), Dancer2 (Dancer was first released in 2009, but went through a complete re-write as Dancer2 around 2013), and Mojolicious (released in 2010).
-
Guidance on Building a Web Application in Perl
This project sounds to me like the perfect excuse to learn Mojolicious if you're interested in converting your scripts into a web application using Perl.
-
i3mojo -- an i3status replacement in Perl
Awesome! I still use Perl on a pretty regular basis both for work and fun. I really enjoy it. Definitely take a look at Mojolicious if you haven't already. It's primarily focused on being a web framework (both server and client), but it's nicely modular so you can use bits and pieces of the stack. In i3mojo, I used the Mojo::IOLoop event loop, Mojo::Base as a base class system, and Mojo::UserAgent as a web client for some plugins.
-
The beauty of CGI and simple design
Last time I used Perl for anything web it was via https://mojolicious.org/
It even does event-based and websockets
What are some alternatives?
websocketd - Turn any program that uses STDIN/STDOUT into a WebSocket server. Like inetd, but for WebSockets.
Flask - The Python micro framework for building web applications.
Trusted-CGI - Lightweight runner for lambda functions/apps in CGI like mode
go - The Go programming language
vehiclelogserver - Vehicle logging server for Second Life vehicles
node - Node.js JavaScript runtime ✨🐢🚀✨
preemptible-thread - How to preempt threads in user space
Django - The Web framework for perfectionists with deadlines.
php - Prolog Home Page
LANraragi - Web application for archival and reading of manga/doujinshi. Lightweight and Docker-ready for NAS/servers.
quickserv-examples - Example applications to run with QuickServ
Express - Fast, unopinionated, minimalist web framework for node.