1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8616],{9927:(e,r,s)=>{s.d(r,{b:()=>i});var t=s(24359);function i(e){return(0,t.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:45.75,height:48,viewBox:"0 0 488 512",...e,children:[(0,t.jsx)("title",{children:"Google"}),(0,t.jsx)("path",{fill:"currentColor",d:"M488 261.8C488 403.3 391.1 504 248 504C110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6c98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4"})]})}s(43951)},34094:(e,r,s)=>{s.d(r,{F:()=>b});var t=s(11683),i=s(52091),n=s(64987),a=s(60150),o=s(30044),c=s(90560),l=s(92918),u=s(20563),d=s(77623),m=s(777),g=s(27576),f=s(122),p=s(32990),h=s(33200),w=s(24359);s(43951);var v=s(9927);let b={spinner:t.A,arrowRight:i.A,search:n.A,tool:a.A,collection:o.A,category:c.A,tag:l.A,blog:u.A,pricing:d.A,home:m.A,dashboard:g.A,submit:f.A,settings:p.A,studio:o.A,email:h.A,github:function(e){return(0,w.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:46.5,height:48,viewBox:"0 0 496 512",...e,children:[(0,w.jsx)("title",{children:"GitHub"}),(0,w.jsx)("path",{fill:"currentColor",d:"M165.9 397.4c0 2-2.3 3.6-5.2 3.6c-3.3.3-5.6-1.3-5.6-3.6c0-2 2.3-3.6 5.2-3.6c3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9c2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9c.3 2 2.9 3.3 5.9 2.6c2.9-.7 4.9-2.6 4.6-4.6c-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2c12.8 2.3 17.3-5.6 17.3-12.1c0-6.2-.3-40.4-.3-61.4c0 0-70 15-84.7-29.8c0 0-11.4-29.1-27.8-36.6c0 0-22.9-15.7 1.6-15.4c0 0 24.9 2 38.6 25.8c21.9 38.6 58.6 27.5 72.9 20.9c2.3-16 8.8-27.1 16-33.7c-55.9-6.2-112.3-14.3-112.3-110.5c0-27.5 7.6-41.3 23.6-58.9c-2.6-6.5-11.1-33.3 2.6-67.9c20.9-6.5 69 27 69 27c20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27c13.7 34.7 5.2 61.4 2.6 67.9c16 17.7 25.8 31.5 25.8 58.9c0 96.5-58.9 104.2-114.8 110.5c9.2 7.9 17 22.9 17 46.4c0 33.7-.3 75.4-.3 83.6c0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252C496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2c1.6 1.6 3.9 2.3 5.2 1c1.3-1 1-3.3-.7-5.2c-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9c1.6 1 3.6.7 4.3-.7c.7-1.3-.3-2.9-2.3-3.9c-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2c2.3 2.3 5.2 2.6 6.5 1c1.3-1.3.7-4.3-1.3-6.2c-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2c-1.4-2.3-4-3.3-5.6-2"})]})},google:v.b,twitter:function(e){return(0,w.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:48,height:48,viewBox:"0 0 512 512",...e,children:[(0,w.jsx)("title",{children:"X (Twitter)"}),(0,w.jsx)("path",{fill:"currentColor",d:"M389.2 48h70.6L305.6 224.2L487 464H345L233.7 318.6L106.5 464H35.8l164.9-188.5L26.8 48h145.6l100.5 132.9zm-24.8 373.8h39.1L151.1 88h-42z"})]})},youtube:function(e){return(0,w.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:48,height:48,viewBox:"0 0 512 512",...e,children:[(0,w.jsx)("title",{children:"YouTube"}),(0,w.jsx)("path",{fill:"currentColor",d:"M508.64 148.79c0-45-33.1-81.2-74-81.2C379.24 65 322.74 64 265 64h-18c-57.6 0-114.2 1-169.6 3.6C36.6 67.6 3.5 104 3.5 149C1 184.59-.06 220.19 0 255.79q-.15 53.4 3.4 106.9c0 45 33.1 81.5 73.9 81.5c58.2 2.7 117.9 3.9 178.6 3.8q91.2.3 178.6-3.8c40.9 0 74-36.5 74-81.5c2.4-35.7 3.5-71.3 3.4-107q.34-53.4-3.26-106.9M207 353.89v-196.5l145 98.2Z"})]})},productHunt:function(e){return(0,w.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:48,height:48,viewBox:"0 0 256 256",...e,children:[(0,w.jsx)("title",{children:"Product Hunt"}),(0,w.jsx)("defs",{children:(0,w.jsxs)("linearGradient",{id:"logosProducthunt0",x1:"50%",x2:"50%",y1:"0%",y2:"100%",children:[(0,w.jsx)("stop",{offset:"0%",stopColor:"#da552f"}),(0,w.jsx)("stop",{offset:"100%",stopColor:"#d04b25"})]})}),(0,w.jsxs)("g",{fill:"none",fillRule:"evenodd",children:[(0,w.jsx)("path",{fill:"url(#logosProducthunt0)",d:"M128 256c70.694 0 128-57.306 128-128S198.694 0 128 0S0 57.306 0 128s57.306 128 128 128"}),(0,w.jsx)("path",{fill:"#fff",d:"M96 76.8v102.4h19.2v-32h29.056c19.296-.512 34.944-16.16 34.944-35.2c0-19.552-15.648-35.2-34.944-35.2zm48.493 51.2H115.2V96h29.293c8.563 0 15.507 7.168 15.507 16s-6.944 16-15.507 16"})]})]})}}},74080:(e,r,s)=>{s.d(r,{$:()=>l,r:()=>c});var t=s(24359),i=s(43951),n=s(54572),a=s(82405),o=s(75167);let c=(0,a.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),l=i.forwardRef((e,r)=>{let{className:s,variant:i,size:a,asChild:l=!1,...u}=e,d=l?n.DX:"button";return(0,t.jsx)(d,{className:(0,o.cn)(c({variant:i,size:a,className:s})),ref:r,...u})});l.displayName="Button"},35244:(e,r,s)=>{s.d(r,{p:()=>a});var t=s(24359),i=s(43951),n=s(75167);let a=i.forwardRef((e,r)=>{let{className:s,type:i,...a}=e;return(0,t.jsx)("input",{type:i,className:(0,n.cn)("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm r
1ing-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",s),ref:r,...a})});a.displayName="Input"},330:(e,r,s)=>{s.d(r,{J:()=>l});var t=s(24359),i=s(43951),n=s(50395),a=s(82405),o=s(75167);let c=(0,a.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),l=i.forwardRef((e,r)=>{let{className:s,...i}=e;return(0,t.jsx)(n.b,{ref:r,className:(0,o.cn)(c(),s),...i})});l.displayName=n.b.displayName},73434:(e,r,s)=>{s.d(r,{C:()=>i});let t="https://hubfortools.com",i={name:"Tools Hub",tagline:"Discover the most suitable tools for productivity, creativity, and utility.",description:"The comprehensive hub for discovering the most suitable tools to significantly enhance your productivity and efficiency.",keywords:["Tools Hub","productivity tools","software discovery","efficiency tools","best tools for productivity","online tool hub","tools share"],author:"Tools Hub",url:t,image:"".concat(t,"/og.png?v=1"),mail:"[email protected]",utm:{source:"hubfortools.com",medium:"referral",campaign:"navigation"},links:{twitter:"https://x.com/hubfortools",github:"",youtube:""}}},76403:(e,r,s)=>{s.d(r,{W0:()=>t,Xl:()=>a,q1:()=>i,r4:()=>n});let t=!1,i=!0,n={label:"Sort by Time (dsc)",slug:null,sortKey:"publishDate",reverse:!0},a={label:"No Filter",slug:null}},71234:(e,r,s)=>{s.d(r,{Do:()=>p,Dt:()=>u,MG:()=>c,U2:()=>o,U4:()=>l,Z2:()=>f,dR:()=>m,mg:()=>d,rg:()=>n,tT:()=>g});var t=s(9023),i=s(76403);let n=t.Ik({email:t.Yj().email({message:"Enter a valid email"})}),a={name:t.Yj().min(1,{message:"Name is required"}).max(32,{message:"Name must be 32 or fewer characters long"}),link:t.Yj().url({message:"Invalid url"}),description:t.Yj().min(1,{message:"Description is required"}).max(256,{message:"Description must be 256 or fewer characters long"}),introduction:t.Yj().min(1,{message:"Introduction is required"}).max(4096,{message:"Introduction must be 4096 or fewer characters long"}),tags:t.YO(t.Yj()).min(1,{message:"Must select at least one tag"}),categories:t.YO(t.Yj()).min(1,{message:"Must select at least one category"})},o=t.Ik({...a,imageId:i.q1?t.Yj().optional():t.Yj().min(1,{message:"Must upload an image"}),...i.q1?{iconId:t.Yj().min(1,{message:"Must upload an icon"})}:{}}),c=o.extend({id:t.Yj().min(1,{message:"ID is required"}),pricePlan:t.Yj().min(1,{message:"Price plan is required"}),planStatus:t.Yj().min(1,{message:"Plan status is required"})});t.Ik({name:t.Yj().min(1,{message:"Name is required"}),link:t.Yj().optional(),password:t.lq(t.Yj().min(6)),newPassword:t.lq(t.Yj().min(6))}).refine(e=>!e.password||!!e.newPassword,{message:"New password is required!",path:["newPassword"]}).refine(e=>!e.newPassword||!!e.password,{message:"Password is required!",path:["password"]});let l=t.Ik({name:t.Yj().min(1,{message:"Name is required"}).max(32,{message:"Name must be 32 or fewer characters long"})}),u=t.Ik({link:t.Yj().min(0,{message:"Link is optional"}).max(128,{message:"Link must be 128 or fewer characters long"})}),d=t.Ik({password:t.Yj().min(6,{message:"Minimum of 6 characters required"}),newPassword:t.Yj().min(6,{message:"Minimum of 6 characters required"}),confirmPassword:t.Yj().min(6,{message:"Minimum of 6 characters required"})}).refine(e=>!e.newPassword||!!e.password,{message:"Password is required",path:["password"]}).refine(e=>!e.password||!!e.newPassword,{message:"New password is required",path:["newPassword"]}).refine(e=>e.newPassword===e.confirmPassword,{message:"Passwords do not match",path:["confirmPassword"]}),m=t.Ik({password:t.Yj().min(6,{message:"Minimum of 6 characters required"})}),g=t.Ik({email:t.Yj().email({message:"Email is required"})}),f=t.Ik({email:t.Yj().email({message:"Email is required"}),password:t.Yj().min(1,{message:"Password is required"})}),p=t.Ik({email:t.Yj().email({message:"Email is required"}),password:t.Yj().min(6,{message:"Minimum 6 characters required"}),name:t.Yj().min(1,{message:"Name is required"})});t.Ik({title:t.Yj(),description:t.Yj().optional(),type:t.Yj().optional(),mode:t.k5(["light","dark"]).default("light")})},16526:(e,r,s)=>{s.d(r,{AS:()=>t,AY:()=>o,CZ:()=>c,Y0:()=>i,gR:()=>a,n2:()=>l,vJ:()=>n});var t=function(e){return e.FREE="free",e.PRO="pro",e.SPONSOR="sponsor",e}({}),i=function(e){return e.APPROVED="approved",e.REJECTED="rejected",e.PENDING="pending",e.SUBMITTING="submitting",e}({}),n=function(e){return e.SUCCESS="success",e.FAILED="failed",e.PENDING="pending",e.SUBMITTING="submitting",e}({}),a=function(e){return e.SUCCESS="success",e.FAILED="failed",e.PENDING="pending",e.SUBMITTING="submitting",e}({});let o=e=>"free"===e.pricePlan?"approved"===e.freePlanStatus:"pro"===e.pricePlan?"success"===e.proPlanStatus:"sponsor"===e.pricePlan&&"success"===e.sponsorPlanStatus,c={SUCCESS:"success",WARNING:"warning",DANGER:"danger",NORMAL:"normal"},l=e=>{if("free"===e.pricePlan)switch(e.freePlanStatus){case"approved":return c.SUCCESS;case"rejected":return c.DANGER;
1case"pending":return c.WARNING;default:return c.NORMAL}if("pro"===e.pricePlan)switch(e.proPlanStatus){case"success":return c.SUCCESS;case"failed":return c.DANGER;case"pending":return c.WARNING;default:return c.NORMAL}if("sponsor"===e.pricePlan)switch(e.sponsorPlanStatus){case"success":return c.SUCCESS;case"failed":return c.DANGER;case"pending":return c.WARNING}return c.NORMAL}},75167:(e,r,s)=>{s.d(r,{cO:()=>c,cn:()=>a,fQ:()=>l,jP:()=>o});var t=s(73434),i=s(68589),n=s(43480);function a(){for(var e=arguments.length,r=Array(e),s=0;s<e;s++)r[s]=arguments[s];return(0,n.QP)((0,i.$)(r))}function o(e){let r=new Date(e),s=r.getFullYear(),t=(r.getMonth()+1).toString().padStart(2,"0"),i=r.getDate().toString().padStart(2,"0");return"".concat(s,"/").concat(t,"/").concat(i)}s(54937),s(16526),s(55036);let c=(e,r)=>{let s=r.toString(),t="".concat(s.length?"?":"").concat(s);return"".concat(e).concat(t)};function l(e){if(e.affiliateLink)return e.affiliateLink;try{let r=new URLSearchParams({utm_source:t.C.utm.source,utm_medium:t.C.utm.medium,utm_campaign:t.C.utm.campaign}).toString(),s=new URL(e.link);return s.search=s.search?"".concat(s.search,"&").concat(r):"?".concat(r),s.toString()}catch(r){return e.link}}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.