Skip to content

headv/Leap

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

201 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Table of Contents

A Little Background About Leap

I'm the founder of katamaze.com and I've been using WHMCS since 2008. For plenty of time developing modules on this platform has been my main source of income. I used to love WHMCS but my opinion started to change when WebPros, a capital group, acquired in a very short timeframe WHMCS, Plesk, cPanel and some other hosting-related companies aiming to increase prices across the board.

The idea behind this is to milk hosting providers for as much money as possible by taxing their revenue with this new unethical method of charging costs based on the number of active customers. To make the whole thing even more disgusting, WebPros is acquiring all softwares that providers rely on. And they're pretty damn quick at doing this.

Plesk and cPanel are the perfect example. They're the best hosting panels the money can buy and they're both owned by WebPros meaning that they can freely increase prices without risking to lose customers. In fact, a part from Plesk and cPanel, there aren't many options left. Yes, there's DirectAdmin but it is not as complete as its counterparts moreover there's no guarantee that WebPros will eventually decide to acquire DirectAdmin too.

The same principle applies to WHMCS. In the middle of the COVID-19 crisis they increased prices up to 3154% just because they can and they have nothing to risk. In fact it is simply impossible for large and medium-sized enterprises to migrate on competitors because of the following reasons:

  • Like it or not, WHMCS is the best software to run a hosting business. Alternatives exist but they offer inferior value
  • Migrating takes months if not years of planning. WHMCS knows it and gave us less then 3 months to prepare to price increase
  • As icing on the cake, they're forcing all owners of "life time" licenses to move to the new and expensive pricing structure

This is perfectly in line with their way of doing business with WebPros. Greediness, not giving a damn about fixing bugs and imposing new terrible features that no one asked for. They have no ears to listen to customers.

I know providers that will start paying 15.599$ per year instead of 479$. What options we have? Maybe you can think of moving to any of WHMCS competitors like Blesta, HostBill, ClientExec or Ubersmith but let's admit it. No one can prevent WebPros from acquiring them in no time. And it doesn't matter what Blesta or HostBill promise you today as we all learned the lesson that money can buy everything in this business.

Switching to another software to avoid yet another price increases, has been proved to be a bad strategy as WebPros can easily acquire every software that is worth their money. Not to mention that changing servers, panels and softwares every couple of years costs time and money.

In my opinion the only true solution is breaking this chain moving to a replacement of WHMCS that is open source and free. A software of this kind can't be acquired by anyone. Moreover unlike WHMCS that keeps releasing features based on their partners needs (the ones with deep pokets that dictate rules), the development of this software will always be focused on end-users: providers.

I know WHMCS enough including its many bugs, secrets, flaws and missing features. I exactly know what are the needs of providers and have the required skills to complete this project.

As you can see from the following paragraphs, I'm already working on things including forming a team and getting people involved. We need as many developers, designers and providers as possible to speed up the process but not at this stage as it would quickly turn the project into a bland wishlist. In this moment I prefer to lay the foundations of Leap only counting on people that I personally know.

If you want to partecipate, watch and star this repository. I will provide more details in the following months.

Keep in mind that every open source and free software still needs a way to fund activities. I will be using Github sponsors and donations (free choice and not forced) but I will not enable them till the software reaches the acceptable level. I don't like asking money only based on my good intentions that still need to be proved.

Let me conclude by underlining the fundamental differences between Leap and WHMCS.

Leap WHMCS
Source code 🐣 Open πŸ’‚β€β™‚οΈ Closed
License πŸ‘ Free πŸ‘Š Commercial
Focus πŸ‘‹ Providers πŸ‘” Partners
Revenue model ❀️ Sponsors πŸ„ Milking

Obviously I will stop selling my WHMCS modules as soon as Leap takes shape. In the meantime if you know me a little, you probably know that last year I have already stopped wasting my time with WHMCS. I no longer add new features to my modules, partecipate to whmcs.community, report bug and try WHMCS BETA. They don't deserve it.

