A Laravel alumni platform that deploys on cPanel
Someone has asked you to build an alumni portal for a school, a college or an association. The client is on shared hosting with no shell access, and the budget is mostly your time. AlumDeck is the finished application: readable Laravel source, a Filament admin panel, and an installer that works where Composer does not.
One licence per installation, $49, including twelve months of updates and email support. Full source code, not encoded.
AlumDeck what you are deploying PHP 8.2 or newer Database MySQL or MariaDB Framework Laravel Admin Filament Target cPanel shared hosting, VPS, anything LAMP Deploy: upload, unzip, create a database, run the wizard. No SSH. No Composer on the server. No encoded files. Licence: $49 once, per installation.
The build-versus-buy sum, done honestly
Scope an alumni portal properly and it is not a small job. It is a fortnight before the client sees anything resembling the brief.
Registration with manual verification. A directory with search across batch year, city, country, profession and employer. Member profiles. Events with RSVPs and capacity. Donation pages. Mentoring with matching and limits. A job board. News, newsletters, galleries, a timeline. Then an admin panel a non-technical client can operate without emailing you every Tuesday.
Whatever your rate is, multiply it by those weeks and set it against $49. Whether buying is cheaper is not the interesting question. The interesting question is whether the thing you buy will fight you.
The three things that make a bought script a bad deal
- Encoded or obfuscated files, so you cannot read what you are putting on a client's server, and cannot fix an edge case without filing a ticket and waiting.
- A deployment process that assumes SSH, Composer and a root shell, on a hosting account that has none of the three.
- Core features sold as separate add-ons, so the fixed price you quoted grows by $29 at a time and you absorb it.
AlumDeck ships as full source, installs through the browser on ordinary cPanel hosting, and has no add-on store. Those three problems are why it takes the shape it does.
What you are actually putting on the server
A conventional PHP application, not a framework to finish and not a theme to fight.
A conventional Laravel application
Standard layout, MySQL or MariaDB behind it, Filament for the admin panel. If you have shipped Laravel before, nothing here will surprise you. If you have not, it is still the best documented PHP framework you could be handed.
Full source, not encoded
Read every file before it goes near a client server. Audit it, trace a bug, add the one field this client insists on, without waiting on someone else's support queue.
A browser installer, not a runbook
Six screens: licence key, server check, database, site and admin account, review, install. It checks the server before writing anything, then permanently 404s itself.
An admin the client can run
Logo, colours, menus, footer widgets, homepage blocks, per-page SEO fields and module switches are all settings. The client stops emailing you to change a phone number.
The unglamorous bits, done
Maintenance mode and cookie consent are already in the box, rather than the two tickets you always forget to quote for.
Every module in the one licence
Registration with admin verification, directory and search, profiles, batch years, news and blog, events with RSVP and capacity, galleries by era, notable alumni, institution timeline, committee pages, donations and giving, mentoring with capacity limits, a job board, contact forms and newsletters. Nothing is reserved for a higher tier, because there is not one.
Getting it onto a client's shared hosting
The deployment story is the reason the product exists in this form. The institutions that need alumni software are usually on a cPanel account with no shell and a support desk that will not enable one.
Upload and unzip
Through the file manager or over FTP, into whichever account you were handed. No terminal, no SSH, no Composer install on the server.
Create an empty database
In cPanel, as usual. The installer tests the connection and confirms the user can create tables before continuing, so a permissions problem shows up on screen rather than halfway through.
Run the six-screen wizard
Licence key, server check, database, site details and admin account, review, install. It writes the configuration and then closes itself permanently, so a stray visitor cannot run it again.
Hand over the admin panel
Branding, menus, homepage blocks and content are the client's to change. What you do afterwards is whatever you agreed to do, not whatever they forgot to mention in the brief.
Step 2 of 6 This server PASS PHP 8.3.31 8.2 or newer PASS pdo_mysql database driver PASS mbstring, openssl 14 of 14 required PASS ./ storage/ bootstrap/cache/ Anything red has to be fixed before the install continues.
Three ways to give a client an alumni site
The honest version, including the row where building it yourself wins.
| AlumDeck | Build it from scratch | CMS plus plugins | |
|---|---|---|---|
| Licence cost per client site | $49 once | None, your time is the cost | Several plugin subscriptions |
| Time to a working alumni site | An afternoon | Weeks | Days, then integration work |
| Recurring cost the client inherits | Hosting only | Hosting only | A renewal on every plugin |
| Who fixes a bug in the core | We do, for a year, then optionally | You do, forever | Several vendors, separately |
| Alumni-specific features included | Yes | No | No |
| Source you can read and audit | Yes | Yes | Yes |
| Client can rebrand it without you | Yes | Only what you built in | Yes |
| Fits a genuinely unusual requirement | No | Yes | Sometimes |
| You can resell it as your own product | No | Yes | No |
One AlumDeck licence covers one installation, plus a staging copy of that installation. Five client sites is five licences, or $245, which is still less than a morning at most agency rates. The last two rows are the reason some projects should still be custom work.
What the licence covers, and what it does not
In the $49
- Full source code, not encoded
- Every module, with no add-on store
- Unlimited members, users and admin accounts
- One live installation, plus a staging copy of it
- Twelve months of updates
- Twelve months of email support
You supply
- Hosting with PHP 8.2 or newer and MySQL or MariaDB
- A domain or subdomain for the client
- Your own backup and rollback process
- Version control for any changes you make
- A plan for reapplying those changes after an update
Not included
- White-label or reseller terms - one licence, one installation
- A cloud or multi-tenant build. There is not one
- An SLA, a phone line or a named contact
- A public live demo. The demo page is a screenshot tour
- Read the licence terms before planning anything around resale
When not to put AlumDeck on a client project
Four situations where recommending it would cost you more than it saves, which is a bad trade for a $49 licence.
The requirement is genuinely bespoke
If the mentoring model, the giving workflow or the membership structure does not resemble what is on the features page, you will spend longer bending AlumDeck than writing the part that matters. Products are cheap because they are opinionated, and this one has opinions.
You need to evaluate it properly before committing a client
There is no public live demo yet, and a screenshot tour is not the same thing. If you are putting your own reputation behind a platform, that is a fair objection. Email hello@alumdeck.com with what you need to see and you will get a straight answer.
You want a product business on top of it
One licence is one installation. There are no published white-label or reseller terms, so if the plan is to run AlumDeck as your own hosted alumni service, read the licence terms and ask before you write the proposal.
The client's platform is not PHP
It is PHP 8.2 or newer with MySQL or MariaDB, and it will not become anything else. If the institution's IT department supports exactly one other runtime, no price advantage survives that meeting.
Questions from people who will actually install it
What are the server requirements?
PHP 8.2 or newer, MySQL or MariaDB, and the usual extensions. It runs on ordinary cPanel shared hosting as well as on a virtual server.
You do not have to take that on trust. Step two of the installer checks the server and names each requirement it cannot find, before it writes a single file.
Do I need SSH or Composer on the server?
No. Upload the files, create an empty database, run the wizard in a browser. That is the whole deployment, and it is deliberate: most schools and associations are on hosting where a shell is not on offer at any price.
Is the code encoded or obfuscated?
No. You get the full source, so you can audit it before it goes on a client server, read what a module does, and fix something yourself instead of waiting on a reply.
How does licensing work across several clients?
One licence per installation, at $49 each, and each licence also covers a staging copy of that installation. Four client sites is four licences. There is no volume tier published, so email hello@alumdeck.com rather than assuming one.
What happens to my customisations when an update ships?
The same thing that happens with any product: changes to core files are yours to reconcile against the new version. Keep your work in version control and diff before applying an update.
Updates are also optional. The licence includes twelve months of them, and the installed application keeps working whether or not you ever apply another.
Can I install it and then hand support to the client?
Yes, and that is the common pattern. The admin panel is built to be operated by a non-technical person, so content, branding and members are theirs. The included year of support follows the licence, so agree who holds it before launch rather than during an incident.
Ship the alumni portal this week, not next quarter
$49 per installation, full source, no add-on store, and a browser installer that works on the hosting your client already has.
Checkout is opening shortly. Technical questions before then go to hello@alumdeck.com and get answered by someone who has read the code.