Custom Capabilities
About, Tour, Pricing, Blog, etc.
Registration, Sign-in, SSO, etc.
Roles, Plans, Features, etc.
Subscriptions, Invoices, etc.
Forum, FAQ, Contact, Alerts, etc.
Long development builds are expensive, opportunity costs are even more expensive.
Instant access to RBAC, CRM, LMS, CMS and any other initials you can think of.
Built with best coding practices with security, internationalization and scalability in mind.
Why build an MVP which is obsolete on launch? Upcode architecture gives a framework you can scale into!
With our Springboard you no longer need to reinvent the wheel. We have ended one-dimensional, non-scalable, development heavy, slow to market product development. Upcode is a codebase which enables startups to get up and running quickly, and robust enough to scale into the application.We provide the common functions and layer in all the nice-to-haves!
In addition to rapidly deploying common features, Upcode enables the build of application specific features rapidly using our plug-and-play polymorphic capabilities, such as
We chose to build with PHP because it’s one of the most widely adopted programming languages used today.
Laravel framework is highly flexible and secure. It’s open source, with one of the fastest growing communities for support and growth.
Vue.js is an open-source JavaScript framework for building user interfaces and single-page applications.
Build responsive, mobile-first projects on the web with the world’s most popular front-end component library.
Feature | Upcode | Custom Development Phase | User Story | ||||||
ID | Group | Title | Story Points | Prebuilt | 1 (MVP) | Phase 2 | Phase 3 | I want to be able to [GOAL] | so that [SOME REASON] |
0 | Services | ||||||||
0.1 | Resources | ||||||||
Digital Ocean Account Creation | 0.5 | X | |||||||
0.1.1 | Resource Setup | ||||||||
Web Server Instance | 2 | X | |||||||
Load Ballancer | 2 | X | |||||||
0.1.2 | Database Cluster | ||||||||
Setup MySQL Primary | 1 | X | |||||||
Setup MySQL Read Only | 1 | X | |||||||
Setup Redis | 1 | X | |||||||
0.1.3 | CDN | ||||||||
Setup CDN Space (Private) | 1 | X | |||||||
Setup CDN Space (Public) | 1 | X | |||||||
0.1.4 | Domain | ||||||||
Add Domain to Server | 1 | X | |||||||
Point DNS (or A record) | 1 | X | |||||||
Install SSL Certificate | 1 | X | |||||||
0.1.5 | |||||||||
0.2 | Dev Ops | ||||||||
0.2.1 | Version Control | ||||||||
Setup GitHub Company Account | 0.5 | X | |||||||
Setup GitHub Repository | 0.5 | X | |||||||
Add Developers to Team | 0.5 | X | |||||||
Document enviornment setup instructions | 3 | X | X | ||||||
0.2.2 | Issue Management | ||||||||
Configure Tags | 1 | X | |||||||
Setup Kanban board | 0.5 | X | |||||||
0.2.3 | CI/CD | ||||||||
Setup Forge | 0.5 | X | |||||||
Setup Envoyer | 0.5 | X | |||||||
Configure Envoyer | 2 | X | X | ||||||
GitLab Runners | 2 | X | |||||||
Unit Testing | 8 | X | X | ||||||
Browser Testing | 8 | X | X | ||||||
Staged Build Sequence | 8 | X | |||||||
Automated Functional Test | 13 | X | |||||||
Automated Acceptance Testing | 13 | X | |||||||
Build Status Interface | 3 | X | |||||||
1 | Codebase | ||||||||
1.1 | Setup | ||||||||
1.1.1 | Install | ||||||||
Package Manager | 1 | X | |||||||
nginx | 2 | X | |||||||
PHP | 2 | X | |||||||
Composer | 1 | X | |||||||
Node | 1 | X | |||||||
NPM | 1 | X | |||||||
Laravel | 1 | X | X | ||||||
Laravel Homestead | 1 | X | X | ||||||
Laravel Valet | 1 | X | X | ||||||
PHPunit | 1 | X | X | ||||||
PHP-cs-fixer | 1 | X | X | ||||||
curl | 1 | X | X | ||||||
bcmath | 1 | X | X | ||||||
ctype | 1 | X | X | ||||||
json | 1 | X | X | ||||||
mbstring | 1 | X | X | ||||||
openssl | 1 | X | X | ||||||
pdo | 1 | X | X | ||||||
tokenizer | 1 | X | X | ||||||
xml | 1 | X | X | ||||||
sqlite (tntsearch) | 1 | X | X | ||||||
pcntl (horizon) | 1 | X | X | ||||||
redis (faster than predis) | 1 | X | X | ||||||
zip (backup, excel exports) | 1 | X | X | ||||||
gd (image optimization) | 1 | X | X | ||||||
imagick (image optimization) | 1 | X | X | ||||||
dompdf (pdf creation) | 1 | X | X | ||||||
memcached (cache) | 1 | X | X | ||||||
Compile assets | 1 | X | |||||||
Git LFS | 1 | X | |||||||
1.1.2 | Queues/Worker | ||||||||
Redis | 2 | X | |||||||
Horizon | 2 | X | |||||||
1.1.3 | Configure | ||||||||
config/* | 0.5 | X | |||||||
.env | 0.5 | X | |||||||
Setup Slack integration | 1 | X | |||||||
1.1.4 | Architect | ||||||||
Config | 2 | X | X | ||||||
Migrations | 13 | X | X | ||||||
Seeders | 5 | X | X | ||||||
Models | 5 | X | X | ||||||
Routes | 5 | X | X | ||||||
Middleware | 5 | X | X | ||||||
Controllers | 21 | X | X | ||||||
Requests | 2 | X | X | ||||||
Views | 34 | X | X | ||||||
2 | User | ||||||||
21 | Authentication | ||||||||
2.1.1 | Registration | ||||||||
Register via Email | 2 | X | X | ||||||
Confirm Email Address | 1 | X | X | ||||||
Register via LinkedIn (SSO) | 2 | X | X | ||||||
Register via Facebook (SSO) | 2 | X | X | ||||||
Register via Google (SSO) | 2 | X | X | ||||||
Register via Twitter (SSO) | 2 | X | |||||||
Register via GitHub (SSO) | 2 | X | |||||||
Register via BitBucket (SSO) | 2 | X | |||||||
Registration Confirmation | 1 | X | X | ||||||
2.1.2 | Sign In | ||||||||
Sign-on via Email | 2 | X | X | ||||||
Sign-on via LinkedIn (SSO) | 2 | X | X | ||||||
Sign-on via Facebook (SSO) | 2 | X | X | ||||||
Sign-on via Google+ (SSO) | 2 | X | X | ||||||
Sign-on via Twitter (SSO) | 2 | X | |||||||
Sign-on via GitHub (SSO) | 2 | X | |||||||
Sign-on via BitBucket (SSO) | 2 | X | |||||||
Password recovery via Email | 1 | X | X | ||||||
Sign-on as User (Administrative Feature) | 2 | X | X | ||||||
Throttle Login Attempts | 2 | X | X | ||||||
Blacklist | 3 | X | X | ||||||
Store Session Information | 3 | X | X | ||||||
Geo/IP Lookup via MaxMind | 1 | X | X | ||||||
2.1.3 | Logout | ||||||||
User Log Out | 1 | X | X | ||||||
2.2 | Profile | ||||||||
2.2.1 | Settings | ||||||||
Update Contact Details | 1 | X | X | ||||||
Set Local Timezone | 1 | X | X | ||||||
Set Language Preference | 2 | X | X | ||||||
Set Date Format Preference | 1 | X | X | ||||||
Set Measurement Preference | 1 | X | X | ||||||
Set Currentcy Preference | 1 | X | X | ||||||
Update User Meta | 1 | X | X | ||||||
Specify Addresses (Shipping, Billing, etc) | 2 | X | |||||||
2.2.2 | Authorization | ||||||||
Role Opt-In | 3 | X | X | ||||||
Role Opt-Out | 1 | X | X | ||||||
Generate API Token | 2 | X | X | ||||||
2.2.3 | Media | ||||||||
Default Profile Image as Gravitar | 1 | X | X | ||||||
Set Profile Image via Upload | 2 | X | X | ||||||
Set Profile Image via Social Network | 3 | X | X | ||||||
Set Profile Cover via Upload | 1 | X | X | ||||||
Crop Profile and Cover Images | 1 | X | X | ||||||
2.2.4 | Password | ||||||||
Change Password | 2 | X | X | ||||||
Set Password Requirements | 1 | X | X | ||||||
Enable Two-Factor Authentication (2FA) | 2 | X | X | ||||||
Disable Two-Factor Authentication (2FA) | 0.5 | X | X | ||||||
2.2.5 | 3rd Party Connections | ||||||||
View connected profiles | 1 | X | X | ||||||
Connect to LinkedIn (SSO) | 2 | X | X | ||||||
Connect to Facebook (SSO) | 2 | X | X | ||||||
Connect to Google+ (SSO) | 2 | X | X | ||||||
Connect to Twitter (SSO) | 2 | X | |||||||
Connect to GitHub (SSO) | 2 | X | |||||||
Connect to BitBucket (SSO) | 2 | X | |||||||
Disconnect Profiles | 1 | X | X | ||||||
2.2.6 | Notifications | ||||||||
View Notifications | 3 | X | X | ||||||
Mark Notification as read | 1 | X | X | ||||||
Subscribe/Unsubscribe to Notifications: | 1 | X | |||||||
- Email Notifications Opt-In/Opt-Out | 5 | X | X | ||||||
- SMS Notifications | 2 | X | X | ||||||
- App Notifications (e.g. Push Notification) | 2 | X | X | ||||||
- Desktop Notifications (e.g. Browser Notification) | 2 | X | X | ||||||
2.2.7 | Public Profile | ||||||||
Profile URL | 1 | X | |||||||
Display Followers | 3 | X | |||||||
Display Following | 3 | X | |||||||
Issue Badge | 2 | X | |||||||
Photos | 2 | X | |||||||
Reviews | 2 | X | |||||||
Recommendations | 2 | X | |||||||
Post to Timeline | 2 | X | |||||||
Privacy Settings | 2 | X | |||||||
2.2.8 | Teams | ||||||||
View Teams | 3 | X | X | ||||||
View Team Inviations | 2 | X | X | ||||||
Invite from Email | 1 | X | X | ||||||
Leave Team | 0.5 | X | X | ||||||
Invite to Team | 2 | X | X | ||||||
Demote in Team | 1 | X | X | ||||||
Specify Role in Invitation | 2 | X | X | ||||||
2.2.9 | Billing | ||||||||
Manage Wallet | 5 | X | X | ||||||
Connect to Stripe | 3 | X | X | ||||||
Connect to PayPal | 3 | X | X | ||||||
View Invoices | 3 | X | X | ||||||
View Pending Carts | 3 | X | X | ||||||
2.2.10 | Support Ticket | ||||||||
Submit Support Ticket | 1 | X | X | ||||||
View Ticket | 1 | X | X | ||||||
2.2.11 | Content Ownership | ||||||||
Clean Session | 1 | X | X | ||||||
Review Content | 3 | ||||||||
Delete Account | 1 | X | X | ||||||
2.3 | Organization | ||||||||
2.3.1 | Selection | ||||||||
Select Organization Type | 2 | X | X | ||||||
Assign User Role | 1 | X | X | ||||||
Enter Company Details | 1 | X | X | ||||||
Specify Company Addresses | 2 | X | |||||||
2.3.2 | Setup | ||||||||
Overview | 0.5 | X | X | ||||||
Intake Meta | 2 | X | X | ||||||
Team Invite | 2 | X | X | ||||||
Walkthrough Tutorial Overlay | 1 | X | X | ||||||
2.3.3 | Organization Tenancy | ||||||||
Switch Active Organization | 2 | X | X | ||||||
2.3.4 | Tenant Switching | ||||||||
Browse available features | 2 | X | X | ||||||
Browse available services | 2 | X | X | ||||||
Browse available plans | 2 | X | X | ||||||
Accept Payment via PayPal | 3 | X | |||||||
Accept Payment via Stripe | 3 | X | X | ||||||
Renew current plan | 3 | X | X | ||||||
Upgrade plan | 3 | X | X | ||||||
Prorate discount based on current plan remainder | 3 | X | X | ||||||
Apply discount | 3 | X | X | ||||||
Redeem Discount | 3 | X | X | ||||||
Make One Time Payment | 3 | X | X | ||||||
Cancel Subscription | 1 | X | X | ||||||
View Invoices | 1 | X | X | ||||||
2.3.5 | Notifications | ||||||||
View Notifications | 3 | X | X | ||||||
Mark Notification as read | 1 | X | X | ||||||
3 | Administrative | ||||||||
3.1 | Entity | ||||||||
3.1.1 | Tenancy | ||||||||
Manage Tenancy | X | X | |||||||
3.1.2 | CNAME | ||||||||
Manage Domains | 2 | X | X | ||||||
Specify Environment | 3 | X | X | ||||||
Specify Status (Parked/Soon/Live/Maintenance) | 3 | X | X | ||||||
Set Geo Targeting | 5 | X | X | ||||||
Set Locale | 2 | X | X | ||||||
Specify Theme | 3 | X | X | ||||||
Set Analytics Tracking Code | 2 | X | X | ||||||
Integrate Live Chat | 1 | X | X | ||||||
Associate Modules | 3 | X | |||||||
3.2 | Authentication | ||||||||
3.2.1 | Role Based Access Control | ||||||||
Manage System Groups | X | X | |||||||
Define System Group: Administrator | 2 | X | X | ||||||
Define System Group: Tenant Admin | 2 | X | X | ||||||
Define System Group: Subscriber | 2 | X | X | ||||||
Define System Group: User | 2 | X | X | ||||||
Define Company Group: Manager | 2 | X | |||||||
Define Company Group: Employee | 2 | X | |||||||
Manage Individual Permissions | X | X | |||||||
Assign Individual Permissions in Group | X | X | |||||||
3.2.2 | Users | ||||||||
Create Users | X | X | |||||||
View User Info | X | X | |||||||
Update Users | X | X | |||||||
Delete Users | X | X | |||||||
Paginate Users Table | X | X | |||||||
Search Users | X | ||||||||
Filter Users | X | X | |||||||
View User Groups | X | ||||||||
View User Subscriptions | X | ||||||||
View User Audit Logs | X | ||||||||
Assign Permission System Groups to User | X | ||||||||
Assign Permission Brand Groups to User | X | ||||||||
Manage User Meta | X | ||||||||
Set User Status | X | ||||||||
3.1 | Navigation | ||||||||
3.1.1 | Navigational Menu | ||||||||
Manage Menu Groups | X | ||||||||
Manage Menu Items | X | ||||||||
Define Menu Items Order | X | ||||||||
Explicity Include or Exclude Menu Items by Route | X | ||||||||
3.3 | Messaging | ||||||||
3.3.1 | Internal Messaging | ||||||||
Send Alert | X | ||||||||
View Alert Statistics (Read) | X | ||||||||
Expire alert on specified date | X | ||||||||
Send Image in Alert | X | ||||||||
Target Specific Group | X | ||||||||
Specify target (Web, Mobile) | X | ||||||||
3.3.2 | External Messaging | ||||||||
Email Templates | X | X | |||||||
Message Groups/Types | X | X | |||||||
Messages Composition | X | X | |||||||
Message Archives/Reporting | X | X | |||||||
3.4 | Subscription | ||||||||
3.4.1 | Plans | ||||||||
Create Plan | X | X | |||||||
View Plan Details /Usage | X | X | |||||||
Update Plans | X | X | |||||||
Delete Plan | X | X | |||||||
View number of users in Plan | X | X | |||||||
Set Plan Duration | X | X | |||||||
Set Plan Usage Levels | X | X | |||||||
Restrict User Actions by Usage Levels | X | X |