Skip to content

Apify will sponsor your project: Monolith Actor on Apify infrastructure #449

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 24, 2025

Conversation

netmilk
Copy link
Contributor

@netmilk netmilk commented Mar 21, 2025

Dear Monolith maintainers,

I have wrapped Monolith as an Apify Actor by adding the Actor definition in the .actor directory and published the Monolith Actor on Apify Store a while ago. I've also added the Actor status badge and a brief usage description to the README, including the “Run on Apify” button that can drive further adoption.

The Monolith actor is used by ~30 unique users already. For the full description of the Actor, please see the README file in the .actor directory.

Monolith can now be used in the cloud without installation, free of charge. Even less technical users can avoid managing Docker environment locally, using package managers for installation or dealing with connectivity issues. Apify can even help with captchas and browser fingerprinting eventually. I learned that when I wanted to use monolith for https://apnews.com/ and it worked in the browser but not with Monolith.

The Actor can be used either from Apify Console, API, or CLI locally:

apify call netmilk/monolith --input='{
  "urls": ["https://news.ycombinator.com/"]
}'

Please see another open-source Actor example in the Docling project for further inspiration.

Apify will sponsor your project

All the links to Apify in this PR are affiliate links under the Apify open source fair share program with id monolith in the passive tier of the program. In the passive tier, Apify commits to sending a monthly commission via the GitHub Sponsor button from all new sign-ups that come through your link. In your case distributed to @snshn. The only action required on your part is to accept this pull request.

You can earn a larger commission and gain insights into traffic by registering directly with Apify, claiming ownership of the Actor on the Apify Store, and maintaining the Actor yourself. Simply contact support after signing up and pass the ownership challenge. The Actor will then be transferred, e.g., to Y2Z/monolith, and you’ll see it under your Apify account.

To further increase your income from Apify, you can convert your Actor on Apify Store to the pay-per-event pricing model and join the active developer tier. We offer an individual competitive advantage for the active developer tier in the form of either a significantly reduced Apify margin or discounted compute unit pricing. Feel free to ask for it!

Benefits of the Actor Programming Model

The Web Actor Programming Model is a new concept for building serverless microapps, which are easy to develop, share, integrate, and build upon. Actors are a reincarnation of the UNIX philosophy for programs running in the cloud. Actors are web automation tools that are easy to integrate and scale up. The main benefit is that even a small piece of software can be turned into a public cloud service in a heartbeat.

Apify is the largest ecosystem where developers build, deploy, and publish data extraction, web automation tools, and AI agents. With over 4,000 Actors on Apify Store and 10 years of experience in the market, Apify makes Monolith accessible to over 250,000 developers using the platform monthly. This also enables integration with other Actors on Store, custom Actors, and platform integrations that can create much more powerful workflows than just individual parts.

Full disclosure

I work at Apify. Apify doesn’t sell your software, but we sell the computing resources needed to run your software in the cloud to the end users. Your project is one of the first we selected to pilot Apify's open source fair share program. Please let me know if there’s anything I can do to help you accept this PR! If you do, we’d be pleased to feature your project in our marketing communication.

If you have any questions or need assistance, don’t hesitate to reach out to me @netmilk, on LinkedIn, or just write us to [email protected]. We're always excited to work with the open source community! There's definitely room for improvement regarding performance, error handling, coverage of the Monolith CLI parameters, release management, Apify proxies, and anti-blocking usage.

Bonus: UI

Apify brings your software to non-developers (or non-coding developers) with a generated UI and results available to download. That makes the community of your potential users much bigger, making your software more accessible with close to zero investment.

image

@snshn
Copy link
Member

snshn commented Mar 24, 2025

Dear Adam,

thank you for making this PR.
This seems like a very fortunate turn of events for this project.

Thanks to the money flow from Apify, I should be able to dedicate more time to this project.
It has many users, and I'll be sure to make it a better tool for us all, ergo a better Actor for your platform.

@snshn snshn merged commit 299da5b into Y2Z:master Mar 24, 2025
4 checks passed
@netmilk
Copy link
Contributor Author

netmilk commented Mar 24, 2025

Hello @snshn,

It made me super happy to see the PR merged. Thank you, I'm excited. Please don't hesitate to mention me or @souravjain540 in any future Issues or PRs. Or just send us an email to [email protected]. We'll do our best to support you as much as we can.

@snshn
Copy link
Member

snshn commented Mar 24, 2025

Hey Adam,

my pleasure! I have a dream to eventually have significant enough of an income stream from this project and my other open-source work to develop and maintain Monolith full-time. Maybe I'll get there, given enough use via Apify, but even a little bit of money will surely help me focus on it.

