The Largest Curatorial Library
With Firebase Admin

SaaS (Subscription) based Multiple Companies Employee Tracking - an Exceptional business Platform

SaaS (Subscription) based Multiple Companies Employee Tracking - an Exceptional business Platform

1. Suppose Your Company is “xyz” , So as a Boss Sign up/login to boss app with Company id like : xyz123. (example) 2. Sign up/login to employee app as an Employee of “xyz” company with that company id: xyz123. 3. As an Employee, Turn on available status on Employee app for live tracking and history. Give attandance to your boss 4. From Boss app, every individual boss can see only his company employees live moving 5. From boss app ,every individual boss will get the attandance,realtime histories of his company – employees 6. Bosses will buy subscriptions for their Companies. 7. Super admin can see all registered companies and can set subscription prices as well as payments 8. For realtime live moving and history savings of every employee, in employee app the available status must be turned on at Emplyee-Status Section. 9. every individual boss will get only his company employees data ( Realtime history+ Realtime Moving + Attandance) 10. Notifications will go to every individual boss for his company employees. 11. Subscription is set up Fully 12. Payment gateway set but you can change payment gateway according to your needs. 13. Background location tracking feature enabled. 14. A boss only get his employees data, he will not get other company-employees data 15.100% Realtime Features 16.Model is fully setup for Multiple Companies subscription based. 17.Subscription is setup with Monthly/Yearly wise + Attandance wise + Employee limit for each company wise 18.Millions of Company Bosses can create their Company id and profile/account at boss app. 19.Millions of Employees can signup as different Companies-employees 20. The company “XYZ” -boss can see only “XYZ” company -employees all data( Realtime history+ Realtime Moving + Attandance) 21. Renewal Subscription System 22. Realtime Moving, Realtime History, Realtime Notifications, Realtime attandance, Realtime Subscription checking etc are set there

Created Dec 24, 2025

Flutter My Kitchen App & Admin Panel

Flutter My Kitchen App & Admin Panel

