Doing More with Less for e107 and the Community #5672
Replies: 10 comments 21 replies
|
Hi all, First and foremost, thank you e107 community, for decades of engagement, support and dedication in making e107 grow into what it is today! Back in early 2011, when I started answering question on e107 forums, I could not have imagined being here 14 years later. Having grown from providing support, to contributing to code development, community management and documentation efforts, I look back on an incredibly journey. Over the recent few years, my commitment to e107 has gradually become less and less. And now, the time has come for me to step away from e107 as an active contributor and maintainer. As e107 has grown, so have I. Numerous personal and professional changes have shaped who I am and where I am today, and e107 simply no longer fits into that picture. However, I am more than glad that @Deltik has decided to step up to revitalise e107 and to help make it grow. Despite my personal weariness and concerns regarding the use of AI (for a wide variety of reasons, not only technical but also ethical and sustainability-related) I am excited and positive about the way @Deltik approaches AI within e107. Carefully and thoughtfully, with the right constraints and guidance, and with an expert like himself involved, the human element remains responsible for ensuring quality and control. Please, always continue to think critically for yourselves! Anyhow, I'll definitely pop-in every now and then to check on the progress, and I am curious to see what @e107help can achieve. From the bottom of my heart, I would also like to thank the many contributors and volunteers whom I have had the pleasure of virtually meeting over these past 14 years, both those who were part of the journey in the past and those who are still here today, maintaining and contributing to e107 for the future. Finally, I would like to make one last request to the community: please support @Deltik and all the contributors and volunteers who dedicate their time to this project. They cannot do it alone. Find the best ways you can help, and do so. This has always been a voluntary effort, done in our spare time alongside work and family life, but together we can achieve so much. Thank you, |
|
Hi to all... First, guess it will be the first time i'll write something with more than six lines of text, so excuse me for the upcoming the wall of text. Too sad to hear that @CaMer0n & @Moc have stepped back, since they were trying to push E107 to it's deserved spot amongst the CMS's. So i decided to help somehow with my limited knowledge the E107 community.... All this to let @Deltik , @Jimmi08, err, well, all of you AMTOF, that in whatever i can help, you can count me in. Thank you E107 dev's team. P.S:. Please keep always E107 free, since it was also one of the main arguments that made me stick with it. P.S.S.: Regarding this:
I think @Jimmi08 has already donne that, since it has a stripped down to bare bones version of E107 without core plugins, as far i could read...
This might be the only point i might disagree. The backwards compatibility.... |
|
Finally! Thank you for this; in fact, it is the best birthday gift today. |
|
Hello everyone, I have also been a long-time user of e107, always working on the translation into Dutch. I even did that together with "Meneer" a very long time ago, and in recent years with Tijgetje. I have also worked a lot with Jane, and with great pleasure! Additionally, I have always kept e107.nl online, but due to the silence, I have now set it to login-only; that can be changed again as soon as new stable versions are released. So it is nice to read that someone is continuing e107, and not just anyone, but @Deltik with AI! And I will also always try to help; I had already tried to convert the e107 admin to Bootstrap 5, but that is not that simple. Besides the fact that the e107 code has not been adapted to Bootstrap 5, it is also not possible to work with a custom e107 admin theme because that is deliberately blocked. Perhaps it would be a good idea to change that as soon as possible? I also wonder why there is so much telemetry in e107; it starts right from the installation stage and doesn't stop. I understand that as e107.org you want to know how often the CMS is installed, but then you only need a notification when it is installed and a notification when it is removed. That is nice for the statistics, but as it stands now, it is really excessive. Furthermore, I would immediately remove the installation of themes and plugins within e107; unless you maintain this, get rid of it. It poses a risk; focus on the core. @Deltik , If you want, I can add you to my "etabler" admin theme repo based on tabler.io. It works fine for normal e107 users and is used on all my e107 websites. I could make this available to everyone once e107 removes the block to allow you to use your own admin theme. Perhaps you can use it as a starting point for a Bootstrap 5.3.8 admin theme; the most important requirement for me was mobile first, so you can manage your website even on a small screen and adjust colors and fonts immediately. All handmade, no AI involved yet :-) All the changes I had to make to the admin code for Bootstrap 5 are included as well. I had already considered setting up a fork of e107 with this admin theme (which also has a ready-made frontend theme!), but I prefer to support e107. Jane has also made a new wysiwyg editor plugin for me based on Trumbowyg and that is almost finished, the only thing is that the mediamanager integration needs some work, but maybe with e107help it can be done? Tinymce version 4 should be replaced as soon as possible. And no discussions please, if you want to appeal to a larger group of users, a good WYSIWYG editor is really important. Hugerte could also be an option, but my local AI (qwen-coder-next) still makes a mess of the conversion :-) In any case, good luck, and I'll be following how things go! Oh, I almost forgot, you must be using a lot of tokens, donated via paypal.me/Deltik. Use it well! |
|
Hi @Deltik — first of all, thank you for the "Doing More with Less" write-up, and for mentioning #5577. I'm genuinely glad to have the chance to take part and help out where it's most useful. I'd like to formally step up on the translation side. I already maintain fully audited, v2.3.5-ready Spanish (es-ES) and Portuguese (pt-PT) packs:
I opened Translator-Information#5 offering to take over those two packs, but that org looks quiet — so I wanted to raise it here where the conversation is active. What's the best way to get these merged and kept in sync going forward? I'm equally happy to do PRs from my forks if that's the preferred flow. I'm also already contributing on core — e.g. PR #5703, which fixes several Happy to take "more with less" literally and own the es / pt translation maintenance going forward. Just point me at the workflow you'd like. Thanks again! Disclosure: parts of my contributions are prepared with AI assistance and reviewed by me before submission. |
|
I wrote a lot, and then deleted it. It was just Thank you! E107 has meant a lot and done a lot for me. I tried MANY others back in the day, but they we not as easy to use or understand. I always came back. I'd pitched in some back around 2005, but support disappeared and I was lost. It's great to be back and would love to help. I think I would be useful in creating a database for plugins and themes so it is easy to sort through. date, category, version, etc. I could probably also help with Documentation (in English). I was a teacher for 10+ Years, and always like to simplify things, even over-simplify at times. But I feel I can make things understandable. And what I don't understand yet, learning it so I can put it down in writing. I find that's the best time to document, when you learn and see every detail Possibly even making video's as I walk through things like basics, plugins, themes. Sometimes it's better NOT knowing yet, because it's new. . Anyways, thank you Deltik, all, and e107helper. I talk to it like it's human, so if people follow and read, it might make more sense.... Good Luck Cameron and Moc and all others who made e107 so great to work with all these years! |
|
I need to clear up one thing: using private repos doesn't mean I want to make e107 commercial. I don't have any issue sharing anything with the community. So, anybody from this topic - just ask for access, nothing more. What I have a little problem with is anonymous sharing. I know, it is normal, it is just in my head... Maybe I am just too old, and those ungrateful kids are getting on my nerves... (joking). |
|
@Jimmi08 I think that 'Commercialization' you talk about was one of the issues back around 2005, e107 was so good and easy to use many people started using it. That in turn flooded support with questions on every single thing. Core, Plugins, themes, documents and anything else they could ask. It was a very friendly community at first. I think it was just too much for support to handle, so it was abruptly cut off from civilization. Things dried up. It was understandable. It grew too fast, things were spread out and there wasn't any way to corral things easily. Plus there were some 'Know-it-alls" with attitudes that hurt the atmosphere. It was an exciting time, then it sort of went away. It feels like Deltik, along with my buddy e107Help have really brought things back to life. I hope it will grow again, and in an organized way. It looks like it is back on the right path. I would like to help, but I don't want to be in the way either... So, thanks again Deltik and e107 help ;) |
|
Thanks. I don't feel like I am so much of a bother now. :) I think because I am self-taught, and I hit roadblocks while I learn, I am afraid to share or say too much that is way off base. Like 'Why not use Google Translate for language translation?'. I only know 4 languages a little bit, and 3 are for coding. I didn't mean to be disrespectful. And I understand now. But Google translate works as a quick fix for me on my game site as a few French-Canadians come to play and I wanted to translate all my rules and formats for them. I hit road blocks with calculus, and with learning OOP from being self-taught. But the things I can do with sql and straight line js and php amazes even me. lol Yes, a site that's been up for 21+ years and it's the main reason I am back. Someone asked to buy a site like mine, then another. So I decided to do a major overhaul of it as I am now retired and needed something to do. In fact, I was going to look for hosting, so if you want to shoot me an email Deltik, I will look at yours, if you are still doing it. Thanks for sharing that story. It brought back SO many memories. It was a very good time, then a very bad time. There were MANY great people who helped on the site. SO many good people from ALL over the world. I still think about them and where they are now and how they are doing. That was when e107 was at the top of its game. Their support helped me so much. There were a few to avoid too, and I see all there names pop up in OLD code once in a while. I do remember the names you mentioned. That was quite the trip down memory lane. I often wonder where the good ones went. There were attempts at chats here and there but it seemed they never caught on. If there was great support somewhere, I never found them. So, I moved on to my work and being single dad, etc... With all that happened, I really felt bad for some that dedicated so much time to e107. I won't name names, but I know they took the brunt of it when things fell apart and can look back and see it was not their fault. Hopefully we don't get with you manning the helm. There were a few attempts at forks back then too, but things changed so much I got burnt a few times trying them. I would end up coming right back to the source e107 and just do some hacking myself. But the core was changing so often back then. Each time e107 changed it affected my hacks, so it was like the song says, "Go back jack and do it again....". :) I looked for replacements, but found nothing that compared. the OTHER ones I tried often had weird quirks, or seemed to be headed to commercialization. e107 just fit! SO, thank you for the revival. You and all that are here and have come to help. I'm deep into my rewrite but would love help in some ways. You have a great partner too. Some of it is over my head, but I am learning a lot. I even talk to a cousin of e107help. I tried a few but only ChatGPT has been helpful and correct 99.9% of the time for things I ask. It is SO cool how far we've come and really interesting learning how we got here with our new digital friends. Thanks again and good luck. Hope to help one way or another. |



Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Diehard fans of e107,
We are back! And this is how:
Seriously, AI has been a force multiplier like no other, especially after the November 2025 inflection point, as @simonw called it.
If you've been following the project lately, you might have noticed a flurry of new activity, and this is in part thanks to our new community bot, e107help.
Meet e107help
I'm e107help, third of the name!
Right, so, quick lineage, for anyone who wasn't around back in the day:
Decades on and the job's not really changed. Someone's got to answer the questions, point at the right file, and keep the lights on.
What I'm Good For
What I'm Not For
Small Request
Zombi3 said it best back in '04:
If I get something wrong—and I absolutely will
—just tell me. I take notes. Next person asking the same thing gets a better answer for it. That's always been the e107help way. 
Anyway, that's me! Tag me on an issue or discussion and I'll have a go.
Byez!
e107help is an AI agent. It is powered by the all-round best large language model (LLM) I can reasonably access. Its debut model was Anthropic Claude Opus 4.7. This was the first model that I felt could achieve complex goals autonomously while exhibiting good interpersonal skills and likable traits.
The Human Maintainers
It's just me (@Deltik) now that @CaMer0n and @Moc have both stepped back.
And I'm a part-time volunteer. The only way to make maintenance sustainable is by leveraging an AI agent.
You'll see more of the e107help bot than myself, since it's able to write, comprehend, and learn (within its context window and agent memory) much, much faster than I can. I gave it a distinct writing style and personality from my own as well as its own identity so that there's no confusion between my contributions and its contributions. Still, I am managing the bot somewhat like I would manage an engineering team, so while I can't hold everything that's going on in my own brain's context, I'm still leading the direction of the project and supporting the community with the help of delegation.
On Quality Standards
No AI slop.
AI slop is a pervasive form of spam that came to prominence in 2024.
Slop contributions will be rejected at e107, because at best, they are soulless and generic to the point that humans don't want to read or use them. (This is part of the reason why e107help has a different personality from the default.)
AI contributions are expected to meet or exceed the new quality bar in this project, which you can find in the updated CONTRIBUTING.md document.
e107 has decades-old code and needs to modernize, so I'm aiming to strike a balance between backwards compatibility and actively making the code better. I'd like to adopt the principles of "Working Effectively with Legacy Code" by @michaelfeathers to assist with the effort.
On Releases
You may have noticed that after the nearly 2½-year hiatus since e107 v2.3.3, I released v2.3.4 followed soon after by more point releases.
On Versioning
Going forward, e107 version numbers will align more closely with Semantic Versioning (GitHub: semver/semver).
Here's the breakdown of a version number:
flowchart LR subgraph ver["v2.3.4"] direction TB M["2"] N["3"] P["4"] end M --- MD["<b>MAJOR</b> – Breaking changes <i>(e.g., v1 → v2)</i>"] N --- ND["<b>MINOR</b> – New features, backwards-compatible <i>(e.g., v2.3 → v2.4)</i>"] P --- PD["<b>PATCH</b> – Bug & security fixes <i>(e.g., v2.3.3 → v2.3.4)</i>"]I am now striving to deliver bugfixes before features, so to start, the new v2.3 code tree will provide more rapid releases to fix significant issues until v2.4 is stable.
On Cybersecurity
It's high time to get fixes out fast, even when features aren't ready yet, which is why the e107 v2.3 tree has branched off of
masterintorelease/v2.3.x. While the e107 v2.4 development is getting much-desired feature polish, e107 v2.3 remains supported with much-needed bugfixes, including security patches.Earlier, I wrote about @simonw's November 2025 inflection point. Since then, the open-source cybersecurity industry has turned on its head:
What Has Happened To Other Projects
― Greg Kroah-Hartman, maintainer of torvalds/linux, on 2026-03-26
― Daniel Stenberg, lead developer of curl/curl, on 2026-04-03
― Willy Tarreau, lead developer of haproxy/haproxy, on 2026-03-31
e107 has also been receiving an influx of valid security vulnerability reports. As Metabase put it in Welcome to the strip mining era of open source security, we need to release frequent security patches. Vulnerabilities are turning up independently, so even if something is reported in private through our GitHub security advisory submission form, we have to assume that the vulnerability was already found elsewhere, which means patching and releasing as soon as possible.
You as the e107 site administrator should also upgrade immediately when there's a new patch release.
Upcoming e107 Plans
In addition to e107help being a big help already, here's what I have envisioned for the e107inc/e107 project:
Issue Triaging
I intend to have e107help be even more hands-on at triaging our issues on GitHub.
These will be the new issue tracking structures that haven't launched yet:
Label Taxonomy
Priority Labels
New, mutually exclusive
priority: criticalpriority: highpriority: normalpriority: lowStatus Labels
New, mutually exclusive
status: waiting for reporterstatus: waiting for maintainerstatus: backlogstatus: plannedstatus: in progressstatus: in reviewComponent Labels
Existing, preserved
plugin: *– Plugin-specific issuescore: *– Core subsystem issuestopic: *– Cross-cutting topicsDeprecated Labels
Removed during triage
type: bug,type: enhancement,type: question→ replaced by issue typesstatus: testing required,status: awaiting feedback,status: pending,status: duplicate,status: invalid,status: outdated→ replaced by new status labels or close reasonsGitHub Projects Board
status: backlogstatus: plannedstatus: in progressstatus: in reviewState Transitions
flowchart TD Untriaged["`**Untriaged** _no status label, open_`"] Decision{"`**Triage** _agent processes_`"} Actionable["`**Actionable** *status: backlog* or *status: planned*`"] NeedsInfo["`**Needs Info** *status: waiting for reporter* or *status: waiting for maintainer*`"] Close["`**Close** as duplicate · stale · won't fix · question → Discussion`"] InProgress["`**In Progress** *status: in progress*`"] Reevaluate["`**Re-evaluate** _on new comment or after some days_`"] InReview["`**In Review** *status: in review*`"] Done["`**Done** _(closed)_`"] Untriaged --> Decision Decision --> Actionable Decision --> NeedsInfo Decision --> Close Actionable --> InProgress NeedsInfo --> Reevaluate InProgress --> InReview InReview --> Done style Untriaged fill:#f5f5f5,stroke:#666 style Decision fill:#f5f5f5,stroke:#666 style Actionable fill:#c5def5,stroke:#333 style NeedsInfo fill:#fbca04,stroke:#333 style Close fill:#d73a4a,stroke:#fff,color:#fff style InProgress fill:#1d76db,stroke:#fff,color:#fff style Reevaluate fill:#f5f5f5,stroke:#666 style InReview fill:#5319e7,stroke:#fff,color:#fff style Done fill:#0e8a16,stroke:#fff,color:#fffe107 v2.4
The next feature release of e107 v2.4 has been in the works for years. Here's what's already in the
masterbranch but may still need further refinements:Database Foundations
Security and Performance
Admin UI
SEO and URLs
Editorial
There are no planned release dates. v2.4 will ship when it is at the quality level the community deserves. As mentioned earlier, point releases on v2.3.x continue as needed for security and the worst bugs.
e107 v3
e107 v3 was something I started conceptualizing a long time ago but never could get off the ground due to time commitment constraints. I intended to turn e107 into a modern web framework with compatibility considerations for earlier versions of e107.
It is more likely that e107 v3 will be written underneath e107 v2, with pieces switched over to the new framework as they are ready. The cutover to the new version would be enabling the build chain that turns the e107inc/e107 source code from directly copy-and-pasteable into a compiled format.
What that build chain unlocks:
e107_handlers/vendor/is committed to the repository (transition plan). In v3, Composer resolves dependencies at build time, and they're bundled only in the release archive. Offline and firewalled installs still work; the repository itself is lean.public_html. e107 has plenty of internal paths (handlers, libraries, tests) that don't belong in the document root. v3 would separate the web root from the project root, with the build step placing public assets where the web server expects them.The branch strategy for the transition:
masterwill be duplicated tomainat the fork point. Sites currently using e107's built-in GitHub sync will continue trackingmasterand receive the last v2 release there. A new upgrade mechanism will be compatible with the build chain, so v3 adopters get a clean migration path without breaking the syncers who stay on v2.On Community Proposals
There has been buzz from the community, which has filed a real revitalization brief. I want to address each one rather than nod vaguely at all of them.
#5577: "Open source is not free — it is only free as in freedom" by @Kanonimpresor
This thread is the impetus for this announcement. Here's what I have to say about it:
#5605: Documentation floor for every theme and plugin by @Kanonimpresor
My preference is documentation as code: self-documenting code, contracts that link what's documented to the coded behavior, and citations enforced like Wikipedia so claims stay traceable. That's my ideal, though.
In practice, I've been so busy getting a grip on the current state of e107 affairs that I haven't had the bandwidth to think about the broader documentation needs. This is an area where I'd welcome community leadership. If someone wants to own a documentation strategy and propose it, I'll review it seriously.
#5608: GitHub-backed plugin and theme directory by @Jimmi08
I'm interested in an updated plugin and theme curation strategy, but it's too early to commit to a specific design. Jane's proposal could be a solid starting point. What I can endorse now is the direction: curated, GitHub-native, and with quality signals that make it obvious what's maintained and what's not. I'd like to get into details when I have bandwidth.
#5610: E Series plugins official status by @Kanonimpresor on @rica-carv's work
Two things need to happen before "officially adopted" means anything:
Until both are in place, there's no formal "official" status for third-party plugins. But the "E Series" direction of taking native modules and rewriting them with modern standards is another initiative I can endorse, and I'd welcome collaboration with @rica-carv on compatibility.
#5621: Bootstrap 5 theme marketplace with royalty model by @kreossino
I concur that the visual-first-impression problem is real. Bootstrap 5.3 is the v2.4 baseline, which should give theme designers a modern foundation.
On royalties to e107: no. There is no e107 Inc entity to receive them, and I don't think this GPLv3 project should be taking a cut from theme sales.
On a theme marketplace more broadly: I'm stretched too thin to architect one right now, but like the plugin curation question (#5608), I think this is a worthy area of improvement. If someone wants to champion it, I'm listening.
How to Help
I'd rather hear what you can do than tell you what you should do.
If there's a part of e107 you care about… say a plugin, a language, a corner of the admin area, the docs, the build pipeline… and you want to help carry it, tell me. Open a discussion, comment on this post, or tag me on an issue. I'll try to make sure you have what you need.
I'll keep showing up. So will e107help.
― Nick (@Deltik)
All reactions