Apart from WHMCS, I work a lot with Marketplaces (eg. Amazon, eBay etc.), blockchain, SEO/CMS so I will surely make Leap something more than just a software for hosting providers 😜 In essence I will try to make it a good alternative to things like Magento, Prestashop, WordPress, Joomla... and connect it to Coinbase Trading API.

If you think that I'm exaggerating and putting too many eggs in one basket, understand that over the years I managed to deliver more features in my WHMCS modules working alone than the entire staff of WHMCS combined. Let me give you an idea of what I'm talking about:

The list goes on but I think you've got the idea. I even maintain documentation in two languages this is bigger than WHMCS one not counting a successful blog. All this working alone on this obstructive, buggy and encrypted platform that is WHMCS.

On the other hand, the average update of WHMCS contains (not counting bugs) microscopic features that I wouldn't even put in a changelog. One day they had the nerve to present us the CALENDAR picker as if it was something like going to Mars. It's a free jQuery library. Any decent developer can implement it in a couple of hours in any system.

They are slow and their commitment is non-impactful. We have bugs from years that whould take minutes to fix. Similarly we are waiting for missing features that any skilled developer could complete in a couple of days. I don't want to sound presumptuous but I must say it. I find incredible that a company of the size of WHMCS can't match the quantity and quality of features that one single developer manages to deliver consistently.

I sometimes wonder myself what would they do to integrate electronic invoicing. I know this article is written in italian but it still gives an idea the complexity of this project. Imagine the amount of code behind it. Let me make a quick comparison. I completed such a huge project in about 3 months working alone. To date, with God knows how many employees, WHMCS is still trying to fix GDPR they broke in v8 (November 2020).

Must-Have Features

How to read tables

Icon Description
Importance ⭐
⭐⭐
⭐⭐⭐
Low
Medium
High
Difficulty πŸ’£
πŸ’£πŸ’£
πŸ’£πŸ’£πŸ’£
Low
Medium
High
Time ⏰
⏰⏰
⏰⏰⏰
Low
Medium
High
Status 🟒
🟠
πŸ”΅
πŸ”΄
βšͺ
Completed
In progress
Stalled
Dropped
New

CMS

  • Facilitator: Mercury.
  • ETA (very tentative): 50 FTE
Importance Difficulty Time Thoughts Status
News ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
Blog ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
Docs ⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
Feature Requests ⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ Bad idea πŸ”΅
FAQ ⭐ πŸ’£ ⏰ βšͺ
Bug Reporting ⭐ πŸ’£πŸ’£ ⏰ βšͺ
Comments ⭐ πŸ’£πŸ’£ ⏰ reCAPTCHA βšͺ
Downloads ⭐ πŸ’£ ⏰⏰ βšͺ
Widgets ⭐⭐ πŸ’£ ⏰⏰ βšͺ
Page builder ⭐ πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Service status ⭐ πŸ’£πŸ’£ ⏰⏰ Like Coinbase Pro Trading (footer) βšͺ

SEO

  • Facilitator: Mercury.
  • ETA (very tentative): 20 FTE
Importance Difficulty Time Thoughts Status
Meta tags ⭐⭐⭐ πŸ’£ ⏰ βšͺ
JSON-LD ⭐ πŸ’£ ⏰ βšͺ
Canonical URL ⭐⭐ πŸ’£ ⏰ βšͺ
Sitemap generator ⭐ πŸ’£πŸ’£ ⏰ Language/Country XML nodes βšͺ
Multi-language stuff ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ Fallback for missing translations βšͺ
SEO URL ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Open Graph Protocol ⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
HTML Semantic Elements ⭐ πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Prevent SEO-bs (keyword stuffing, length etc.) ⭐⭐ πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
SERP preview ⭐⭐⭐ πŸ’£ ⏰ Moz-like βšͺ
Blackhat SEO protection ⭐⭐ πŸ’£πŸ’£ ⏰ βšͺ
Disavow tool ⭐ πŸ’£ ⏰ βšͺ
Basic statistics (hits) ⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ Graphs βšͺ

Billing

