diff --git a/404.html b/404.html index 0ff142ef1..90a4ec2cb 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 deleted file mode 100644 index 90d359d2e..000000000 --- a/assets/js/489b8a4d.11f409bc.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:()=>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.3238e555.js b/assets/js/489b8a4d.3238e555.js new file mode 100644 index 000000000..c9e56c67e --- /dev/null +++ b/assets/js/489b8a4d.3238e555.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:()=>l,contentTitle:()=>c,default:()=>h,frontMatter:()=>i,metadata:()=>o,toc:()=>d});var n=t(85893),r=t(11151);const i={title:"Localhost Setup with Docker"},c=void 0,o={id:"self-host/docker/run-locally",title:"Localhost Setup with Docker",description:"Setup OpenSign\u2122 with Docker on Localhost",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:"Localhost Setup with Docker"},sidebar:"selfhostSidebar",previous:{title:"Docker",permalink:"/docs/category/docker"},next:{title:"Digital Ocean",permalink:"/docs/self-host/One-click-Install/DigitalOcean"}},l={},d=[{value:"Setup OpenSign\u2122 with Docker on Localhost",id:"setup-opensign-with-docker-on-localhost",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:"setup-opensign-with-docker-on-localhost",children:"Setup OpenSign\u2122 with Docker on Localhost"}),"\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.38b0a105.js b/assets/js/935f2afb.38b0a105.js new file mode 100644 index 000000000..2ac28c29c --- /dev/null +++ b/assets/js/935f2afb.38b0a105.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":"Localhost Setup with Docker","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":"Localhost Setup with Docker","description":"Setup OpenSign\u2122 with Docker on Localhost","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 deleted file mode 100644 index 2e1f33a73..000000000 --- a/assets/js/935f2afb.a52fd6ea.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":"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.67c44a6c.js b/assets/js/ce589067.67c44a6c.js deleted file mode 100644 index a352c9178..000000000 --- a/assets/js/ce589067.67c44a6c.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:()=>s,metadata:()=>l,toc:()=>r});var i=t(85893),o=t(11151);const s={title:"Digital Ocean"},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:{title:"Digital Ocean"},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,o.a)(),...n.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(e.h1,{id:"digital-ocean",children:"Digital Ocean"}),"\n",(0,i.jsx)(e.p,{children:"OpenSign application consistes of 3 components -"}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"ReactJS frontend"}),"\n",(0,i.jsx)(e.li,{children:"NodeJS API"}),"\n",(0,i.jsx)(e.li,{children:"MongoDB database"}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"You can install all 3 components on digital ocean using the button below -"}),"\n",(0,i.jsx)(e.p,{children:(0,i.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,i.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,i.jsx)(e,{...n,children:(0,i.jsx)(d,{...n})}):d(n)}},11151:(n,e,t)=>{t.d(e,{Z:()=>l,a:()=>c});var i=t(67294);const o={},s=i.createContext(o);function c(n){const e=i.useContext(s);return i.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),i.createElement(s.Provider,{value:e},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/ce589067.ffc7db1a.js b/assets/js/ce589067.ffc7db1a.js new file mode 100644 index 000000000..c51e107bf --- /dev/null +++ b/assets/js/ce589067.ffc7db1a.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:()=>d,frontMatter:()=>s,metadata:()=>l,toc:()=>r});var i=t(85893),o=t(11151);const s={title:"Digital Ocean"},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:{title:"Digital Ocean"},sidebar:"selfhostSidebar",previous:{title:"Localhost Setup with Docker",permalink:"/docs/self-host/docker/run-locally"}},a={},r=[];function p(n){const e={a:"a",h1:"h1",img:"img",li:"li",p:"p",ul:"ul",...(0,o.a)(),...n.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(e.h1,{id:"digital-ocean",children:"Digital Ocean"}),"\n",(0,i.jsx)(e.p,{children:"OpenSign application consistes of 3 components -"}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"ReactJS frontend"}),"\n",(0,i.jsx)(e.li,{children:"NodeJS API"}),"\n",(0,i.jsx)(e.li,{children:"MongoDB database"}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"You can install all 3 components on digital ocean using the button below -"}),"\n",(0,i.jsx)(e.p,{children:(0,i.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,i.jsx)(e.img,{src:"https://www.deploytodo.com/do-btn-blue.svg",alt:"Deploy on DigitalOcean"})})})]})}function d(n={}){const{wrapper:e}={...(0,o.a)(),...n.components};return e?(0,i.jsx)(e,{...n,children:(0,i.jsx)(p,{...n})}):p(n)}},11151:(n,e,t)=>{t.d(e,{Z:()=>l,a:()=>c});var i=t(67294);const o={},s=i.createContext(o);function c(n){const e=i.useContext(s);return i.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),i.createElement(s.Provider,{value:e},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/e2c87691.a49f9ee8.js b/assets/js/e2c87691.c9c1a330.js similarity index 63% rename from assets/js/e2c87691.a49f9ee8.js rename to assets/js/e2c87691.c9c1a330.js index fde612c5d..9aad030e7 100644 --- a/assets/js/e2c87691.a49f9ee8.js +++ b/assets/js/e2c87691.c9c1a330.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":"Code of conduct","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":"Localhost Setup with Docker","permalink":"/docs/self-host/docker/run-locally"}}}')}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.21714768.js b/assets/js/runtime~main.d3261588.js similarity index 61% rename from assets/js/runtime~main.21714768.js rename to assets/js/runtime~main.d3261588.js index 6ff8531cb..df3e65f59 100644 --- a/assets/js/runtime~main.21714768.js +++ b/assets/js/runtime~main.d3261588.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:"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:"67c44a6c",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={},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,b,f={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var c=t[e]={id:e,loaded:!1,exports:{}};return f[e].call(c.exports,c,c.exports,r),c.loaded=!0,c.exports}r.m=f,r.c=t,e=[],r.O=(a,c,d,b)=>{if(!c){var f=1/0;for(i=0;i=b)&&Object.keys(r.O).every((e=>r.O[e](c[o])))?c.splice(o--,1):(t=!1,b0&&e[i-1][2]>b;i--)e[i]=e[i-1];e[i]=[c,d,b]},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 b=Object.create(null);r.r(b);var f={};a=a||[null,c({}),c([]),c(c)];for(var t=2&d&&e;"object"==typeof t&&!~a.indexOf(t);t=c(t))Object.getOwnPropertyNames(t).forEach((a=>f[a]=()=>e[a]));return f.default=()=>e,r.d(b,f),b},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:"38b0a105",110:"ab20026d",230:"a0474773",273:"adc233e1",420:"c9c1a330",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:"ffc7db1a",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:"3238e555",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={},b="OpenSign-Docs:",r.l=(e,a,c,f)=>{if(d[e])d[e].push(a);else{var t,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var b=d[e];if(delete d[e],t.parentNode&&t.parentNode.removeChild(t),b&&b.forEach((e=>e(c))),a)return a(c)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=u.bind(null,t.onerror),t.onload=u.bind(null,t.onload),o&&document.head.appendChild(t)}},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 b=new Promise(((c,b)=>d=e[a]=[c,b]));c.push(d[2]=b);var f=r.p+r.u(a),t=new Error;r.l(f,(c=>{if(r.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var b=c&&("load"===c.type?"missing":c.type),f=c&&c.target&&c.target.src;t.message="Loading chunk "+a+" failed.\n("+b+": "+f+")",t.name="ChunkLoadError",t.type=b,t.request=f,d[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,c)=>{var d,b,f=c[0],t=c[1],o=c[2],n=0;if(f.some((a=>0!==e[a]))){for(d in t)r.o(t,d)&&(r.m[d]=t[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 27cb037e6..4a7f64210 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 2b7a5c6ef..c971aedd9 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 af999cfa1..ab70d8ba9 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 ab136f69d..960b22b1b 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 dbd0c7f55..c21fc0bc0 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 25490a6ec..ffa700802 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 d9c427e20..7f8358530 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 bca6bec52..93698873c 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 314f80e42..6278ad70f 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 ad9bacb84..92191daae 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 ae2eb07bb..cadb30efb 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 9a09ef0cc..40be9f686 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 5bc6a060a..2b2d91dd4 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 8ed63cd67..b559b64b6 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 f17aac774..3d3d23386 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 27c4616c7..3bc030187 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 6792981f3..afd759555 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 ee6f78fcb..3f2586d31 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 ad34060b3..3e787f93d 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 678e85509..ec3a533bb 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 0ebed5454..9fe3b378a 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 d1201c71c..cdb323799 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 876e33d3f..8aac49fae 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 46d4c9655..34215584d 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 c9e61a686..6f5861761 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 0d4e565a6..ba345d8a8 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 dc4363e50..64ac9e0dd 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 3c59ab763..0efa1ebc2 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 600b47e17..d5bfea82b 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 51f25fea5..72f36bbf6 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 88b05fb7a..7d6c40dec 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 8ebb578c1..75e80c925 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 636e85c78..584855c43 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 1fdfb23b5..32456cbb9 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 cbc3659df..347e0120e 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 85d1f8209..74dec4a7f 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 652ec15b5..84992758a 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 4c7887614..bc1f51775 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 dd586f492..4020d0e73 100644 --- a/docs/self-host/docker/run-locally/index.html +++ b/docs/self-host/docker/run-locally/index.html @@ -3,13 +3,13 @@ -Code of conduct | OpenSign™ +Localhost Setup with Docker | OpenSign™ - + -

    Code of conduct

    Localhost Setup with Docker

    +

    Localhost Setup with Docker

    Setup OpenSign™ with Docker on Localhost

    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
    @@ -31,6 +31,6 @@

    Command to run project -

    • Execute make run
    • -
    +
    \ No newline at end of file diff --git a/docs/self-host/intro/index.html b/docs/self-host/intro/index.html index ae4250fb2..5939f7830 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 4a514d571..4136ecc84 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 03697d233..3d2d3446a 100644 --- a/markdown-page/index.html +++ b/markdown-page/index.html @@ -5,7 +5,7 @@ Markdown page example | OpenSign™ - +