Cheers,
🌞

@netmilk
Copy link
Contributor Author

netmilk commented Mar 24, 2025

I'm super happy to hear that, big open source fan myself. I wish you the best of luck!

If you want to chat, let's brainstorm how you can package, distribute, and monetize your other open-source projects with Apify! What are they?

@snshn
Copy link
Member

snshn commented Mar 25, 2025

Well, ultimately, I want this:

Stimpy Altman

I understand that it may take time to get there, ergo I'm totally comfortable to start by making a little bit of money here and there. Monolith can now be used as a library — not sure if it's affecting the Apify actor at all, but perhaps it could be used in a more efficient way.

I'd love to know how much Apify could approximately benefit me if I decide to take ownership of that actor and dedicate more time to optimizing and improving Monolith to work better and satisfy the needs of more users. Is there a ballpark number per user that can be assumed, or the amount of money varies greatly from actor to actor?

@snshn
Copy link
Member

snshn commented Apr 1, 2025

Hi @netmilk,

just created Apify account and emailed your staff to verify and take ownership of the actor.

As for projects that I think I could create actors for:

qr CLI
https://github.com/Y2Z/qr — creates ASCII qr codes

whoisthere
https://github.com/snshn/whoisthere — Rust crate for parsing domain WHOIS information

knock-knock
https://github.com/snshn/knock-knock — CLI tool / library for checking how soon the domain(s) will expire (uses RDAP, but I'm going to make it fall back to whoisthere for parsing WHOIS info as well, RDAP sometimes isn't available)

IPO Stalker
https://github.com/Nerd-Trader/IPO-Stalker — currently a GUI program, but can be easily made CLI; it's a scanner for upcoming IPOs, scrapes information from global exchanges

Upworker
https://github.com/snshn/upworker — scraper with audible alerts; I used it to find small jobs on Upwork, I currently have a Qt/C++ version on my machine, it's very similar to IPO Stalker. If I make it scrape jobs from all over the Internet, not just from upwork, I think it has potential

I have a couple of other open-source projects that are not yet public, could tell you more via email if you're interested.

Thank you.

@netmilk
Copy link
Contributor Author

netmilk commented Apr 2, 2025

Hello @snshn,

I just wanted to let you know that we've received your ownership claim; more info, and instructions will follow via email.

I absolutely love the picture you shared above. :) I'm genuinely excited to support you on your open-source indie developer journey.

Thank you for sharing the list of your other projects. I've reviewed all of them, and each one looks perfectly suited for actorization with no issues at all. We have an Upwork scraper Actor, but the other you sent should face zero competition in the Apify Store. If you keep them open source, we’ll gladly help you market them (even the Upwork one). I’d recommend starting with knock-knock since it can be actorized as-is without any modifications.

If you create an actorization branch in each repository and mention me in the (draft) PR, my team and I will work with you to fast-track the process and provide any support you might need.

I'm looking forward to working together!

A

@snshn
Copy link
Member

snshn commented Apr 4, 2025

@netmilk,

Thank you Adam! Very happy to know you like it. I drew it myself. I believe the OpenAI story can truly serve as an inspiration to us all, it is the modern-day example of working hard to create something out of nothing, and then gifting it selflessly to the world... and also getting a band-new shiny Koenigsegg Regera while at it. And they say open-source doesn't pay! 🥹
Sorry, I think I got a little too emotional.

Thank you for your email, I'm extremely happy to get back on the path of doing work that indisputably matters, and knowing people actually use and benefit from my enormous talents. It gives me energy to create more. I depend a lot on the love I get back. And money. Mostly money. It's actually just money, I don't believe in love. Maybe money IS love and love IS money? That actually would explain a lot. But I digress.

I agree that retrieving domain name information can be a very useful API. https://www.whoisxmlapi.com/ is the only known way to me to do that outside of using WHOIS services of registrars or the whois console command. Providing an RDAP-based service could be a much more convenient alternative. I could say safer, too, but there's no way that registrars quietly collect frequent WHOIS requests and then use that to sell that data via the dark web or create "premium" domains to auction for thousands of dollars — that absolutely can't be taking place, it'd be immoral and unethical. Likely illegal, too.

Making actorization branches sounds smashing, gonna begin working on those right away! May I ask if Apify actors prefer JSON output from the application over CLI? I've been thinking of adding it to many of my tools, I think it could be a much easier way to "glue" CLI commands to agents with a simple -j flag. I could also make a lot of those tools work as a Rust crate, the way I recently made Monolith "importable" — so that no CLI interaction would be necessary.

Hey, I'm excited even more!
So cool!

🌞

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants