diff --git a/404.html b/404.html index 2b1b33f6b..ff6e16f6d 100644 --- a/404.html +++ b/404.html @@ -5,7 +5,7 @@ Page Not Found | OpenSign™ - + diff --git a/assets/js/489b8a4d.11f409bc.js b/assets/js/489b8a4d.11f409bc.js new file mode 100644 index 000000000..90d359d2e --- /dev/null +++ b/assets/js/489b8a4d.11f409bc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[8781],{44907:(e,s,t)=>{t.r(s),t.d(s,{assets:()=>d,contentTitle:()=>c,default:()=>h,frontMatter:()=>i,metadata:()=>o,toc:()=>l});var n=t(85893),r=t(11151);const i={title:"Code of conduct"},c=void 0,o={id:"self-host/docker/run-locally",title:"Code of conduct",description:"Localhost Setup with Docker",source:"@site/docs/self-host/docker/run-locally.md",sourceDirName:"self-host/docker",slug:"/self-host/docker/run-locally",permalink:"/docs/self-host/docker/run-locally",draft:!1,unlisted:!1,editUrl:"https://github.com/opensignlabs/opensign/tree/feat-docs/docs/docs/self-host/docker/run-locally.md",tags:[],version:"current",frontMatter:{title:"Code of conduct"},sidebar:"selfhostSidebar",previous:{title:"Docker",permalink:"/docs/category/docker"},next:{title:"Digital Ocean",permalink:"/docs/self-host/One-click-Install/DigitalOcean"}},d={},l=[{value:"Localhost Setup with Docker",id:"localhost-setup-with-docker",level:2}];function a(e){const s={a:"a",code:"code",h1:"h1",h2:"h2",li:"li",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.a)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.h2,{id:"localhost-setup-with-docker",children:"Localhost Setup with Docker"}),"\n",(0,n.jsx)(s.p,{children:"To set up OpenSign\u2122 locally using Docker, the following prerequisites are required:"}),"\n",(0,n.jsx)(s.p,{children:"Environment Varaibles:"}),"\n",(0,n.jsxs)(s.table,{children:[(0,n.jsx)(s.thead,{children:(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.th,{children:"Environment Varibale"}),(0,n.jsx)(s.th,{children:"Value"}),(0,n.jsx)(s.th,{children:"Description"})]})}),(0,n.jsxs)(s.tbody,{children:[(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"CI"}),(0,n.jsx)(s.td,{children:"false"}),(0,n.jsx)(s.td,{children:"Set CI to false while running the app locally"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"PUBLIC_URL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"http://localhost:3000",children:"http://localhost:3000"})}),(0,n.jsx)(s.td,{children:"Set it to the URL form where the app home page will be accessed"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"GENERATE_SOURCEMAP"}),(0,n.jsx)(s.td,{children:"false"}),(0,n.jsx)(s.td,{children:"Set it to true if you want to generate the Sourcemap for debugging"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"REACT_APP_SERVERURL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"http://localhost:8080/app",children:"http://localhost:8080/app"})}),(0,n.jsx)(s.td,{children:"Set it to the URL from where APIs will be accessible, for local development it should be localhost:3000/api/app (use your local port number instead)"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"REACT_APP_APPID"}),(0,n.jsx)(s.td,{children:"opensignstgn"}),(0,n.jsx)(s.td,{children:"A 12 character long random app identifier. The value of this should be same as APP_ID which is a variable used by backend API."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"APP_ID"}),(0,n.jsx)(s.td,{children:"opensignstgn"}),(0,n.jsx)(s.td,{children:"A 12 character long random app identifier. The value of this should be same as REACT_APP_APPID which is a variable used by Frontend React App."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"appName"}),(0,n.jsx)(s.td,{children:"open_sign_server"}),(0,n.jsx)(s.td,{children:"Name of the app. It will be visible in the verification emails sent out."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MASTER_KEY"}),(0,n.jsx)(s.td,{children:"XnAadwKxxByMr"}),(0,n.jsx)(s.td,{children:"A 12 character long random secret key that allows access to all the data. It is used in Parse dashboard config to view all the data in the database."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MONGODB_URI"}),(0,n.jsx)(s.td,{children:"mongodb://host.docker.internal:27017/OpenSignDB"}),(0,n.jsx)(s.td,{children:"Mongodb URI to connect to"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"PARSE_MOUNT"}),(0,n.jsx)(s.td,{children:"/app"}),(0,n.jsx)(s.td,{children:"Path on which APIs should be mounted. Do not change this. This variable shall be removed & value hardcoded in the source code in coming versions."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"SERVER_URL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"http://127.0.0.1:8080/app",children:"http://127.0.0.1:8080/app"})}),(0,n.jsx)(s.td,{children:"Set it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:3000/api/app (use your local port number instead)"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_SPACE"}),(0,n.jsx)(s.td,{children:"DOSPACENAME"}),(0,n.jsx)(s.td,{children:"Digital ocean space name or AWS S3 bucket name for uploading documents"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_ENDPOINT"}),(0,n.jsx)(s.td,{children:"ams3.digitaloceanspaces.com"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces endpoint or AWS S3 endpoint for uploading documents"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_BASEURL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"https://DOSPACENAME.ams3.digitaloceanspaces.com",children:"https://DOSPACENAME.ams3.digitaloceanspaces.com"})}),(0,n.jsx)(s.td,{children:"Digital ocean baseurl or AWS S3 base URL"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_ACCESS_KEY_ID"}),(0,n.jsx)(s.td,{children:"YOUR_S3_ACCESS_ID"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_SECRET_ACCESS_KEY"}),(0,n.jsx)(s.td,{children:"YOUR_S3_ACCESS_KEY"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces secret access key or AWS s3 secret access key for uploading the docs"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_REGION"}),(0,n.jsx)(s.td,{children:"YOUR_S3_REGION"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces region or AWS s3 region"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"USE_LOCAL"}),(0,n.jsx)(s.td,{children:"FALSE"}),(0,n.jsx)(s.td,{children:"To use local file storage to save file"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MAILGUN_API_KEY"}),(0,n.jsx)(s.td,{children:"YOUR_MAILGUNAPI_KEY"}),(0,n.jsx)(s.td,{children:"Mailgun API Key"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MAILGUN_DOMAIN"}),(0,n.jsx)(s.td,{children:"YOUR_MAILGUNAPI_DOMAIN"}),(0,n.jsx)(s.td,{children:"Mailgun API Domain"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MAILGUN_SENDER"}),(0,n.jsx)(s.td,{children:"-"}),(0,n.jsx)(s.td,{children:"Mailgun Sender Mail ID"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"PFX_BASE64"}),(0,n.jsx)(s.td,{children:"-"}),(0,n.jsxs)(s.td,{children:["Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase ",(0,n.jsx)(s.code,{children:"emudhra"})]})]})]})]}),"\n",(0,n.jsx)(s.h1,{id:"steps-to-generate-self-sign-certificate",children:"Steps to Generate Self Sign Certificate"}),"\n",(0,n.jsx)(s.pre,{children:(0,n.jsx)(s.code,{children:"# execute below command and use passphrase emudhra\nopenssl genrsa -des3 -out ./cert/local_dev.key 2048\nopenssl req -key ./cert/local_dev.key -new -x509 -days 365 -out ./cert/local_dev.crt\nopenssl pkcs12 -inkey ./cert/local_dev.key -in ./cert/local_dev.crt -export -out ./cert/local_dev.pfx\nopenssl base64 -in ./cert/local_dev.pfx -out ./cert/base64_pfx\n"})}),"\n",(0,n.jsx)(s.h1,{id:"cors-configuration",children:"CORS Configuration"}),"\n",(0,n.jsxs)(s.p,{children:["As document storage is delegated to S3-compatible services that reside in a different host than the OpenSign one, document operations (loading, storing, deleting) are subject to ",(0,n.jsx)(s.a,{href:"https://en.wikipedia.org/wiki/Cross-origin_resource_sharing",children:"Cross-Origin Resource Sharing"})," restriction policies; as a consequence, OpenSign app may fail with (browser console) errors like the following:"]}),"\n",(0,n.jsx)(s.pre,{children:(0,n.jsx)(s.code,{children:"Access to fetch at 'https://foo.nyc3.digitaloceanspaces.com/exported_file_4627_0000-00-00T00%3A45%3A43.344Z.pdf'\nfrom origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header\nis present on the requested resource. If an opaque response serves your needs, set the request's mode to\n'no-cors' to fetch the resource with CORS disabled.\n"})}),"\n",(0,n.jsx)(s.p,{children:"In order to address this, your document storage system must be instructed to accept requests from other hosts; below the relevant documentation links:"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsx)(s.li,{children:(0,n.jsx)(s.a,{href:"https://docs.digitalocean.com/products/spaces/how-to/configure-cors/",children:"How to Configure CORS on DigitalOcean Spaces"})}),"\n",(0,n.jsx)(s.li,{children:(0,n.jsx)(s.a,{href:"https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html",children:"Configuring cross-origin resource sharing on AWS S3"})}),"\n"]}),"\n",(0,n.jsx)(s.h1,{id:"build-local-environment",children:"Build Local Environment"}),"\n",(0,n.jsx)(s.p,{children:"Command to build project -"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsxs)(s.li,{children:["Execute ",(0,n.jsx)(s.code,{children:"make build"})]}),"\n"]}),"\n",(0,n.jsx)(s.p,{children:"Command to run project -"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsxs)(s.li,{children:["Execute ",(0,n.jsx)(s.code,{children:"make run"})]}),"\n"]})]})}function h(e={}){const{wrapper:s}={...(0,r.a)(),...e.components};return s?(0,n.jsx)(s,{...e,children:(0,n.jsx)(a,{...e})}):a(e)}},11151:(e,s,t)=>{t.d(s,{Z:()=>o,a:()=>c});var n=t(67294);const r={},i=n.createContext(r);function c(e){const s=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function o(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:c(e.components),n.createElement(i.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/489b8a4d.f18e95fb.js b/assets/js/489b8a4d.f18e95fb.js deleted file mode 100644 index ecb38b48a..000000000 --- a/assets/js/489b8a4d.f18e95fb.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[8781],{44907:(e,s,t)=>{t.r(s),t.d(s,{assets:()=>l,contentTitle:()=>c,default:()=>h,frontMatter:()=>i,metadata:()=>o,toc:()=>d});var n=t(85893),r=t(11151);const i={},c=void 0,o={id:"self-host/docker/run-locally",title:"run-locally",description:"Localhost Setup with Docker",source:"@site/docs/self-host/docker/run-locally.md",sourceDirName:"self-host/docker",slug:"/self-host/docker/run-locally",permalink:"/docs/self-host/docker/run-locally",draft:!1,unlisted:!1,editUrl:"https://github.com/opensignlabs/opensign/tree/feat-docs/docs/docs/self-host/docker/run-locally.md",tags:[],version:"current",frontMatter:{},sidebar:"selfhostSidebar",previous:{title:"Docker",permalink:"/docs/category/docker"},next:{title:"Digital Ocean",permalink:"/docs/self-host/One-click-Install/DigitalOcean"}},l={},d=[{value:"Localhost Setup with Docker",id:"localhost-setup-with-docker",level:2}];function a(e){const s={a:"a",code:"code",h1:"h1",h2:"h2",li:"li",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.a)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.h2,{id:"localhost-setup-with-docker",children:"Localhost Setup with Docker"}),"\n",(0,n.jsx)(s.p,{children:"To set up OpenSign\u2122 locally using Docker, the following prerequisites are required:"}),"\n",(0,n.jsx)(s.p,{children:"Environment Varaibles:"}),"\n",(0,n.jsxs)(s.table,{children:[(0,n.jsx)(s.thead,{children:(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.th,{children:"Environment Varibale"}),(0,n.jsx)(s.th,{children:"Value"}),(0,n.jsx)(s.th,{children:"Description"})]})}),(0,n.jsxs)(s.tbody,{children:[(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"CI"}),(0,n.jsx)(s.td,{children:"false"}),(0,n.jsx)(s.td,{children:"Set CI to false while running the app locally"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"PUBLIC_URL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"http://localhost:3000",children:"http://localhost:3000"})}),(0,n.jsx)(s.td,{children:"Set it to the URL form where the app home page will be accessed"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"GENERATE_SOURCEMAP"}),(0,n.jsx)(s.td,{children:"false"}),(0,n.jsx)(s.td,{children:"Set it to true if you want to generate the Sourcemap for debugging"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"REACT_APP_SERVERURL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"http://localhost:8080/app",children:"http://localhost:8080/app"})}),(0,n.jsx)(s.td,{children:"Set it to the URL from where APIs will be accessible, for local development it should be localhost:3000/api/app (use your local port number instead)"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"REACT_APP_APPID"}),(0,n.jsx)(s.td,{children:"opensignstgn"}),(0,n.jsx)(s.td,{children:"A 12 character long random app identifier. The value of this should be same as APP_ID which is a variable used by backend API."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"APP_ID"}),(0,n.jsx)(s.td,{children:"opensignstgn"}),(0,n.jsx)(s.td,{children:"A 12 character long random app identifier. The value of this should be same as REACT_APP_APPID which is a variable used by Frontend React App."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"appName"}),(0,n.jsx)(s.td,{children:"open_sign_server"}),(0,n.jsx)(s.td,{children:"Name of the app. It will be visible in the verification emails sent out."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MASTER_KEY"}),(0,n.jsx)(s.td,{children:"XnAadwKxxByMr"}),(0,n.jsx)(s.td,{children:"A 12 character long random secret key that allows access to all the data. It is used in Parse dashboard config to view all the data in the database."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MONGODB_URI"}),(0,n.jsx)(s.td,{children:"mongodb://host.docker.internal:27017/OpenSignDB"}),(0,n.jsx)(s.td,{children:"Mongodb URI to connect to"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"PARSE_MOUNT"}),(0,n.jsx)(s.td,{children:"/app"}),(0,n.jsx)(s.td,{children:"Path on which APIs should be mounted. Do not change this. This variable shall be removed & value hardcoded in the source code in coming versions."})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"SERVER_URL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"http://127.0.0.1:8080/app",children:"http://127.0.0.1:8080/app"})}),(0,n.jsx)(s.td,{children:"Set it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:3000/api/app (use your local port number instead)"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_SPACE"}),(0,n.jsx)(s.td,{children:"DOSPACENAME"}),(0,n.jsx)(s.td,{children:"Digital ocean space name or AWS S3 bucket name for uploading documents"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_ENDPOINT"}),(0,n.jsx)(s.td,{children:"ams3.digitaloceanspaces.com"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces endpoint or AWS S3 endpoint for uploading documents"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_BASEURL"}),(0,n.jsx)(s.td,{children:(0,n.jsx)(s.a,{href:"https://DOSPACENAME.ams3.digitaloceanspaces.com",children:"https://DOSPACENAME.ams3.digitaloceanspaces.com"})}),(0,n.jsx)(s.td,{children:"Digital ocean baseurl or AWS S3 base URL"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_ACCESS_KEY_ID"}),(0,n.jsx)(s.td,{children:"YOUR_S3_ACCESS_ID"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_SECRET_ACCESS_KEY"}),(0,n.jsx)(s.td,{children:"YOUR_S3_ACCESS_KEY"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces secret access key or AWS s3 secret access key for uploading the docs"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"DO_REGION"}),(0,n.jsx)(s.td,{children:"YOUR_S3_REGION"}),(0,n.jsx)(s.td,{children:"Digital ocean spaces region or AWS s3 region"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"USE_LOCAL"}),(0,n.jsx)(s.td,{children:"FALSE"}),(0,n.jsx)(s.td,{children:"To use local file storage to save file"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MAILGUN_API_KEY"}),(0,n.jsx)(s.td,{children:"YOUR_MAILGUNAPI_KEY"}),(0,n.jsx)(s.td,{children:"Mailgun API Key"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MAILGUN_DOMAIN"}),(0,n.jsx)(s.td,{children:"YOUR_MAILGUNAPI_DOMAIN"}),(0,n.jsx)(s.td,{children:"Mailgun API Domain"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"MAILGUN_SENDER"}),(0,n.jsx)(s.td,{children:"-"}),(0,n.jsx)(s.td,{children:"Mailgun Sender Mail ID"})]}),(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"PFX_BASE64"}),(0,n.jsx)(s.td,{children:"-"}),(0,n.jsxs)(s.td,{children:["Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase ",(0,n.jsx)(s.code,{children:"emudhra"})]})]})]})]}),"\n",(0,n.jsx)(s.h1,{id:"steps-to-generate-self-sign-certificate",children:"Steps to Generate Self Sign Certificate"}),"\n",(0,n.jsx)(s.pre,{children:(0,n.jsx)(s.code,{children:"# execute below command and use passphrase emudhra\nopenssl genrsa -des3 -out ./cert/local_dev.key 2048\nopenssl req -key ./cert/local_dev.key -new -x509 -days 365 -out ./cert/local_dev.crt\nopenssl pkcs12 -inkey ./cert/local_dev.key -in ./cert/local_dev.crt -export -out ./cert/local_dev.pfx\nopenssl base64 -in ./cert/local_dev.pfx -out ./cert/base64_pfx\n"})}),"\n",(0,n.jsx)(s.h1,{id:"cors-configuration",children:"CORS Configuration"}),"\n",(0,n.jsxs)(s.p,{children:["As document storage is delegated to S3-compatible services that reside in a different host than the OpenSign one, document operations (loading, storing, deleting) are subject to ",(0,n.jsx)(s.a,{href:"https://en.wikipedia.org/wiki/Cross-origin_resource_sharing",children:"Cross-Origin Resource Sharing"})," restriction policies; as a consequence, OpenSign app may fail with (browser console) errors like the following:"]}),"\n",(0,n.jsx)(s.pre,{children:(0,n.jsx)(s.code,{children:"Access to fetch at 'https://foo.nyc3.digitaloceanspaces.com/exported_file_4627_0000-00-00T00%3A45%3A43.344Z.pdf'\nfrom origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header\nis present on the requested resource. If an opaque response serves your needs, set the request's mode to\n'no-cors' to fetch the resource with CORS disabled.\n"})}),"\n",(0,n.jsx)(s.p,{children:"In order to address this, your document storage system must be instructed to accept requests from other hosts; below the relevant documentation links:"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsx)(s.li,{children:(0,n.jsx)(s.a,{href:"https://docs.digitalocean.com/products/spaces/how-to/configure-cors/",children:"How to Configure CORS on DigitalOcean Spaces"})}),"\n",(0,n.jsx)(s.li,{children:(0,n.jsx)(s.a,{href:"https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html",children:"Configuring cross-origin resource sharing on AWS S3"})}),"\n"]}),"\n",(0,n.jsx)(s.h1,{id:"build-local-environment",children:"Build Local Environment"}),"\n",(0,n.jsx)(s.p,{children:"Command to build project -"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsxs)(s.li,{children:["Execute ",(0,n.jsx)(s.code,{children:"make build"})]}),"\n"]}),"\n",(0,n.jsx)(s.p,{children:"Command to run project -"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsxs)(s.li,{children:["Execute ",(0,n.jsx)(s.code,{children:"make run"})]}),"\n"]})]})}function h(e={}){const{wrapper:s}={...(0,r.a)(),...e.components};return s?(0,n.jsx)(s,{...e,children:(0,n.jsx)(a,{...e})}):a(e)}},11151:(e,s,t)=>{t.d(s,{Z:()=>o,a:()=>c});var n=t(67294);const r={},i=n.createContext(r);function c(e){const s=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function o(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:c(e.components),n.createElement(i.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.00024b62.js b/assets/js/935f2afb.00024b62.js deleted file mode 100644 index 1c99dfa50..000000000 --- a/assets/js/935f2afb.00024b62.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Intro","href":"/docs/help/intro","docId":"help/intro","unlisted":false},{"type":"category","label":"New-Document","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Sign yourself","href":"/docs/help/New-Document/sign-yourself","docId":"help/New-Document/sign-yourself","unlisted":false},{"type":"link","label":"Request signatures","href":"/docs/help/New-Document/request-signatures","docId":"help/New-Document/request-signatures","unlisted":false}]}],"selfhostSidebar":[{"type":"link","label":"Self-Hosting OpenSign","href":"/docs/self-host/intro","docId":"self-host/intro","unlisted":false},{"type":"category","label":"Docker","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"run-locally","href":"/docs/self-host/docker/run-locally","docId":"self-host/docker/run-locally","unlisted":false}],"href":"/docs/category/docker"},{"type":"category","label":"One-click-Install","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Digital Ocean","href":"/docs/self-host/One-click-Install/DigitalOcean","docId":"self-host/One-click-Install/DigitalOcean","unlisted":false}]}],"contributeSidebar":[{"type":"link","label":"Code of conduct","href":"/docs/contribute/CODE_OF_CONDUCT","docId":"contribute/CODE_OF_CONDUCT","unlisted":false},{"type":"link","label":"Contributing to OpenSign","href":"/docs/contribute/intro","docId":"contribute/intro","unlisted":false},{"type":"link","label":"Community at OpenSign\u2122","href":"/docs/contribute/COMMUNITY","docId":"contribute/COMMUNITY","unlisted":false},{"type":"link","label":"INSTALLATON INSTRUCTIONS","href":"/docs/contribute/INSTALLATION","docId":"contribute/INSTALLATION","unlisted":false},{"type":"link","label":"REPORTING_GUIDELINES","href":"/docs/contribute/REPORTING_GUIDELINES","docId":"contribute/REPORTING_GUIDELINES","unlisted":false}],"apiSidebar":[{"type":"link","label":"Introduction","href":"/docs/API-docs/opensign-api-v-1","docId":"API-docs/opensign-api-v-1","unlisted":false},{"type":"category","label":"User","items":[{"type":"link","label":"Get your details","href":"/docs/API-docs/get-user","className":"api-method get","docId":"API-docs/get-user","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Contacts","items":[{"type":"link","label":"Create contact","href":"/docs/API-docs/createcontact","className":"api-method post","docId":"API-docs/createcontact","unlisted":false},{"type":"link","label":"Get contact","href":"/docs/API-docs/getcontact","className":"api-method get","docId":"API-docs/getcontact","unlisted":false},{"type":"link","label":"Delete contact","href":"/docs/API-docs/deletecontact","className":"api-method delete","docId":"API-docs/deletecontact","unlisted":false},{"type":"link","label":"Get contact list","href":"/docs/API-docs/contactlist","className":"api-method get","docId":"API-docs/contactlist","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Documents","items":[{"type":"link","label":"Create document","href":"/docs/API-docs/createdocument","className":"api-method post","docId":"API-docs/createdocument","unlisted":false},{"type":"link","label":"Get document by ID","href":"/docs/API-docs/getdocument","className":"api-method get","docId":"API-docs/getdocument","unlisted":false},{"type":"link","label":"Update document by ID","href":"/docs/API-docs/update-document","className":"api-method put","docId":"API-docs/update-document","unlisted":false},{"type":"link","label":"Delete document by ID","href":"/docs/API-docs/deletedocument","className":"api-method delete","docId":"API-docs/deletedocument","unlisted":false},{"type":"link","label":"Get document list by doctype","href":"/docs/API-docs/getdocumentlist","className":"api-method get","docId":"API-docs/getdocumentlist","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Templates","items":[{"type":"link","label":"Create template","href":"/docs/API-docs/createtemplate","className":"api-method post","docId":"API-docs/createtemplate","unlisted":false},{"type":"link","label":"Get template by ID","href":"/docs/API-docs/get-template","className":"api-method get","docId":"API-docs/get-template","unlisted":false},{"type":"link","label":"Update template by ID","href":"/docs/API-docs/update-template","className":"api-method put","docId":"API-docs/update-template","unlisted":false},{"type":"link","label":"Delete template by ID","href":"/docs/API-docs/delete-template","className":"api-method delete","docId":"API-docs/delete-template","unlisted":false},{"type":"link","label":"Get template list","href":"/docs/API-docs/gettemplatelist","className":"api-method get","docId":"API-docs/gettemplatelist","unlisted":false}],"collapsed":true,"collapsible":true}]},"docs":{"API-docs/contactlist":{"id":"API-docs/contactlist","title":"Get contact list","description":"The Contact List API empowers you to retrieve a list of contacts, providing a comprehensive view of all available contacts in your contactbook.","sidebar":"apiSidebar"},"API-docs/createcontact":{"id":"API-docs/createcontact","title":"Create contact","description":"The Create contact API allows you to effortlessly create new contacts that can act as signers for your important documents.","sidebar":"apiSidebar"},"API-docs/createdocument":{"id":"API-docs/createdocument","title":"Create document","description":"The Create Document API allows users to generate new documents by providing data through `multipart/form-data`. This flexible method allows for the inclusion of various data types, making it suitable for a wide range of document creation scenarios.","sidebar":"apiSidebar"},"API-docs/createtemplate":{"id":"API-docs/createtemplate","title":"Create template","description":"The Template Creation API allows users to create customizable templates, which serve as blueprints for generating documents with predefined structures. Upon successful template creation, the API returns a unique **templateId** that can be used to generate documents based on the specified template and **url** to edit template.","sidebar":"apiSidebar"},"API-docs/delete-template":{"id":"API-docs/delete-template","title":"Delete template by ID","description":"The Delete Template API provides you with the ability to remove a specific template from the templates. If a template is no longer needed","sidebar":"apiSidebar"},"API-docs/deletecontact":{"id":"API-docs/deletecontact","title":"Delete contact","description":"The Delete Contact API allows you to remove a contact from your contactbook. If you no longer need a particular contact\'s information, this API makes it easy to delete their record.","sidebar":"apiSidebar"},"API-docs/deletedocument":{"id":"API-docs/deletedocument","title":"Delete document by ID","description":"The Delete document API allows you to remove specific document from your documents.","sidebar":"apiSidebar"},"API-docs/get-template":{"id":"API-docs/get-template","title":"Get template by ID","description":"The Get Template API allows you to retrieve details about a specific template. Templates serve as blueprints for creating documents with predefined structures.","sidebar":"apiSidebar"},"API-docs/get-user":{"id":"API-docs/get-user","title":"Get your details","description":"The Get User API enables you to get your own details.","sidebar":"apiSidebar"},"API-docs/getcontact":{"id":"API-docs/getcontact","title":"Get contact","description":"The Get Contact API allows you to retrieve details about a specific contact.","sidebar":"apiSidebar"},"API-docs/getdocument":{"id":"API-docs/getdocument","title":"Get document by ID","description":"The Get Document API enables you to retrieve details about a specific document.","sidebar":"apiSidebar"},"API-docs/getdocumentlist":{"id":"API-docs/getdocumentlist","title":"Get document list by doctype","description":"### Document Types:","sidebar":"apiSidebar"},"API-docs/gettemplatelist":{"id":"API-docs/gettemplatelist","title":"Get template list","description":"The Get Template List API allows you to retrieve a list of available templates. This functionality provides an overview of all templates, enabling users to choose from existing templates when creating documents.","sidebar":"apiSidebar"},"API-docs/intro":{"id":"API-docs/intro","title":"Overview","description":"OpenSign\u2122 API offers a robust suite of functionalities for digital document management and electronic signatures. Designed to cater to a wide array of business needs, the API facilitates the creation, signing, and management of digital documents. It ensures secure and efficient processes, complying with international legal standards for electronic signatures."},"API-docs/opensign-api-v-1":{"id":"API-docs/opensign-api-v-1","title":"OpenSign API v1","description":"This is API documentation for OpenSign API v1 based on the OpenAPI 3.1 specification.","sidebar":"apiSidebar"},"API-docs/update-document":{"id":"API-docs/update-document","title":"Update document by ID","description":"The Update Document API allows users to modify and update the details of a specific document.","sidebar":"apiSidebar"},"API-docs/update-template":{"id":"API-docs/update-template","title":"Update template by ID","description":"The Update Template API enables you to modify and update the details of a specific template.","sidebar":"apiSidebar"},"contribute/CODE_OF_CONDUCT":{"id":"contribute/CODE_OF_CONDUCT","title":"Code of conduct","description":"1. Introduction","sidebar":"contributeSidebar"},"contribute/COMMUNITY":{"id":"contribute/COMMUNITY","title":"Community at OpenSign\u2122","description":"Welcome to the OpenSign\u2122 Community page! OpenSign\u2122 is dedicated to fostering a vibrant and engaging community where members can connect, share ideas and collaborate on the OpenSign\u2122 project. This page provides links to our active social media platforms and community channels, offering various ways for you to join and participate in the OpenSign\u2122 community. Whether you\'re looking for support, eager to contribute or just want to stay updated, you\'ll find a platform that suits your preference. Connect with us on Discord for real-time discussions, follow us on Twitter for the latest updates, engage with our professional network on LinkedIn or join our Facebook group for a broader community experience. Join us in our mission to develop OpenSign\u2122 as the premier open-source alternative to DocuSign.","sidebar":"contributeSidebar"},"contribute/INSTALLATION":{"id":"contribute/INSTALLATION","title":"INSTALLATON INSTRUCTIONS","description":"You can use our app as a cloud version from OpenSignLabs","sidebar":"contributeSidebar"},"contribute/intro":{"id":"contribute/intro","title":"Contributing to OpenSign","description":"Hello there! Thank you for considering contributing to OpenSign, the open-source alternative to DocuSign. OpenSign is not just a project, but a community endeavor that aims to create a robust, user-friendly, and secure electronic signature solution. Your contributions, irrespective of their size, are valuable in making this vision a reality.","sidebar":"contributeSidebar"},"contribute/REPORTING_GUIDELINES":{"id":"contribute/REPORTING_GUIDELINES","title":"REPORTING_GUIDELINES","description":"","sidebar":"contributeSidebar"},"help/intro":{"id":"help/intro","title":"Intro","description":"\ud83c\udf1fGet ready for an electrifying journey at OpenSign\u2122, the most incredibly documented open source document signing solution! \ud83d\ude80 This is your go-to spot for diving deep into everything OpenSign\u2122 has to offer. Whether you\u2019re just starting out or you\u2019re a seasoned pro eager to uncover even more cool features, we\u2019ve got you covered with the most awesome, top-notch guides and resources around. Get ready to make the most out of OpenSign\u2122 \ud83c\udf89\ud83d\udcda\ud83d\udd0d Your adventure in excellence starts here! \ud83c\udf08\u2728\ud83c\udf1f","sidebar":"tutorialSidebar"},"help/New-Document/request-signatures":{"id":"help/New-Document/request-signatures","title":"Request signatures","description":"Interface Overview","sidebar":"tutorialSidebar"},"help/New-Document/sign-yourself":{"id":"help/New-Document/sign-yourself","title":"Sign yourself","description":"This feature lets you sign documents that dont need to be sent to anybody.","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Tutorial Intro","description":"Let\'s discover Docusaurus in less than 5 minutes."},"self-host/docker/run-locally":{"id":"self-host/docker/run-locally","title":"run-locally","description":"Localhost Setup with Docker","sidebar":"selfhostSidebar"},"self-host/intro":{"id":"self-host/intro","title":"Self-Hosting OpenSign","description":"This section of the OpenSign\u2122 documentation is dedicated to guiding you through the process of self-hosting the OpenSign platform. Self-hosting OpenSign allows for greater control and customization, ensuring that it aligns perfectly with your specific needs and infrastructure requirements. We cover everything from initial setup, configuration options, to maintenance best practices. Whether you are an individual enthusiast or a professional looking to deploy OpenSign in a corporate environment, this guide will provide you with the necessary steps and tips to successfully self-host OpenSign\u2122 - the best open source document signing infrastructure.","sidebar":"selfhostSidebar"},"self-host/One-click-Install/DigitalOcean":{"id":"self-host/One-click-Install/DigitalOcean","title":"Digital Ocean","description":"OpenSign application consistes of 3 components -","sidebar":"selfhostSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.a52fd6ea.js b/assets/js/935f2afb.a52fd6ea.js new file mode 100644 index 000000000..2e1f33a73 --- /dev/null +++ b/assets/js/935f2afb.a52fd6ea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Intro","href":"/docs/help/intro","docId":"help/intro","unlisted":false},{"type":"category","label":"New-Document","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Sign yourself","href":"/docs/help/New-Document/sign-yourself","docId":"help/New-Document/sign-yourself","unlisted":false},{"type":"link","label":"Request signatures","href":"/docs/help/New-Document/request-signatures","docId":"help/New-Document/request-signatures","unlisted":false}]}],"selfhostSidebar":[{"type":"link","label":"Self-Hosting OpenSign","href":"/docs/self-host/intro","docId":"self-host/intro","unlisted":false},{"type":"category","label":"Docker","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Code of conduct","href":"/docs/self-host/docker/run-locally","docId":"self-host/docker/run-locally","unlisted":false}],"href":"/docs/category/docker"},{"type":"category","label":"One-click-Install","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Digital Ocean","href":"/docs/self-host/One-click-Install/DigitalOcean","docId":"self-host/One-click-Install/DigitalOcean","unlisted":false}]}],"contributeSidebar":[{"type":"link","label":"Code of conduct","href":"/docs/contribute/CODE_OF_CONDUCT","docId":"contribute/CODE_OF_CONDUCT","unlisted":false},{"type":"link","label":"Contributing to OpenSign","href":"/docs/contribute/intro","docId":"contribute/intro","unlisted":false},{"type":"link","label":"Community at OpenSign\u2122","href":"/docs/contribute/COMMUNITY","docId":"contribute/COMMUNITY","unlisted":false},{"type":"link","label":"INSTALLATON INSTRUCTIONS","href":"/docs/contribute/INSTALLATION","docId":"contribute/INSTALLATION","unlisted":false},{"type":"link","label":"REPORTING_GUIDELINES","href":"/docs/contribute/REPORTING_GUIDELINES","docId":"contribute/REPORTING_GUIDELINES","unlisted":false}],"apiSidebar":[{"type":"link","label":"Introduction","href":"/docs/API-docs/opensign-api-v-1","docId":"API-docs/opensign-api-v-1","unlisted":false},{"type":"category","label":"User","items":[{"type":"link","label":"Get your details","href":"/docs/API-docs/get-user","className":"api-method get","docId":"API-docs/get-user","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Contacts","items":[{"type":"link","label":"Create contact","href":"/docs/API-docs/createcontact","className":"api-method post","docId":"API-docs/createcontact","unlisted":false},{"type":"link","label":"Get contact","href":"/docs/API-docs/getcontact","className":"api-method get","docId":"API-docs/getcontact","unlisted":false},{"type":"link","label":"Delete contact","href":"/docs/API-docs/deletecontact","className":"api-method delete","docId":"API-docs/deletecontact","unlisted":false},{"type":"link","label":"Get contact list","href":"/docs/API-docs/contactlist","className":"api-method get","docId":"API-docs/contactlist","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Documents","items":[{"type":"link","label":"Create document","href":"/docs/API-docs/createdocument","className":"api-method post","docId":"API-docs/createdocument","unlisted":false},{"type":"link","label":"Get document by ID","href":"/docs/API-docs/getdocument","className":"api-method get","docId":"API-docs/getdocument","unlisted":false},{"type":"link","label":"Update document by ID","href":"/docs/API-docs/update-document","className":"api-method put","docId":"API-docs/update-document","unlisted":false},{"type":"link","label":"Delete document by ID","href":"/docs/API-docs/deletedocument","className":"api-method delete","docId":"API-docs/deletedocument","unlisted":false},{"type":"link","label":"Get document list by doctype","href":"/docs/API-docs/getdocumentlist","className":"api-method get","docId":"API-docs/getdocumentlist","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Templates","items":[{"type":"link","label":"Create template","href":"/docs/API-docs/createtemplate","className":"api-method post","docId":"API-docs/createtemplate","unlisted":false},{"type":"link","label":"Get template by ID","href":"/docs/API-docs/get-template","className":"api-method get","docId":"API-docs/get-template","unlisted":false},{"type":"link","label":"Update template by ID","href":"/docs/API-docs/update-template","className":"api-method put","docId":"API-docs/update-template","unlisted":false},{"type":"link","label":"Delete template by ID","href":"/docs/API-docs/delete-template","className":"api-method delete","docId":"API-docs/delete-template","unlisted":false},{"type":"link","label":"Get template list","href":"/docs/API-docs/gettemplatelist","className":"api-method get","docId":"API-docs/gettemplatelist","unlisted":false}],"collapsed":true,"collapsible":true}]},"docs":{"API-docs/contactlist":{"id":"API-docs/contactlist","title":"Get contact list","description":"The Contact List API empowers you to retrieve a list of contacts, providing a comprehensive view of all available contacts in your contactbook.","sidebar":"apiSidebar"},"API-docs/createcontact":{"id":"API-docs/createcontact","title":"Create contact","description":"The Create contact API allows you to effortlessly create new contacts that can act as signers for your important documents.","sidebar":"apiSidebar"},"API-docs/createdocument":{"id":"API-docs/createdocument","title":"Create document","description":"The Create Document API allows users to generate new documents by providing data through `multipart/form-data`. This flexible method allows for the inclusion of various data types, making it suitable for a wide range of document creation scenarios.","sidebar":"apiSidebar"},"API-docs/createtemplate":{"id":"API-docs/createtemplate","title":"Create template","description":"The Template Creation API allows users to create customizable templates, which serve as blueprints for generating documents with predefined structures. Upon successful template creation, the API returns a unique **templateId** that can be used to generate documents based on the specified template and **url** to edit template.","sidebar":"apiSidebar"},"API-docs/delete-template":{"id":"API-docs/delete-template","title":"Delete template by ID","description":"The Delete Template API provides you with the ability to remove a specific template from the templates. If a template is no longer needed","sidebar":"apiSidebar"},"API-docs/deletecontact":{"id":"API-docs/deletecontact","title":"Delete contact","description":"The Delete Contact API allows you to remove a contact from your contactbook. If you no longer need a particular contact\'s information, this API makes it easy to delete their record.","sidebar":"apiSidebar"},"API-docs/deletedocument":{"id":"API-docs/deletedocument","title":"Delete document by ID","description":"The Delete document API allows you to remove specific document from your documents.","sidebar":"apiSidebar"},"API-docs/get-template":{"id":"API-docs/get-template","title":"Get template by ID","description":"The Get Template API allows you to retrieve details about a specific template. Templates serve as blueprints for creating documents with predefined structures.","sidebar":"apiSidebar"},"API-docs/get-user":{"id":"API-docs/get-user","title":"Get your details","description":"The Get User API enables you to get your own details.","sidebar":"apiSidebar"},"API-docs/getcontact":{"id":"API-docs/getcontact","title":"Get contact","description":"The Get Contact API allows you to retrieve details about a specific contact.","sidebar":"apiSidebar"},"API-docs/getdocument":{"id":"API-docs/getdocument","title":"Get document by ID","description":"The Get Document API enables you to retrieve details about a specific document.","sidebar":"apiSidebar"},"API-docs/getdocumentlist":{"id":"API-docs/getdocumentlist","title":"Get document list by doctype","description":"### Document Types:","sidebar":"apiSidebar"},"API-docs/gettemplatelist":{"id":"API-docs/gettemplatelist","title":"Get template list","description":"The Get Template List API allows you to retrieve a list of available templates. This functionality provides an overview of all templates, enabling users to choose from existing templates when creating documents.","sidebar":"apiSidebar"},"API-docs/intro":{"id":"API-docs/intro","title":"Overview","description":"OpenSign\u2122 API offers a robust suite of functionalities for digital document management and electronic signatures. Designed to cater to a wide array of business needs, the API facilitates the creation, signing, and management of digital documents. It ensures secure and efficient processes, complying with international legal standards for electronic signatures."},"API-docs/opensign-api-v-1":{"id":"API-docs/opensign-api-v-1","title":"OpenSign API v1","description":"This is API documentation for OpenSign API v1 based on the OpenAPI 3.1 specification.","sidebar":"apiSidebar"},"API-docs/update-document":{"id":"API-docs/update-document","title":"Update document by ID","description":"The Update Document API allows users to modify and update the details of a specific document.","sidebar":"apiSidebar"},"API-docs/update-template":{"id":"API-docs/update-template","title":"Update template by ID","description":"The Update Template API enables you to modify and update the details of a specific template.","sidebar":"apiSidebar"},"contribute/CODE_OF_CONDUCT":{"id":"contribute/CODE_OF_CONDUCT","title":"Code of conduct","description":"1. Introduction","sidebar":"contributeSidebar"},"contribute/COMMUNITY":{"id":"contribute/COMMUNITY","title":"Community at OpenSign\u2122","description":"Welcome to the OpenSign\u2122 Community page! OpenSign\u2122 is dedicated to fostering a vibrant and engaging community where members can connect, share ideas and collaborate on the OpenSign\u2122 project. This page provides links to our active social media platforms and community channels, offering various ways for you to join and participate in the OpenSign\u2122 community. Whether you\'re looking for support, eager to contribute or just want to stay updated, you\'ll find a platform that suits your preference. Connect with us on Discord for real-time discussions, follow us on Twitter for the latest updates, engage with our professional network on LinkedIn or join our Facebook group for a broader community experience. Join us in our mission to develop OpenSign\u2122 as the premier open-source alternative to DocuSign.","sidebar":"contributeSidebar"},"contribute/INSTALLATION":{"id":"contribute/INSTALLATION","title":"INSTALLATON INSTRUCTIONS","description":"You can use our app as a cloud version from OpenSignLabs","sidebar":"contributeSidebar"},"contribute/intro":{"id":"contribute/intro","title":"Contributing to OpenSign","description":"Hello there! Thank you for considering contributing to OpenSign, the open-source alternative to DocuSign. OpenSign is not just a project, but a community endeavor that aims to create a robust, user-friendly, and secure electronic signature solution. Your contributions, irrespective of their size, are valuable in making this vision a reality.","sidebar":"contributeSidebar"},"contribute/REPORTING_GUIDELINES":{"id":"contribute/REPORTING_GUIDELINES","title":"REPORTING_GUIDELINES","description":"","sidebar":"contributeSidebar"},"help/intro":{"id":"help/intro","title":"Intro","description":"\ud83c\udf1fGet ready for an electrifying journey at OpenSign\u2122, the most incredibly documented open source document signing solution! \ud83d\ude80 This is your go-to spot for diving deep into everything OpenSign\u2122 has to offer. Whether you\u2019re just starting out or you\u2019re a seasoned pro eager to uncover even more cool features, we\u2019ve got you covered with the most awesome, top-notch guides and resources around. Get ready to make the most out of OpenSign\u2122 \ud83c\udf89\ud83d\udcda\ud83d\udd0d Your adventure in excellence starts here! \ud83c\udf08\u2728\ud83c\udf1f","sidebar":"tutorialSidebar"},"help/New-Document/request-signatures":{"id":"help/New-Document/request-signatures","title":"Request signatures","description":"Interface Overview","sidebar":"tutorialSidebar"},"help/New-Document/sign-yourself":{"id":"help/New-Document/sign-yourself","title":"Sign yourself","description":"This feature lets you sign documents that dont need to be sent to anybody.","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Tutorial Intro","description":"Let\'s discover Docusaurus in less than 5 minutes."},"self-host/docker/run-locally":{"id":"self-host/docker/run-locally","title":"Code of conduct","description":"Localhost Setup with Docker","sidebar":"selfhostSidebar"},"self-host/intro":{"id":"self-host/intro","title":"Self-Hosting OpenSign","description":"This section of the OpenSign\u2122 documentation is dedicated to guiding you through the process of self-hosting the OpenSign platform. Self-hosting OpenSign allows for greater control and customization, ensuring that it aligns perfectly with your specific needs and infrastructure requirements. We cover everything from initial setup, configuration options, to maintenance best practices. Whether you are an individual enthusiast or a professional looking to deploy OpenSign in a corporate environment, this guide will provide you with the necessary steps and tips to successfully self-host OpenSign\u2122 - the best open source document signing infrastructure.","sidebar":"selfhostSidebar"},"self-host/One-click-Install/DigitalOcean":{"id":"self-host/One-click-Install/DigitalOcean","title":"Digital Ocean","description":"OpenSign application consistes of 3 components -","sidebar":"selfhostSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/ce589067.173cdae1.js b/assets/js/ce589067.173cdae1.js deleted file mode 100644 index 3afd21e39..000000000 --- a/assets/js/ce589067.173cdae1.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[5377],{41264:(n,e,t)=>{t.r(e),t.d(e,{assets:()=>a,contentTitle:()=>c,default:()=>p,frontMatter:()=>i,metadata:()=>l,toc:()=>r});var s=t(85893),o=t(11151);const i={},c="Digital Ocean",l={id:"self-host/One-click-Install/DigitalOcean",title:"Digital Ocean",description:"OpenSign application consistes of 3 components -",source:"@site/docs/self-host/One-click-Install/DigitalOcean.md",sourceDirName:"self-host/One-click-Install",slug:"/self-host/One-click-Install/DigitalOcean",permalink:"/docs/self-host/One-click-Install/DigitalOcean",draft:!1,unlisted:!1,editUrl:"https://github.com/opensignlabs/opensign/tree/feat-docs/docs/docs/self-host/One-click-Install/DigitalOcean.md",tags:[],version:"current",frontMatter:{},sidebar:"selfhostSidebar",previous:{title:"run-locally",permalink:"/docs/self-host/docker/run-locally"}},a={},r=[];function d(n){const e={a:"a",h1:"h1",img:"img",li:"li",p:"p",ul:"ul",...(0,o.a)(),...n.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(e.h1,{id:"digital-ocean",children:"Digital Ocean"}),"\n",(0,s.jsx)(e.p,{children:"OpenSign application consistes of 3 components -"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsx)(e.li,{children:"ReactJS frontend"}),"\n",(0,s.jsx)(e.li,{children:"NodeJS API"}),"\n",(0,s.jsx)(e.li,{children:"MongoDB database"}),"\n"]}),"\n",(0,s.jsx)(e.p,{children:"You can install all 3 components on digital ocean using the button below -"}),"\n",(0,s.jsx)(e.p,{children:(0,s.jsx)(e.a,{href:"https://cloud.digitalocean.com/apps/new?repo=https://github.com/OpenSignLabs/Deploy-OpenSign-to-Digital-Ocean/tree/main&refcode=30db1c901ab0",children:(0,s.jsx)(e.img,{src:"https://www.deploytodo.com/do-btn-blue.svg",alt:"Deploy on DigitalOcean"})})})]})}function p(n={}){const{wrapper:e}={...(0,o.a)(),...n.components};return e?(0,s.jsx)(e,{...n,children:(0,s.jsx)(d,{...n})}):d(n)}},11151:(n,e,t)=>{t.d(e,{Z:()=>l,a:()=>c});var s=t(67294);const o={},i=s.createContext(o);function c(n){const e=s.useContext(i);return s.useMemo((function(){return"function"==typeof n?n(e):{...e,...n}}),[e,n])}function l(n){let e;return e=n.disableParentContext?"function"==typeof n.components?n.components(o):n.components||o:c(n.components),s.createElement(i.Provider,{value:e},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/ce589067.9ac590f3.js b/assets/js/ce589067.9ac590f3.js new file mode 100644 index 000000000..fd0b240da --- /dev/null +++ b/assets/js/ce589067.9ac590f3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[5377],{41264:(n,e,t)=>{t.r(e),t.d(e,{assets:()=>a,contentTitle:()=>c,default:()=>p,frontMatter:()=>i,metadata:()=>l,toc:()=>r});var o=t(85893),s=t(11151);const i={},c="Digital Ocean",l={id:"self-host/One-click-Install/DigitalOcean",title:"Digital Ocean",description:"OpenSign application consistes of 3 components -",source:"@site/docs/self-host/One-click-Install/DigitalOcean.md",sourceDirName:"self-host/One-click-Install",slug:"/self-host/One-click-Install/DigitalOcean",permalink:"/docs/self-host/One-click-Install/DigitalOcean",draft:!1,unlisted:!1,editUrl:"https://github.com/opensignlabs/opensign/tree/feat-docs/docs/docs/self-host/One-click-Install/DigitalOcean.md",tags:[],version:"current",frontMatter:{},sidebar:"selfhostSidebar",previous:{title:"Code of conduct",permalink:"/docs/self-host/docker/run-locally"}},a={},r=[];function d(n){const e={a:"a",h1:"h1",img:"img",li:"li",p:"p",ul:"ul",...(0,s.a)(),...n.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.h1,{id:"digital-ocean",children:"Digital Ocean"}),"\n",(0,o.jsx)(e.p,{children:"OpenSign application consistes of 3 components -"}),"\n",(0,o.jsxs)(e.ul,{children:["\n",(0,o.jsx)(e.li,{children:"ReactJS frontend"}),"\n",(0,o.jsx)(e.li,{children:"NodeJS API"}),"\n",(0,o.jsx)(e.li,{children:"MongoDB database"}),"\n"]}),"\n",(0,o.jsx)(e.p,{children:"You can install all 3 components on digital ocean using the button below -"}),"\n",(0,o.jsx)(e.p,{children:(0,o.jsx)(e.a,{href:"https://cloud.digitalocean.com/apps/new?repo=https://github.com/OpenSignLabs/Deploy-OpenSign-to-Digital-Ocean/tree/main&refcode=30db1c901ab0",children:(0,o.jsx)(e.img,{src:"https://www.deploytodo.com/do-btn-blue.svg",alt:"Deploy on DigitalOcean"})})})]})}function p(n={}){const{wrapper:e}={...(0,s.a)(),...n.components};return e?(0,o.jsx)(e,{...n,children:(0,o.jsx)(d,{...n})}):d(n)}},11151:(n,e,t)=>{t.d(e,{Z:()=>l,a:()=>c});var o=t(67294);const s={},i=o.createContext(s);function c(n){const e=o.useContext(i);return o.useMemo((function(){return"function"==typeof n?n(e):{...e,...n}}),[e,n])}function l(n){let e;return e=n.disableParentContext?"function"==typeof n.components?n.components(s):n.components||s:c(n.components),o.createElement(i.Provider,{value:e},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/e2c87691.a5fb2b46.js b/assets/js/e2c87691.a49f9ee8.js similarity index 65% rename from assets/js/e2c87691.a5fb2b46.js rename to assets/js/e2c87691.a49f9ee8.js index cc3bfffb5..fde612c5d 100644 --- a/assets/js/e2c87691.a5fb2b46.js +++ b/assets/js/e2c87691.a49f9ee8.js @@ -1 +1 @@ -"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[420],{89898:e=>{e.exports=JSON.parse('{"title":"Docker","slug":"/category/docker","permalink":"/docs/category/docker","navigation":{"previous":{"title":"Self-Hosting OpenSign","permalink":"/docs/self-host/intro"},"next":{"title":"run-locally","permalink":"/docs/self-host/docker/run-locally"}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[420],{89898:e=>{e.exports=JSON.parse('{"title":"Docker","slug":"/category/docker","permalink":"/docs/category/docker","navigation":{"previous":{"title":"Self-Hosting OpenSign","permalink":"/docs/self-host/intro"},"next":{"title":"Code of conduct","permalink":"/docs/self-host/docker/run-locally"}}}')}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.f4899522.js b/assets/js/runtime~main.8e3d023b.js similarity index 61% rename from assets/js/runtime~main.f4899522.js rename to assets/js/runtime~main.8e3d023b.js index e4d9473bb..810794ca2 100644 --- a/assets/js/runtime~main.f4899522.js +++ b/assets/js/runtime~main.8e3d023b.js @@ -1 +1 @@ -(()=>{"use strict";var e,a,c,d,f,t={},b={};function r(e){var a=b[e];if(void 0!==a)return a.exports;var c=b[e]={id:e,loaded:!1,exports:{}};return t[e].call(c.exports,c,c.exports,r),c.loaded=!0,c.exports}r.m=t,r.c=b,e=[],r.O=(a,c,d,f)=>{if(!c){var t=1/0;for(i=0;i=f)&&Object.keys(r.O).every((e=>r.O[e](c[o])))?c.splice(o--,1):(b=!1,f0&&e[i-1][2]>f;i--)e[i]=e[i-1];e[i]=[c,d,f]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var f=Object.create(null);r.r(f);var t={};a=a||[null,c({}),c([]),c(c)];for(var b=2&d&&e;"object"==typeof b&&!~a.indexOf(b);b=c(b))Object.getOwnPropertyNames(b).forEach((a=>t[a]=()=>e[a]));return t.default=()=>e,r.d(f,t),f},r.d=(e,a)=>{for(var c in a)r.o(a,c)&&!r.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,c)=>(r.f[c](e,a),a)),[])),r.u=e=>"assets/js/"+({53:"935f2afb",110:"66406991",230:"d91ad230",273:"fa40969b",420:"e2c87691",453:"30a24c52",533:"b2b675dd",841:"c5e4dae0",853:"277a78f5",948:"8717b14a",1332:"f0ff4a36",1477:"b2f554cd",1520:"770b40a9",1531:"bbdfc22d",1633:"031793e1",1713:"a7023ddc",1773:"ef5d5d5d",1893:"4c5e977b",1914:"d9f32620",2087:"bfe4b778",2245:"a2bc1463",2267:"59362658",2362:"e273c56f",2535:"814f3328",2832:"1f73ca32",3085:"1f391b9e",3089:"a6aa9e1f",3101:"64ee8796",3205:"a80da1cf",3514:"73664a40",3608:"9e4087bc",4013:"01a85c17",4195:"c4f5d8e4",4368:"a94703ab",4478:"d1393a72",4651:"05632a52",4955:"e226bb09",5377:"ce589067",5507:"8320e026",5900:"38e3d9c8",6103:"ccc49370",6177:"611db08b",6543:"17e5210b",6759:"c9fa5aa5",6938:"608ae6a4",7100:"2c416566",7178:"096bfee4",7414:"393be207",7894:"a88a3db3",7971:"8a725248",8106:"377084eb",8163:"5a2de241",8468:"52d5c0f9",8489:"7b076186",8518:"a7bd4aaa",8610:"6875c492",8636:"f4f34a3a",8781:"489b8a4d",8892:"38ec836e",9003:"925b3f96",9035:"4c9e35b1",9642:"7661071f",9661:"5e95c892",9671:"0e384e19",9697:"2c586be5",9700:"e16015ca",9817:"14eb3368"}[e]||e)+"."+{53:"00024b62",110:"ab20026d",230:"a0474773",273:"adc233e1",420:"a5fb2b46",453:"61f3e45f",533:"2d5f5b1d",841:"b9d70538",853:"f101c6c0",948:"b2da1fd1",1332:"ef830ef8",1477:"b31b2642",1520:"e45522a5",1531:"6d9179c1",1633:"d8366831",1713:"fefd4794",1772:"c222a62c",1773:"d5cdc9ed",1893:"59606182",1914:"eb382def",2087:"505e4272",2245:"b1ad234a",2267:"a4846e2b",2362:"ebdb1814",2529:"2079a565",2535:"f3b6b0ab",2832:"760fabc2",3085:"e5c5d651",3089:"84b5c675",3101:"47959e32",3205:"af75d475",3514:"b2437ac4",3608:"0e768bf1",4013:"e5e25f55",4195:"1659087e",4311:"86f3bfc6",4368:"7d12b1da",4478:"cf430417",4651:"a139a053",4682:"18721add",4955:"7e795572",5377:"173cdae1",5507:"36c41078",5900:"a995c609",6103:"ebc8482f",6177:"b0d3e9d2",6543:"3b507760",6759:"c81d0e01",6938:"d44251bf",7100:"c3706b41",7178:"9a58922d",7414:"8d31e6a7",7894:"18fa1b31",7971:"350b9d87",8106:"951fd941",8140:"901b2f91",8163:"017914b9",8468:"13bbb31c",8475:"d27b3009",8489:"496e8402",8518:"aaa08e5a",8531:"1f1a82a7",8610:"d85035d6",8636:"c590d949",8781:"f18e95fb",8892:"7315f43d",9003:"1e8e0783",9035:"37598b09",9642:"223fec4f",9661:"33228fcd",9671:"8f2ee486",9697:"4d88da29",9700:"ad032cc8",9817:"424c677a"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},f="OpenSign-Docs:",r.l=(e,a,c,t)=>{if(d[e])d[e].push(a);else{var b,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i{b.onerror=b.onload=null,clearTimeout(s);var f=d[e];if(delete d[e],b.parentNode&&b.parentNode.removeChild(b),f&&f.forEach((e=>e(c))),a)return a(c)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:b}),12e4);b.onerror=u.bind(null,b.onerror),b.onload=u.bind(null,b.onload),o&&document.head.appendChild(b)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="/",r.gca=function(e){return e={59362658:"2267",66406991:"110","935f2afb":"53",d91ad230:"230",fa40969b:"273",e2c87691:"420","30a24c52":"453",b2b675dd:"533",c5e4dae0:"841","277a78f5":"853","8717b14a":"948",f0ff4a36:"1332",b2f554cd:"1477","770b40a9":"1520",bbdfc22d:"1531","031793e1":"1633",a7023ddc:"1713",ef5d5d5d:"1773","4c5e977b":"1893",d9f32620:"1914",bfe4b778:"2087",a2bc1463:"2245",e273c56f:"2362","814f3328":"2535","1f73ca32":"2832","1f391b9e":"3085",a6aa9e1f:"3089","64ee8796":"3101",a80da1cf:"3205","73664a40":"3514","9e4087bc":"3608","01a85c17":"4013",c4f5d8e4:"4195",a94703ab:"4368",d1393a72:"4478","05632a52":"4651",e226bb09:"4955",ce589067:"5377","8320e026":"5507","38e3d9c8":"5900",ccc49370:"6103","611db08b":"6177","17e5210b":"6543",c9fa5aa5:"6759","608ae6a4":"6938","2c416566":"7100","096bfee4":"7178","393be207":"7414",a88a3db3:"7894","8a725248":"7971","377084eb":"8106","5a2de241":"8163","52d5c0f9":"8468","7b076186":"8489",a7bd4aaa:"8518","6875c492":"8610",f4f34a3a:"8636","489b8a4d":"8781","38ec836e":"8892","925b3f96":"9003","4c9e35b1":"9035","7661071f":"9642","5e95c892":"9661","0e384e19":"9671","2c586be5":"9697",e16015ca:"9700","14eb3368":"9817"}[e]||e,r.p+r.u(e)},(()=>{var e={1303:0,532:0};r.f.j=(a,c)=>{var d=r.o(e,a)?e[a]:void 0;if(0!==d)if(d)c.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var f=new Promise(((c,f)=>d=e[a]=[c,f]));c.push(d[2]=f);var t=r.p+r.u(a),b=new Error;r.l(t,(c=>{if(r.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var f=c&&("load"===c.type?"missing":c.type),t=c&&c.target&&c.target.src;b.message="Loading chunk "+a+" failed.\n("+f+": "+t+")",b.name="ChunkLoadError",b.type=f,b.request=t,d[1](b)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,c)=>{var d,f,t=c[0],b=c[1],o=c[2],n=0;if(t.some((a=>0!==e[a]))){for(d in b)r.o(b,d)&&(r.m[d]=b[d]);if(o)var i=o(r)}for(a&&a(c);n{"use strict";var e,a,c,d,t,b={},f={};function r(e){var a=f[e];if(void 0!==a)return a.exports;var c=f[e]={id:e,loaded:!1,exports:{}};return b[e].call(c.exports,c,c.exports,r),c.loaded=!0,c.exports}r.m=b,r.c=f,e=[],r.O=(a,c,d,t)=>{if(!c){var b=1/0;for(i=0;i=t)&&Object.keys(r.O).every((e=>r.O[e](c[o])))?c.splice(o--,1):(f=!1,t0&&e[i-1][2]>t;i--)e[i]=e[i-1];e[i]=[c,d,t]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var t=Object.create(null);r.r(t);var b={};a=a||[null,c({}),c([]),c(c)];for(var f=2&d&&e;"object"==typeof f&&!~a.indexOf(f);f=c(f))Object.getOwnPropertyNames(f).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,r.d(t,b),t},r.d=(e,a)=>{for(var c in a)r.o(a,c)&&!r.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,c)=>(r.f[c](e,a),a)),[])),r.u=e=>"assets/js/"+({53:"935f2afb",110:"66406991",230:"d91ad230",273:"fa40969b",420:"e2c87691",453:"30a24c52",533:"b2b675dd",841:"c5e4dae0",853:"277a78f5",948:"8717b14a",1332:"f0ff4a36",1477:"b2f554cd",1520:"770b40a9",1531:"bbdfc22d",1633:"031793e1",1713:"a7023ddc",1773:"ef5d5d5d",1893:"4c5e977b",1914:"d9f32620",2087:"bfe4b778",2245:"a2bc1463",2267:"59362658",2362:"e273c56f",2535:"814f3328",2832:"1f73ca32",3085:"1f391b9e",3089:"a6aa9e1f",3101:"64ee8796",3205:"a80da1cf",3514:"73664a40",3608:"9e4087bc",4013:"01a85c17",4195:"c4f5d8e4",4368:"a94703ab",4478:"d1393a72",4651:"05632a52",4955:"e226bb09",5377:"ce589067",5507:"8320e026",5900:"38e3d9c8",6103:"ccc49370",6177:"611db08b",6543:"17e5210b",6759:"c9fa5aa5",6938:"608ae6a4",7100:"2c416566",7178:"096bfee4",7414:"393be207",7894:"a88a3db3",7971:"8a725248",8106:"377084eb",8163:"5a2de241",8468:"52d5c0f9",8489:"7b076186",8518:"a7bd4aaa",8610:"6875c492",8636:"f4f34a3a",8781:"489b8a4d",8892:"38ec836e",9003:"925b3f96",9035:"4c9e35b1",9642:"7661071f",9661:"5e95c892",9671:"0e384e19",9697:"2c586be5",9700:"e16015ca",9817:"14eb3368"}[e]||e)+"."+{53:"a52fd6ea",110:"ab20026d",230:"a0474773",273:"adc233e1",420:"a49f9ee8",453:"61f3e45f",533:"2d5f5b1d",841:"b9d70538",853:"f101c6c0",948:"b2da1fd1",1332:"ef830ef8",1477:"b31b2642",1520:"e45522a5",1531:"6d9179c1",1633:"d8366831",1713:"fefd4794",1772:"c222a62c",1773:"d5cdc9ed",1893:"59606182",1914:"eb382def",2087:"505e4272",2245:"b1ad234a",2267:"a4846e2b",2362:"ebdb1814",2529:"2079a565",2535:"f3b6b0ab",2832:"760fabc2",3085:"e5c5d651",3089:"84b5c675",3101:"47959e32",3205:"af75d475",3514:"b2437ac4",3608:"0e768bf1",4013:"e5e25f55",4195:"1659087e",4311:"86f3bfc6",4368:"7d12b1da",4478:"cf430417",4651:"a139a053",4682:"18721add",4955:"7e795572",5377:"9ac590f3",5507:"36c41078",5900:"a995c609",6103:"ebc8482f",6177:"b0d3e9d2",6543:"3b507760",6759:"c81d0e01",6938:"d44251bf",7100:"c3706b41",7178:"9a58922d",7414:"8d31e6a7",7894:"18fa1b31",7971:"350b9d87",8106:"951fd941",8140:"901b2f91",8163:"017914b9",8468:"13bbb31c",8475:"d27b3009",8489:"496e8402",8518:"aaa08e5a",8531:"1f1a82a7",8610:"d85035d6",8636:"c590d949",8781:"11f409bc",8892:"7315f43d",9003:"1e8e0783",9035:"37598b09",9642:"223fec4f",9661:"33228fcd",9671:"8f2ee486",9697:"4d88da29",9700:"ad032cc8",9817:"424c677a"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},t="OpenSign-Docs:",r.l=(e,a,c,b)=>{if(d[e])d[e].push(a);else{var f,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i{f.onerror=f.onload=null,clearTimeout(s);var t=d[e];if(delete d[e],f.parentNode&&f.parentNode.removeChild(f),t&&t.forEach((e=>e(c))),a)return a(c)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=u.bind(null,f.onerror),f.onload=u.bind(null,f.onload),o&&document.head.appendChild(f)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="/",r.gca=function(e){return e={59362658:"2267",66406991:"110","935f2afb":"53",d91ad230:"230",fa40969b:"273",e2c87691:"420","30a24c52":"453",b2b675dd:"533",c5e4dae0:"841","277a78f5":"853","8717b14a":"948",f0ff4a36:"1332",b2f554cd:"1477","770b40a9":"1520",bbdfc22d:"1531","031793e1":"1633",a7023ddc:"1713",ef5d5d5d:"1773","4c5e977b":"1893",d9f32620:"1914",bfe4b778:"2087",a2bc1463:"2245",e273c56f:"2362","814f3328":"2535","1f73ca32":"2832","1f391b9e":"3085",a6aa9e1f:"3089","64ee8796":"3101",a80da1cf:"3205","73664a40":"3514","9e4087bc":"3608","01a85c17":"4013",c4f5d8e4:"4195",a94703ab:"4368",d1393a72:"4478","05632a52":"4651",e226bb09:"4955",ce589067:"5377","8320e026":"5507","38e3d9c8":"5900",ccc49370:"6103","611db08b":"6177","17e5210b":"6543",c9fa5aa5:"6759","608ae6a4":"6938","2c416566":"7100","096bfee4":"7178","393be207":"7414",a88a3db3:"7894","8a725248":"7971","377084eb":"8106","5a2de241":"8163","52d5c0f9":"8468","7b076186":"8489",a7bd4aaa:"8518","6875c492":"8610",f4f34a3a:"8636","489b8a4d":"8781","38ec836e":"8892","925b3f96":"9003","4c9e35b1":"9035","7661071f":"9642","5e95c892":"9661","0e384e19":"9671","2c586be5":"9697",e16015ca:"9700","14eb3368":"9817"}[e]||e,r.p+r.u(e)},(()=>{var e={1303:0,532:0};r.f.j=(a,c)=>{var d=r.o(e,a)?e[a]:void 0;if(0!==d)if(d)c.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var t=new Promise(((c,t)=>d=e[a]=[c,t]));c.push(d[2]=t);var b=r.p+r.u(a),f=new Error;r.l(b,(c=>{if(r.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var t=c&&("load"===c.type?"missing":c.type),b=c&&c.target&&c.target.src;f.message="Loading chunk "+a+" failed.\n("+t+": "+b+")",f.name="ChunkLoadError",f.type=t,f.request=b,d[1](f)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,c)=>{var d,t,b=c[0],f=c[1],o=c[2],n=0;if(b.some((a=>0!==e[a]))){for(d in f)r.o(f,d)&&(r.m[d]=f[d]);if(o)var i=o(r)}for(a&&a(c);n Archive | OpenSign™ - + diff --git a/blog/first-blog-post/index.html b/blog/first-blog-post/index.html index a892191cc..a6f4678b8 100644 --- a/blog/first-blog-post/index.html +++ b/blog/first-blog-post/index.html @@ -5,7 +5,7 @@ First Blog Post | OpenSign™ - + diff --git a/blog/index.html b/blog/index.html index 9b479f274..99b3bfc4a 100644 --- a/blog/index.html +++ b/blog/index.html @@ -5,7 +5,7 @@ Blog | OpenSign™ - + diff --git a/blog/long-blog-post/index.html b/blog/long-blog-post/index.html index 4267f11da..d6f316c11 100644 --- a/blog/long-blog-post/index.html +++ b/blog/long-blog-post/index.html @@ -5,7 +5,7 @@ Long Blog Post | OpenSign™ - + diff --git a/blog/mdx-blog-post/index.html b/blog/mdx-blog-post/index.html index 51291aa26..e4fb922ea 100644 --- a/blog/mdx-blog-post/index.html +++ b/blog/mdx-blog-post/index.html @@ -5,7 +5,7 @@ MDX Blog Post | OpenSign™ - + diff --git a/blog/tags/docusaurus/index.html b/blog/tags/docusaurus/index.html index cceb643a2..700a2c86a 100644 --- a/blog/tags/docusaurus/index.html +++ b/blog/tags/docusaurus/index.html @@ -5,7 +5,7 @@ 4 posts tagged with "docusaurus" | OpenSign™ - + diff --git a/blog/tags/facebook/index.html b/blog/tags/facebook/index.html index 81a9637ae..0335b6e0c 100644 --- a/blog/tags/facebook/index.html +++ b/blog/tags/facebook/index.html @@ -5,7 +5,7 @@ One post tagged with "facebook" | OpenSign™ - + diff --git a/blog/tags/hello/index.html b/blog/tags/hello/index.html index 9fd34d86e..b8d5d9f95 100644 --- a/blog/tags/hello/index.html +++ b/blog/tags/hello/index.html @@ -5,7 +5,7 @@ 2 posts tagged with "hello" | OpenSign™ - + diff --git a/blog/tags/hola/index.html b/blog/tags/hola/index.html index b6bb8f72c..dc55debaf 100644 --- a/blog/tags/hola/index.html +++ b/blog/tags/hola/index.html @@ -5,7 +5,7 @@ One post tagged with "hola" | OpenSign™ - + diff --git a/blog/tags/index.html b/blog/tags/index.html index cdc4f3048..e0ecee5b6 100644 --- a/blog/tags/index.html +++ b/blog/tags/index.html @@ -5,7 +5,7 @@ Tags | OpenSign™ - + diff --git a/blog/welcome/index.html b/blog/welcome/index.html index 2d6887355..20c1cd5c2 100644 --- a/blog/welcome/index.html +++ b/blog/welcome/index.html @@ -5,7 +5,7 @@ Welcome | OpenSign™ - + diff --git a/docs/API-docs/contactlist/index.html b/docs/API-docs/contactlist/index.html index e3ab8a7fb..a413cecc0 100644 --- a/docs/API-docs/contactlist/index.html +++ b/docs/API-docs/contactlist/index.html @@ -5,7 +5,7 @@ Get contact list | OpenSign™ - + diff --git a/docs/API-docs/createcontact/index.html b/docs/API-docs/createcontact/index.html index 221731778..88318aa55 100644 --- a/docs/API-docs/createcontact/index.html +++ b/docs/API-docs/createcontact/index.html @@ -5,7 +5,7 @@ Create contact | OpenSign™ - + diff --git a/docs/API-docs/createdocument/index.html b/docs/API-docs/createdocument/index.html index 99a9cfaa8..0bc8c9629 100644 --- a/docs/API-docs/createdocument/index.html +++ b/docs/API-docs/createdocument/index.html @@ -5,7 +5,7 @@ Create document | OpenSign™ - + diff --git a/docs/API-docs/createtemplate/index.html b/docs/API-docs/createtemplate/index.html index e81b4dfd6..67e327fef 100644 --- a/docs/API-docs/createtemplate/index.html +++ b/docs/API-docs/createtemplate/index.html @@ -5,7 +5,7 @@ Create template | OpenSign™ - + diff --git a/docs/API-docs/delete-template/index.html b/docs/API-docs/delete-template/index.html index 47399db8c..6737011d0 100644 --- a/docs/API-docs/delete-template/index.html +++ b/docs/API-docs/delete-template/index.html @@ -5,7 +5,7 @@ Delete template by ID | OpenSign™ - + diff --git a/docs/API-docs/deletecontact/index.html b/docs/API-docs/deletecontact/index.html index 6f5a8723f..a4150c9bd 100644 --- a/docs/API-docs/deletecontact/index.html +++ b/docs/API-docs/deletecontact/index.html @@ -5,7 +5,7 @@ Delete contact | OpenSign™ - + diff --git a/docs/API-docs/deletedocument/index.html b/docs/API-docs/deletedocument/index.html index 478bcf493..716d22dd0 100644 --- a/docs/API-docs/deletedocument/index.html +++ b/docs/API-docs/deletedocument/index.html @@ -5,7 +5,7 @@ Delete document by ID | OpenSign™ - + diff --git a/docs/API-docs/get-template/index.html b/docs/API-docs/get-template/index.html index fd69d1e97..9ce5cb478 100644 --- a/docs/API-docs/get-template/index.html +++ b/docs/API-docs/get-template/index.html @@ -5,7 +5,7 @@ Get template by ID | OpenSign™ - + diff --git a/docs/API-docs/get-user/index.html b/docs/API-docs/get-user/index.html index 5ee3fdb6c..ef1040782 100644 --- a/docs/API-docs/get-user/index.html +++ b/docs/API-docs/get-user/index.html @@ -5,7 +5,7 @@ Get your details | OpenSign™ - + diff --git a/docs/API-docs/getcontact/index.html b/docs/API-docs/getcontact/index.html index 20b345e59..da9f6f070 100644 --- a/docs/API-docs/getcontact/index.html +++ b/docs/API-docs/getcontact/index.html @@ -5,7 +5,7 @@ Get contact | OpenSign™ - + diff --git a/docs/API-docs/getdocument/index.html b/docs/API-docs/getdocument/index.html index e176cd3fd..8ef443b5c 100644 --- a/docs/API-docs/getdocument/index.html +++ b/docs/API-docs/getdocument/index.html @@ -5,7 +5,7 @@ Get document by ID | OpenSign™ - + diff --git a/docs/API-docs/getdocumentlist/index.html b/docs/API-docs/getdocumentlist/index.html index e58fbee42..5f1a938b7 100644 --- a/docs/API-docs/getdocumentlist/index.html +++ b/docs/API-docs/getdocumentlist/index.html @@ -5,7 +5,7 @@ Get document list by doctype | OpenSign™ - + diff --git a/docs/API-docs/gettemplatelist/index.html b/docs/API-docs/gettemplatelist/index.html index 333e0ae6d..6ddda4c13 100644 --- a/docs/API-docs/gettemplatelist/index.html +++ b/docs/API-docs/gettemplatelist/index.html @@ -5,7 +5,7 @@ Get template list | OpenSign™ - + diff --git a/docs/API-docs/intro/index.html b/docs/API-docs/intro/index.html index e3046769d..7cb2cf6f8 100644 --- a/docs/API-docs/intro/index.html +++ b/docs/API-docs/intro/index.html @@ -5,7 +5,7 @@ Overview | OpenSign™ - + diff --git a/docs/API-docs/opensign-api-v-1/index.html b/docs/API-docs/opensign-api-v-1/index.html index e80404441..c9da27fb6 100644 --- a/docs/API-docs/opensign-api-v-1/index.html +++ b/docs/API-docs/opensign-api-v-1/index.html @@ -5,7 +5,7 @@ OpenSign API v1 | OpenSign™ - + diff --git a/docs/API-docs/update-document/index.html b/docs/API-docs/update-document/index.html index 38722c824..5cfd1c69c 100644 --- a/docs/API-docs/update-document/index.html +++ b/docs/API-docs/update-document/index.html @@ -5,7 +5,7 @@ Update document by ID | OpenSign™ - + diff --git a/docs/API-docs/update-template/index.html b/docs/API-docs/update-template/index.html index 71e58cfbe..47ac4a39b 100644 --- a/docs/API-docs/update-template/index.html +++ b/docs/API-docs/update-template/index.html @@ -5,7 +5,7 @@ Update template by ID | OpenSign™ - + diff --git a/docs/category/docker/index.html b/docs/category/docker/index.html index 854bdd737..f94f48036 100644 --- a/docs/category/docker/index.html +++ b/docs/category/docker/index.html @@ -5,10 +5,10 @@ Docker | OpenSign™ - + - + \ No newline at end of file diff --git a/docs/contribute/CODE_OF_CONDUCT/index.html b/docs/contribute/CODE_OF_CONDUCT/index.html index 8b191e9c3..3440215a1 100644 --- a/docs/contribute/CODE_OF_CONDUCT/index.html +++ b/docs/contribute/CODE_OF_CONDUCT/index.html @@ -5,7 +5,7 @@ Code of conduct | OpenSign™ - + diff --git a/docs/contribute/COMMUNITY/index.html b/docs/contribute/COMMUNITY/index.html index e89f3f0e5..dfa9e09f0 100644 --- a/docs/contribute/COMMUNITY/index.html +++ b/docs/contribute/COMMUNITY/index.html @@ -5,7 +5,7 @@ Community at OpenSign™ | OpenSign™ - + diff --git a/docs/contribute/INSTALLATION/index.html b/docs/contribute/INSTALLATION/index.html index 3f4264376..868839a94 100644 --- a/docs/contribute/INSTALLATION/index.html +++ b/docs/contribute/INSTALLATION/index.html @@ -5,7 +5,7 @@ INSTALLATON INSTRUCTIONS | OpenSign™ - + diff --git a/docs/contribute/REPORTING_GUIDELINES/index.html b/docs/contribute/REPORTING_GUIDELINES/index.html index f89854d95..3ffed9dc9 100644 --- a/docs/contribute/REPORTING_GUIDELINES/index.html +++ b/docs/contribute/REPORTING_GUIDELINES/index.html @@ -5,7 +5,7 @@ REPORTING_GUIDELINES | OpenSign™ - + diff --git a/docs/contribute/intro/index.html b/docs/contribute/intro/index.html index d1fc6fbd8..026fc2cb6 100644 --- a/docs/contribute/intro/index.html +++ b/docs/contribute/intro/index.html @@ -5,7 +5,7 @@ Contributing to OpenSign | OpenSign™ - + diff --git a/docs/help/New-Document/request-signatures/index.html b/docs/help/New-Document/request-signatures/index.html index 9a1bb0942..3baa14d0a 100644 --- a/docs/help/New-Document/request-signatures/index.html +++ b/docs/help/New-Document/request-signatures/index.html @@ -5,7 +5,7 @@ Request signatures | OpenSign™ - + diff --git a/docs/help/New-Document/sign-yourself/index.html b/docs/help/New-Document/sign-yourself/index.html index 0d20390ca..680d0513c 100644 --- a/docs/help/New-Document/sign-yourself/index.html +++ b/docs/help/New-Document/sign-yourself/index.html @@ -5,7 +5,7 @@ Sign yourself | OpenSign™ - + diff --git a/docs/help/intro/index.html b/docs/help/intro/index.html index a69ac1187..a72e0419a 100644 --- a/docs/help/intro/index.html +++ b/docs/help/intro/index.html @@ -5,7 +5,7 @@ Intro | OpenSign™ - + diff --git a/docs/intro/index.html b/docs/intro/index.html index a0fd2853c..af3ae5f51 100644 --- a/docs/intro/index.html +++ b/docs/intro/index.html @@ -5,7 +5,7 @@ Tutorial Intro | OpenSign™ - + diff --git a/docs/self-host/One-click-Install/DigitalOcean/index.html b/docs/self-host/One-click-Install/DigitalOcean/index.html index 612501f54..f482db1a9 100644 --- a/docs/self-host/One-click-Install/DigitalOcean/index.html +++ b/docs/self-host/One-click-Install/DigitalOcean/index.html @@ -5,7 +5,7 @@ Digital Ocean | OpenSign™ - + @@ -17,6 +17,6 @@
  • MongoDB database
  • You can install all 3 components on digital ocean using the button below -

    -

    Deploy on DigitalOcean

    +

    Deploy on DigitalOcean

    \ No newline at end of file diff --git a/docs/self-host/docker/run-locally/index.html b/docs/self-host/docker/run-locally/index.html index a02f5bdaf..020307229 100644 --- a/docs/self-host/docker/run-locally/index.html +++ b/docs/self-host/docker/run-locally/index.html @@ -3,13 +3,13 @@ -run-locally | OpenSign™ +Code of conduct | OpenSign™ - + -

    run-locally

    Localhost Setup with Docker

    +

    Code of conduct

    Localhost Setup with Docker

    To set up OpenSign™ locally using Docker, the following prerequisites are required:

    Environment Varaibles:

    Environment VaribaleValueDescription
    CIfalseSet CI to false while running the app locally
    PUBLIC_URLhttp://localhost:3000Set it to the URL form where the app home page will be accessed
    GENERATE_SOURCEMAPfalseSet it to true if you want to generate the Sourcemap for debugging
    REACT_APP_SERVERURLhttp://localhost:8080/appSet it to the URL from where APIs will be accessible, for local development it should be localhost:3000/api/app (use your local port number instead)
    REACT_APP_APPIDopensignstgnA 12 character long random app identifier. The value of this should be same as APP_ID which is a variable used by backend API.
    APP_IDopensignstgnA 12 character long random app identifier. The value of this should be same as REACT_APP_APPID which is a variable used by Frontend React App.
    appNameopen_sign_serverName of the app. It will be visible in the verification emails sent out.
    MASTER_KEYXnAadwKxxByMrA 12 character long random secret key that allows access to all the data. It is used in Parse dashboard config to view all the data in the database.
    MONGODB_URImongodb://host.docker.internal:27017/OpenSignDBMongodb URI to connect to
    PARSE_MOUNT/appPath on which APIs should be mounted. Do not change this. This variable shall be removed & value hardcoded in the source code in coming versions.
    SERVER_URLhttp://127.0.0.1:8080/appSet it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:3000/api/app (use your local port number instead)
    DO_SPACEDOSPACENAMEDigital ocean space name or AWS S3 bucket name for uploading documents
    DO_ENDPOINTams3.digitaloceanspaces.comDigital ocean spaces endpoint or AWS S3 endpoint for uploading documents
    DO_BASEURLhttps://DOSPACENAME.ams3.digitaloceanspaces.comDigital ocean baseurl or AWS S3 base URL
    DO_ACCESS_KEY_IDYOUR_S3_ACCESS_IDDigital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs
    DO_SECRET_ACCESS_KEYYOUR_S3_ACCESS_KEYDigital ocean spaces secret access key or AWS s3 secret access key for uploading the docs
    DO_REGIONYOUR_S3_REGIONDigital ocean spaces region or AWS s3 region
    USE_LOCALFALSETo use local file storage to save file
    MAILGUN_API_KEYYOUR_MAILGUNAPI_KEYMailgun API Key
    MAILGUN_DOMAINYOUR_MAILGUNAPI_DOMAINMailgun API Domain
    MAILGUN_SENDER-Mailgun Sender Mail ID
    PFX_BASE64-Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase emudhra
    diff --git a/docs/self-host/intro/index.html b/docs/self-host/intro/index.html index 7a72eba63..baf79b1b3 100644 --- a/docs/self-host/intro/index.html +++ b/docs/self-host/intro/index.html @@ -5,7 +5,7 @@ Self-Hosting OpenSign | OpenSign™ - + diff --git a/index.html b/index.html index ec6d95709..3d63d1bb1 100644 --- a/index.html +++ b/index.html @@ -5,7 +5,7 @@ Hello from OpenSign™ | OpenSign™ - + diff --git a/markdown-page/index.html b/markdown-page/index.html index e0f3b263b..ab6ff9628 100644 --- a/markdown-page/index.html +++ b/markdown-page/index.html @@ -5,7 +5,7 @@ Markdown page example | OpenSign™ - +