Importance Difficulty Time Thoughts Status
Basic engine ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
EU ⭐⭐ πŸ’£πŸ’£ ⏰ βšͺ
UK ⭐ πŸ’£ ⏰ βšͺ
AU ⭐ πŸ’£ ⏰ βšͺ
DE ⭐ πŸ’£ ⏰ βšͺ
IT ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰ βšͺ
General-purpose e-invoicing ⭐⭐⭐ πŸ’£ ⏰ βšͺ
Italian electronic invoicing ⭐⭐⭐ πŸ’£ ⏰⏰⏰ Aruba. End of the story βšͺ
User-based billing cycles ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
User-based billing modes ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Credit notes ⭐⭐⭐ πŸ’£πŸ’£ ⏰ βšͺ
Overpayments ⭐⭐⭐ πŸ’£ ⏰ βšͺ
Credit balance ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
Cashflow ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰⏰ βšͺ

Support tickets

  • Have to be created from scratch.
  • ETA (very tentative): 40 FTE
Importance Difficulty Time Thoughts Status
Standard suite ⭐⭐⭐ πŸ’£ ⏰⏰⏰ βšͺ
Service level agreement ⭐⭐ πŸ’£πŸ’£ ⏰⏰ Working hours, holidays etc. βšͺ
Emergency ⭐ πŸ’£ ⏰ βšͺ
Premium ⭐⭐ πŸ’£ ⏰ Paid support tickets βšͺ

Multi-domain

Importance Difficulty Time Thoughts Status
Whitelabel support with master (own company) and child (resellers and wannabes) brands ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰⏰ Template, logo, names, emails βšͺ
Brand-based pricing ⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
Multiple merchants (eg. paypal accounts) ⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Country-based payment gateways ⭐ πŸ’£ ⏰ βšͺ
Geolocation: Auto-redirect (watch out EU regulations!) ⭐ πŸ’£πŸ’£ ⏰ βšͺ
Geolocation: Auto-complete fields ⭐⭐ πŸ’£πŸ’£ ⏰ βšͺ

OAuth-based API

  • Facilitator: Can re-use the structure from another project.
  • ETA (very tentative): 30 FTE
Importance Difficulty Time Thoughts Status
Basic engine ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Scopes implementation ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ Owner, resellers, end-users βšͺ
Keyword-based requests ⭐ πŸ’£ ⏰ βšͺ
lazy-API for idiots ⭐ πŸ’£ ⏰ Nope πŸ”΄

Action hooks

  • ETA (very tentative): 15 FTE
Importance Difficulty Time Thoughts Status
Basic engine ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
Entrypoints, NVP etc. ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ

Affiliate Marketing

Importance Difficulty Time Thoughts Status
Basic engine ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Last-click attribution ⭐⭐ πŸ’£ ⏰ βšͺ
Interactive attribution ⭐ πŸ’£ ⏰ βšͺ
Manual attribution ⭐⭐⭐ πŸ’£ ⏰ βšͺ
Prevent cross-affiliation & exploits ⭐⭐⭐ πŸ’£πŸ’£ ⏰ βšͺ
Unlockable rewards ⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ

Miscellaneous

Priority Difficulty Time Thoughts Status
Migration tool from WHMCS ⭐⭐⭐ πŸ’£ ⏰⏰⏰ βšͺ
Snapshot order details ⭐⭐⭐ πŸ’£ ⏰⏰ βšͺ
Facebook Pixel ⭐⭐⭐ πŸ’£πŸ’£ ⏰⏰ βšͺ
LinkedIn Insight Tag ⭐⭐ πŸ’£ ⏰ βšͺ
Google Ad ⭐⭐ πŸ’£πŸ’£πŸ’£πŸ’£ ⏰⏰ βšͺ
Google AdSense ⭐⭐ πŸ’£ ⏰ βšͺ
Selling physical products ⭐⭐ πŸ’£πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Selling on Amazon, eBay, Zalando etc. ⭐⭐ πŸ’£ ⏰⏰⏰ βšͺ
End-users can sell on Marketplaces ⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Admin roles ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰ βšͺ
Logging ⭐⭐⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰ βšͺ
Lock Screen ⭐ πŸ’£πŸ’£ ⏰⏰ For inactivity and via shortcut keys βšͺ
To-do List ⭐ πŸ’£πŸ’£ ⏰⏰ With reminders and snooze βšͺ
Shout function ⭐ πŸ’£πŸ’£ ⏰⏰ Broadcasting any message to everyone matching filters βšͺ
Google Calendar ⭐ πŸ’£πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Feeds ⭐ πŸ’£ ⏰⏰ For admins, childs and end-users βšͺ
File Manager ⭐ πŸ’£ ⏰⏰ Internal use (eg. CSV transmissions) βšͺ
Chat ⭐ πŸ’£πŸ’£ ⏰⏰⏰ βšͺ
Service status ⭐ πŸ’£πŸ’£ ⏰⏰⏰ Like "Partially degraded" feature of Coinbase Pro βšͺ
Organization chart ⭐ πŸ’£ ⏰⏰ βšͺ