<!DOCTYPE html> <head><title>My Kitchen</title><link rel=”shortcut icon” href=”https://ssl.gstatic.com/docs/documents/images/kix-favicon7.ico”><meta name=”referrer” content=”strict-origin-when-cross-origin”><style type=”text/css” nonce=””> @import url(“https://fonts.googleapis.com/css?family=Google+Sans”); @import url(“https://fonts.googleapis.com/css?family=Roboto”); / var aa=”function”==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a=c.value;return a};function ba(a){a=[“object”==typeof globalThis&&globalThis,a,”object”==typeof window&&window,”object”==typeof self&&self,”object”==typeof global&&global];for(var b=0;b){var” e=”a;if(!(e” in=”” a=”” ea=”function” object.create=”” b=”” new=”” object.setprototypeof=”” ha=”” ia=”{s:!0},ja={};try{ja.proto=ia;ha=ja.s;break” typeerror=”” is=”” not=”” extensible=”” ka=”fa;” h=”” for=”” l=”this||self;function” la=”” ma=”” na=”” function=”” a.apply=”” oa=”” g=”Array(arguments.length-2),k=2;k<arguments.length;k+)g=arguments;return” b.prototype=”” pa=”” qa=”Array.prototype.indexOf?function(a,b){return” array.prototype.indexof.call=”” ra=”” m=”” p=”” this.c=”” ta=”{},sa={};var” ua=”String.prototype.trim?function(a){return” a.trim=”” />/g,ya=/"/g,za=/'/g,Aa=/x00/g,Ba=/[x00&<>"']/;function Ca(a,b){return ab?1:0};function q(a,b){this.c=b===r?a:”“}q.prototype.b=!0;q.prototype.a=function(){return this.c.toString()};function Da(a){return a instanceof q&&a.constructor===q?a.c:”type_error:SafeUrl”}var Ea=/|font/w+|image/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|video/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;w+=(?:w+|”[w;,= ]“))$/i,Fa=/data:(.);base64,[a-z0-9/]+=$/i,Ga=/g class="?:|$" lang="/?#">)/i; function Ha(a){if(a instanceof q)return a;a=”object”==typeof a&&a.b?a.a():String(a);Ga.test(a)||(a=”about:invalid#zClosurez”);return new q(a,r)}var r={},Ia=new q(“about:invalid#zClosurez”,r);var u;a:{var Ja=l.navigator;if(Ja){var Ka=Ja.userAgent;if(Ka){u=Ka;break a}}u=”“}function v(a){return-1!=u.indexOf(a)};function w(a,b,c){this.c=c===La?a:”“}w.prototype.b=!0;w.prototype.a=function(){return this.c.toString()};var La={};function Ma(a,b,c,d){a=a instanceof q?a:Ha(a);return(b||l).open(Da(a),c instanceof p?c instanceof p&&c.constructor===p&&c.f===ta?c.c:type_error:Const 0)};function Na(a){Na” “;return a}Na[” “]=la;function x(a,b,c){return Object.prototype.hasOwnProperty.call(a,b)?a:a=c(b)};var Oa=v(“Opera”),y=v(“Trident”)||v(“MSIE”),Pa=v(“Edge”),Qa=Pa||y,Ra=v(“Gecko”)&&!(-1!=u.toLowerCase().indexOf(“webkit”)&&!v(“Edge”))&&!(v(“Trident”)||v(“MSIE”))&&!v(“Edge”),Sa=-1!=u.toLowerCase().indexOf(“webkit”)&&!v(“Edge”),Ta=v(“Macintosh”);function Ua(){var a=l.document;return a?a.documentMode:void 0}var Va; a:{var Wa=””,Xa=function(){var a=u;if(Ra)return/rv:([);])()|;)/.exec(a);if(Pa)return/Edge/([d.])/.exec(a);if(y)return/b(?:MSIE|rv)">: ;])()|;)/.exec(a);if(Sa)return/WebKit/(S)/.exec(a);if(Oa)return/(?:Version)[ /]?(S+)/.exec(a)}();Xa&&(Wa=Xa?Xa1:”“);if(y){var Ya=Ua();if(null!=Ya&&Ya>parseFloat(Wa)){Va=String(Ya);break a}}Va=Wa}var Za=Va,$a={},ab;if(l.document&&y){var bb=Ua();ab=bb?bb:parseInt(Za,10)||void 0}else ab=void 0;var cb=ab;function db(a){return x(a.prototype,”$$generatedClassName”,function(){return”Class$obf_”}})}var eb=1E3;function z(){}z.prototype.j=function(){return this.f||(Object.defineProperties(this,{f:{value:+fb,enumerable:!1}}),this.f)};z.prototype.toString=function(){var a=A(gb(hb(this.constructor)))“";var b=(this.j()>>>0).toString(16);return a+A(b)};function B(){}h(B,z);B.prototype.c=function(a){this.b=a;if(a instanceof Object)try{a.o=this}catch(b){}};function ib(a){a.b instanceof Error&&(Error.captureStackTrace?Error.captureStackTrace(a.b):a.b.stack=Error().stack)}B.prototype.toString=function(){var a=gb(hb(this.constructor)),b=this.g;return null==b?a:A(a)+": "+A(b)};function jb(){}h(jb,B);function kb(){}h(kb,jb);var fb=0;function D(){}h(D,kb);D.prototype.c=function(a){kb.prototype.c.call(this,Object.is(this.a,"__noinit__")?a:this.a)};function lb(){}h(lb,D);function mb(a,b){return"string"==typeof a?a.charCodeAt(b):a.v(b)};function A(a){return null==a?<a href="a.toString()}function">null</a> nb(a){return 65536<=a?A(String.fromCharCode((55296+((a-65536|0)>>10&1023)|0)&65535))+A(String.fromCharCode((56320+((a-65536|0)&1023)|0)&65535)):String.fromCharCode(a&65535)}function ob(a,b){var c=b,d=a.length,e;b=mb(a,(e=c,c=c+1|0,e));var f;if(e=55296<=b&&56319>=b&&c<d)a=f=mb(a,c),e=56320<=a&&57343>=a;var g;e?g=65536+((b&1023)<<10)+(f&1023)|0:g=b;return g};function pb(a,b){this.b=a;this.a=b}h(pb,z);function gb(a){var b=db(a.b);0!=a.a&&(b="L"+A(b)+";");a=a.a;for(var c="",d=0;d<a a="" hb="" x="" new="" pb="" qb="" null="=a?a:b?decodeURI(a):decodeURIComponent(a)};var" rb="/^(?:([^:/?#.]+)?(?://(?:([^/?#]*))?([/#?]?)(?::([0-9]))?(?=[/#?]|$))?([?#]+)?(?:?([#]))?(?:#())?$/;function” sb=”” b=”[],c=0;7”>=c;c=c+1|0)a.length<=c||null==a©?b.push(null):b.push(a©);return b} function tb(a,b){var c=a.indexOf(nb(35));c=0>c?a.length:c;a:{var d=0;for(var e=b.length;0<(d=a.indexOf(b,d))&&d<c;){var f=ob(a,d-1|0);if(38==f||63==f){if((d+e|0)>=a.length)break a;f=ob(a,d+e|0);if(61==f||38==f||35==f)break a}d=d+(e+1)|0}d=-1}if(0>d)return null;e=a.indexOf(nb(38),d);if(0>e||e>c)e=c;d=d+(b.length+1)|0;b=Math.min(a.length,d);a=a.substr(b,Math.min(a.length,Math.max(d,e))-b|0);c=” ”;for(b=0;0<=(b=c.indexOf(””,b));)36==c.charCodeAt(b+1|0)?(d=A(c.substr(0,b|0))+”$”,e=b=b+1|0,c=d+A(c.substr(e))): (d=A(c.substr(0,b|0)),e=b=b+1|0,c=d+A(c.substr(e)));a=a.replace(//g,c);return qb(a,!1)};function E(a,b){this.b=b;for(var c=[],d=!0,e=a.length-1;0<=e;e—){var f=a|0;d&&f==b||(c=f,d=!1)}this.a=c}var ub={};function vb(a){return-128<=a&&128>a?x(ub,a,function(b){return new E([b|0],0>b?-1:0)}):new E([a|0],0>a?-1:0)}function F(a){if(isNaN(a)||!isFinite(a))return G;if(0>a)return H(F(-a));for(var b=[],c=1,d=0;a>=c;d+)b=a/c|0,c=4294967296;return new E(b,0)}var G=vb(0),I=vb(1),wb=vb(16777216); function J(a){if(-1==a.b)return-J(H(a));for(var b=0,c=1,d=0;dc;c=4294967296}return” b=””>a||36>>0).toString(a);c=e;if(L©)return f+d;for(;6>f.length;)f=”0”+f;d=f+d}}; function K(a,b){return 0>b?0:b)if(0 1;return!0}function” o=”” h=”” e=”” f=”d(K(this,e)&65535)&65535),g=(f”>>>16)(K(this,e)>>>16)+(K(a,e)>>>16);d=g>>>16;f&=65535;g&=65535;c=g<<16|f}return new E(c,c[c.length-1]&-2147483648?-1:0)};function M(a,b){return a.add(H(b))} function N(a,b){if(L(a)||L(b))return G;if(-1==a.b)return-1==b.b?N(H(a),H(b)):H(N(H(a),b));if(-1==b.b)return H(N(a,H(b)));if(0>O(a,wb)&&0>O(b,wb))return F(J(a)J(b));for(var c=a.a.length+b.a.length,d=[],e=0;e<2c;e+)d=0;for(e=0;e+){var” g=”K(a,e)”>>>16,k=K(a,e)&65535,t=K(b,f)>>>16,n=K(b,f)&65535;d[2e+2f]=kn;P(d,2e+2f);d[2e+2f+1]=gn;P(d,2e+2f+1);d[2e+2f+1]=kt;P(d,2e+2f+1);d[2e+2f+2]=gt;P(d,2e+2f+2)}for(e=0;e<c;e++)d=d[2e+1]<<16| d[2e];for(e=c;e<2c;e+)d=0;return new E(d,0)}function P(a,b){for(;(a&65535)!=a;)a[b+1]=a>>>16,a&=65535,b++}function Q(a,b){this.a=a;this.b=b} function xb(a,b){if(L(b))throw Error(“division by zero”);if(L(a))return new Q(G,G);if(-1==a.b)return b=xb(H(a),b),new Q(H(b.a),H(b.b));if(-1==b.b)return b=xb(a,H(b)),new Q(H(b.a),b.b);if(30=O(d,a);)c=S(c,1),d=S(d,1);var e=T(c,1),f=T(d,1);d=T(d,2);for(c=T(c,2);!L(d);){var g=f.add(d);0>=O(g,a)&&(e=e.add©,f=g);d=T(d,1);c=T(c,1)}b=M(a,N(e,b));return new Q(e,b)}for(e=G;0<=O(a,b);){c=Math.max(1, Math.floor(J(a)/J(b)));d=Math.ceil(Math.log©/Math.LN2);d=48>=d?1:Math.pow(2,d-48);f=F©;for(g=N(f,b);1==g.b||0<O(g,a);)c=d,f=F©,g=N(f,b);L(f)&&(f=I);e=e.add(f);a=M(a,g)}return new Q(e,a)}E.prototype.and=function(a){for(var b=Math.max(this.a.length,a.a.length),c=[],d=0;d)c=K(this,d)|K(a,d);return” s=”” c=”b”>>5;b%=32;for(var d=a.a.length+c(0>>32-b:K(a,f-c);return new E(e,a.b)}function T(a,b){var c=b>>5;b%=32;for(var d=a.a.length-c,e=[],f=0;f<d;f+)e=0>>b|K(a,f+c+1)<<32-b:K(a,f+c);return new E(e,a.b)};M(S(I,32),I);M(S(I,128),I);function U(){this.b=this.b;this.a=this.a}U.prototype.b=!1;U.prototype.m=function(){this.b||(this.b=!0,this.f())};U.prototype.f=function(){if(this.a)for(;this.a.length;)this.a.shift()()};function yb(a){a&&”function”==typeof a.m&&a.m()};var zb=!y||9<=Number(cb),Ab=!y||9<=Number(cb),Bb=y&&!x($a,”9”,function(){for(var a=0,b=ua(String(Za)).split(”.”),c=ua(“9”).split(”.”),d=Math.max(b.length,c.length),e=0;0==a&&e<d;e+){var f=b||””,g=c||””;do{f=/(d)(D)(.)/.exec(f)||[””,””,””,”“];g=/(d)(D)(.)/.exec(g)||[””,””,””,”“];if(0==f0.length&&0==g0.length)break;a=Ca(0==f1.length?0:parseInt(f1,10),0==g1.length?0:parseInt(g1,10))||Ca(0==f2.length,0==g2.length)||Ca(f2,g2);f=f3;g=g3}while(0==a)}return 0<=a}), Cb=function(){if(Object.defineProperty)return!1;var a=!1,b=Object.defineProperty({},”passive”,{get:function(){a=!0}});try{l.addEventListener(“test”,la,b),l.removeEventListener(“test”,la,b)}catch©{}return a}();function Db(a,b){this.type=a;this.a=this.target=b;this.defaultPrevented=!1}Db.prototype.c=function(){this.defaultPrevented=!0};function V(a,b){Db.call(this,a?a.type:”“);this.relatedTarget=this.a=this.target=null;this.button=this.screenY=this.screenX=this.clientY=this.clientX=0;this.key=””;this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1;this.state=null;this.pointerId=0;this.pointerType=””;this.b=null;if(a){var c=this.type=a.type,d=a.changedTouches&&a.changedTouches.length?a.changedTouches0:null;this.target=a.target||a.srcElement;this.a=b;if(b=a.relatedTarget){if(Ra){a:{try{Na(b.nodeName);var e=!0;break a}catch(f){}e= !1}e||(b=null)}}else”mouseover”==c?b=a.fromElement:”mouseout”==c&&(b=a.toElement);this.relatedTarget=b;d?(this.clientX=void 0!==d.clientX?d.clientX:d.pageX,this.clientY=void 0!==d.clientY?d.clientY:d.pageY,this.screenX=d.screenX||0,this.screenY=d.screenY||0):(this.clientX=void 0!==a.clientX?a.clientX:a.pageX,this.clientY=void 0!==a.clientY?a.clientY:a.pageY,this.screenX=a.screenX||0,this.screenY=a.screenY||0);this.button=a.button;this.key=a.key||””;this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey= a.shiftKey;this.metaKey=a.metaKey;this.pointerId=a.pointerId||0;this.pointerType=”string”===typeof a.pointerType?a.pointerType:Eb[a.pointerType]||””;this.state=a.state;this.b=a;a.defaultPrevented&&this.c()}}oa(V,Db);var Fb=[1,4,2],Eb={2:”touch”,3:”pen”,4:”mouse”};V.prototype.c=function(){V.l.c.call(this);var a=this.b;if(a.preventDefault)a.preventDefault();else if(a.returnValue=!1,Bb)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=1}catch(b){}};var Gb=”closure_listenable_”|0),Hb=0;function Ib(a,b,c,d,e){this.listener=a;this.a=null;this.src=b;this.type=c;this.capture=!1}function Jb(a){a.h=!0;a.listener=null;a.a=null;a.src=null;a.b=null};function Kb(a){this.src=a;this.a={};this.b=0}Kb.prototype.add=function(a,b,c,d,e){var f=a.toString();a=this.a;a||(a=this.a=[],this.b+);var g;a:{for(g=0;g!d&&k.b==e)break” a=”” ib=”” b=”” lb=”” c=”b.type;if(c” in=”” a.a=”” d=”a.a©,e=qa(d,b),f;(f=0<=e)&&Array.prototype.splice.call(d,e,1);f&&(Jb(b),0==a.a©.length&&(delete” mb=”closure_lm_” pb=”” qb=”” f=”0;f<b.length;f+)Pb(a,b,c,d,e);return” null=”” sb=”” error=”” event=”” type=”” g=”ma(e)?!!e,k=Tb(a);k||(a=k=new” kb=”” if=”” throw=”” and=”” attachevent=”” are=”” unavailable.=”” ub=”” a.call=”” xb=”” vb=”” nb=”” yb=”” e=”!0;if(a=Tb(a))if(b=a.a[b.toString()])for(b=b.concat(),a=0;a<b.length;a+){var” zb=”” c.call=”” wb=”” v=””>d.keyCode||void 0!=d.returnValue)){a:{var e=!1;if(0==d.keyCode)try{d.keyCode=-1;break a}catch(g){e=!0}if(e||void 0==d.returnValue)d.returnValue=!0}d=[];for(e=b.a;e;e=e.parentNode)d.push(e);a=a.type;for(e=d.length-1;0<=e;e-){b.a=d;var f=Yb(d,a,!0,b);c=c&&f}for(e=0;e<d.length;e++)b.a=d,f=Yb(d,a,!1,b),c=c&&f}return c}return Zb(a, new V(b,this))}function Tb(a){a=a;return a instanceof Kb?a:null}var $b=”_closure_events_fn“>>>0);function Rb(a){if(“function”===typeof a)return a;a[$b]||(a[$b]=function(b){return a.handleEvent(b)});return a[$b]};function W(a){U.call(this);this.g=a;this.c={}}oa(W,U);var ac=[];function bc(a){ra(a.c,function(b,c){this.c.hasOwnProperty©&&Xb(b)},a);a.c={}}W.prototype.f=function(){W.l.f.call(this);bc(this)};W.prototype.handleEvent=function(){throw Error(“EventHandler.handleEvent not implemented”);};function cc(a){U.call(this);this.c=a||document.body;this.g=new W(this);a=na(yb,this.g);this.b?a():(this.a||(this.a=[]),this.a.push(a));a=this.g;var b=this.c,c=this.j,d=”click”;Array.isArray(d)||(d&&(ac0=d.toString()),d=ac);for(var e=0;e<d.length;e+){var f=Pb(b,d,c||a.handleEvent,!1,a.g||a);if(!f)break;a.c[f.key]=f}}h(cc,U); cc.prototype.j=function(a){if(!(!(zb?0==a.b.button:”click”==a.type||a.b.button&Fb0)||Ta&&a.ctrlKey||a.defaultPrevented))for(var b=a.target;b&&b!=this.c;){if(b.tagName&&”a”==b.tagName.toLowerCase()){var c=b.getAttribute(“href”)||b.getAttributeNS(“https://www.w3.org/1999/xlink”,”href”),d=c;try{var e=sb©[3];var f;if(f=”www.google.com”===qb(e,!0)){var g=sb©[5];f=”/url”===qb(g,!0)}if(f){var k=tb(c,”q”);d=k?k:tb(c,”url”)}}catch©{a:{var t=C;if(null!=t){var n=t.o;if(null!=n){C=n;break a}}if(t instanceof TypeError){var R=n=new lb;R.g=A(t);ib®;n.a=”noinit”;n.a=t;n.c(new TypeError(n));t=n}else R=n=new D,R.g=A(t),ib®,n.a=”noinit”,n.a=t,n.c(Error(n)),t=n;C=t}if(!(C instanceof jb))throw C.b;}d=null!=d?d:””;if(c!=d){e=void 0;b={target:”_blank”,noreferrer:!0};c=window;d instanceof q?f=d:(f=”undefined”!=typeof d.href?d.href:String(d),f instanceof q||(f=”object”==typeof f&&f.b?f.a():String(f),Ga.test(f)?f=new q(f,r):(f=String(f),f=f.replace(/(%0A|%0D)/g,”“),f=(g=f.match(Fa))&&Ea.test(g1)?new q(f, r):null)),f=f||Ia);d=b.target||d.target;g=[];for(e in b)switch(e){case width height top left target noopener noreferrer instanceof q?f:Ha(f),g.href= Da(f),e.setAttribute(“target”,d),b.noreferrer&&e.setAttribute(“rel”,”noreferrer”),b=document.createEvent(“MouseEvent”),b.initMouseEvent(“click”,0,c,1),e.dispatchEvent(b);else if(b.noreferrer){if(c=Ma(””,c,d,e),b=Da(f),c){Qa&&-1!=b.indexOf(”;”)&&(b=”’”b.replace(/’/g,” 27”)”’”);c.opener=null;Ba.test(b)&x%x (-1!=b.indexOf(“&”)&&(b=b.replace(va,”&”)),-1!=b.indexOf(”<”)&&(b=b.replace(wa,”<”)),-1!=b.indexOf(”>”)&&(b=b.replace(xa,”>”)),-1!=b.indexOf(’”’)&&(b=b.replace(ya,”””)),-1!=b.indexOf(”’”)&& (b=b.replace(za,”’”)),-1!=b.indexOf(”x00”)&&(b=b.replace(Aa,”“)));b=’<meta name=”referrer” content=”no-referrer”><meta http-equiv=”refresh” content=”0; url=’b’”>’;if(void 0===m)if(d=null,(e=l.trustedTypes)&&e.createPolicy){try{d=e.createPolicy(“goog#html”,{createHTML:pa,createScript:pa,createScriptURL:pa})}catch©{l.console&&l.console.error(C.message)}m=d}else m=d;b=(d=m)?d.createHTML(b):b;b=new w(b,null,La);(c=c.document)&&c.write&&(c.write(b instanceof w&&b.constructor===w?b.c:”type_error:SafeHtml”), c.close())}}else(c=Ma(f,c,d,e))&&b.noopener&&(c.opener=null);a.c();break}}b=b.parentNode}};function dc(a){new cc(a)}var X=[“DOCS_installLinkReferrerSanitizer”],Y=l;X0in Y||”undefined”==typeof Y.execScript||Y.execScript(“var “+X0);for(var Z;X.length&&(Z=X.shift());)X.length||void 0===dc?Y&&Y!==Object.prototype?Y=Y:Y=Y={}:Y=dc;}).call(this); </script><script type=”text/javascript” nonce=””>DOCS_installLinkReferrerSanitizer();</script>

Created Dec 24, 2025

Recipes - Cookbook App for Android with Admin Panel

Recipes - Cookbook App for Android with Admin Panel

Recipes – Cookbook App is an Android application support adding/updating an unlimited number of categories, recipes, and chefs online directly using an easy Admin Panel which connected to the Realtime Firebase database, and can be deployed on the free Firebase hosting, no domain/hosting are needed Each recipe contain ingredients, instructions, multiple images, and a video. This source code is consists of 2 apps:

Created May 13, 2020 · Updated Feb 22, 2025 · ★ 5.00 (3) · 105 sales

Aladdin Express - Android B2B Ecommerse App + Admin Panel

Aladdin Express - Android B2B Ecommerse App + Admin Panel

The following package is a one stop destination for the people who wants to expand their B2B eCommerce business digitally. You can also consider it a clone app of Ninjajcart. From this app , you could deal with your customers, and its an B2B marketplace app, so you could also set an minimum order quantity.It also comes with an admin app which the admin can use to verify the users, change the data inside the User App including the categories, products, banners, discount codes and much more.It uses Phone Number OTP verification to login any user which makes it not only secure but also spam free.

Created Apr 7, 2022 · 3 sales