Integrations

Avoid "exotic" solutions for now.

Domains

Priority Hate-o-Meter Notes Status
Internetbs 1️⃣ 😊 βšͺ
eNom 4️⃣ 😑 βšͺ
ResellerClub 3️⃣ πŸ˜• It's LogicBoxes. Integrate one to integrate many βšͺ
Hexonet 2️⃣ 😊 βšͺ

Hosting

Priority Hate-o-Meter Notes Status
Plesk 1️⃣ 😑 Most used βšͺ
cPanel 2️⃣ 😑 βšͺ
DirectAdmin 3️⃣ 😊 βšͺ

Payment Gateways

Priority Hate-o-Meter Notes Status
PayPal 1️⃣ 😑 βšͺ
Stripe 2️⃣ πŸ˜• βšͺ
Other 3️⃣ 😊 βšͺ

Framework

Approved Notes Status
PHP OOP βœ”οΈ >=7.2 🟠
PSR-1 βœ”οΈ Coding standards 🟒
PSR-4 βœ”οΈ Autoloader 🟒
PSR-11 ❔ DI-Container βšͺ
Composer βœ”οΈ 🟒
Dependency Injection βœ”οΈ Need multiple containers 🟒
Smarty or Twig ❔ ex-WHMCS users already know Smarty. Same for ex-WHMCS designers 🟠
jQuery βœ”οΈ βšͺ
Bootstrap 5 βœ”οΈ 🟠
Node.js βœ”οΈ Overkill. No need πŸ”΄
ionCube 🚫 βšͺ
MySQL βœ”οΈ 🟠
MSSQL ❔ LIMIT OFFSET TOP πŸ”΅
Strict Mode βœ”οΈ Avoidable? 🟠
GTFO Mode βœ”οΈ No js? R301 & bye bye βšͺ
Laravel ❔ What's the point? Raw PDO βšͺ
Bootstrap βœ”οΈ 🟠
FontAwesome βœ”οΈ 🟠
Sprite CSS βœ”οΈ βšͺ
User authentication ❔ OAuth, bcrypt (custom) or framework-based (Zend?) βšͺ
TCPDF 🚫 Find alternative. Dompdf or mPDF βšͺ
Highcharts ❔ 449.55 € per developer βšͺ
DataTables ❔ Too basic and clumsy πŸ”΄
SorTables βœ”οΈ Refactored in line with Material Design by Google 🟠
Multi-stream support for browsers βœ”οΈ Parallel downloads βšͺ
MagicInput βœ”οΈ βšͺ
HereLang βœ”οΈ βšͺ
Toolbar βœ”οΈ Pre-toolbar and toolbar with Type to Search βšͺ
Sidebar βœ”οΈ With Type to Search βšͺ
Footer βœ”οΈ With service status βšͺ
Modal Generator βœ”οΈ βšͺ
Installer βœ”οΈ Classic. Zip, upload, enjoy βšͺ
Automatic Updates ❔ So and so βšͺ
Versioning βœ”οΈ PHP version_compare compliant x.x.x 🟠
Publicly advertised cycles βœ”οΈ Alpha, Beta, RC βšͺ

Team

Role Effort Notes Status
P1K Backend 6 hours Overloaded Active
P2K Frontend 6 hours RA Active
P3K Fullstack 8 hours RA Hiring now
PXG Dev team Lot of hours Doesn't depend on us
V1W Backend Don't know Wait for now
V2Z Frontend Don't know Wait for now
V3M Dev team Lot of hours Surely not willing to work on app but modules Ask when there's enough code to show
V4S Frontend Don't know Wait for now
C13 Tech, employees Unlimited Seed stage
P01 Partner Active
P02 Partner Active
C2F Know-how, Beta-Tester Provider Active
C3P Know-how, Beta-Tester Provider Active
C4R Know-how, Beta-Tester Provider Wait for now
C5S Know-how, Beta-Tester Provider Active
C6Q Know-how, Beta-Tester Provider Wait for now
C7V Know-how, Beta-Tester Provider Active

Funding

Software is free but needs funds.

Status Notes Status
P1K βœ”οΈ 1 Funding
C13 βœ”οΈ 3 Funding
P01 βœ”οΈ 2 Funding
P02 βœ”οΈ 5 Funding
VX ❔
C1F βœ”οΈ Ready
C7V βœ”οΈ Ready
Github Sponsor βœ”οΈ 7$ and 14$ a month (free choice) Ready
% on revenue 🚫 Absolutely not
Donations βœ”οΈ
Partnership βœ”οΈ Can only work with some registrars
Involve Data Farm ❔ Sell data and tracking
Ads βœ”οΈ On our website (not in the software) Ready
Freemium 🚫
Donation/Tip Goal ❔ "Goal: Feature X - Still 1.000 $ to go"
SLA ❔ Risky

Also have the following:

  • vBulletin license (we need a forum)
  • 4x WHMCS licenses to start working on a migration script
  • ionCube Pro & Special Edition GUI (2 seats) but I guess we don't need it πŸ˜†
  • FontAwesome Pro Standard license (5 seats)
  • All servers we need
  • Office
    • PE 4 seats (P1K)
    • CH all seats you want (C13)
    • MI all seats you want (P01, P02)
    • PE new headquarter in 2022 (C13)
  • Lifetime Nielpatel for SEO
  • 2x approved Google AdSense account
  • Approved Amazon SP-API & MWS developer accounts
  • Tens of various developer accounts
  • Lifetime TCAdmin 1x Pro Master, 3x Pro Remote Server in case we need to integrate game service providers
  • Can contact thousands of providers

Localisation

Team Notes
English P1K, P2K, P3K
Italian P1K, P2K, P3K

Questions

How to prove we won't roll over for clowns (cough WebPros) some day in the future

  • Crypto-something with locked funds in tokens/wallets ❔
  • Old school notarial deed ❔
  • Reputation ❔
  • We can't ❔
  • Stop selling WHMCS modules βœ”οΈ

Customer support

  • Github βœ”οΈ
  • Stack Overflow ❔
  • Forum βœ”οΈ
  • Ticket ❔

Licensing

  • MIT 🚫
  • GPL v3 βœ”οΈ copyleft
  • BSD βœ”οΈ
  • Custom ❔

Basic idea. Free for personal and commercial use but "All rights reserved". Derived work? The whole work must be free and open source.

Conventions

  • Avoid nested if, return instead
  • Stick to AND, OR instead of &&, || logic operators. Many devs don't know anything about precedence
  • Classes StudlyCaps. Methods & variables camelCase
  • Same spacing for js and PHP
  • Avoid ; for last CSS rule
  • Data as array not StdClass or you're a dead man
  • Logging must be ::

Internal Notes

  • Downlolad application/octect
  • User roles: pages & actions
  • Depended form fields
  • Multiple language pickers
  • Single-cron setup
  • This theme is a good source of ideas
  • We should be using ajax + json + react-like page load that works offline (change URI via js)
  • Sidebar and action menu should be populated by json object/array to avoid nested ifs in Smarty

About

Free & Open alternative to WHMCS. Let's see if we can make it

Resources

License

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • CSS 53.2%
  • JavaScript 41.1%
  • PHP 5.7%