Compare commits

...
484 Commits
Author SHA1 Message Date
prafull-opensignlabsandGitHub b0440876cd docs: add revoke api and update desc of create document from template 2025-03-17 17:06:19 +05:30
AmolandGitHub 6359067839 Update publicTemplate.md 2025-03-07 03:18:13 +05:30
prafull-opensignlabsandGitHub 71f36ff383 Update opensign.yaml 2025-03-06 01:15:56 +05:30
prafull-opensignlabsandGitHub beab4bdfc9 Update opensign.yaml 2025-03-05 18:06:54 +05:30
prafull-opensignlabsandGitHub c9e6750724 Update opensign.yaml 2025-03-05 17:42:46 +05:30
prafull-opensignlabsandGitHub 06c7355efd Update env-variables.md 2025-02-27 17:01:32 +05:30
prafull-opensignlabsandGitHub 73f7d1b32f Update run-locally.md 2025-02-27 17:00:12 +05:30
prafull-opensignlabsandGitHub fecc87d8c3 Update run-locally.md 2025-02-27 16:55:24 +05:30
prafull-opensignlabsandGitHub 57c89bf601 commented unused envs 2025-02-27 16:53:25 +05:30
prafull-opensignlabsandGitHub b10b2617b8 appName commented 2025-02-27 15:59:05 +05:30
prafull-opensignlabsandGitHub eaed35cefd reverted description parameter in API 2025-02-18 19:02:00 +05:30
prafull-opensignlabsandGitHub 44e92344fc Update draft template API description 2025-02-18 13:36:51 +05:30
prafull-opensignlabsandGitHub 9aebbde627 Update selfsign API 2025-02-18 13:11:31 +05:30
prafull-opensignlabsandGitHub 8ece6ef046 Update draft doc API 2025-02-18 12:52:35 +05:30
prafull-opensignlabsandGitHub 7d46e26365 update webhook API 2025-02-18 12:26:35 +05:30
prafull-opensignlabsandGitHub e2646bd49f Update draft and create template api 2025-02-18 11:51:00 +05:30
prafull-opensignlabsandGitHub 6158ac7bc4 Update create doc api 2025-02-18 11:31:43 +05:30
prafull-opensignlabsandGitHub 596340bea9 Update draft doc 2025-02-18 11:23:45 +05:30
nxglabs 73d1cdee00 version updates 2025-02-17 03:53:31 +05:30
prafull-opensignlabsandGitHub f88f2c681b Update webhook doc 2025-02-16 14:25:05 +05:30
prafull-opensignlabsandGitHub 25ecf7221d update create document and create document from template response 2025-02-16 12:41:58 +05:30
prafull-opensignlabsandGitHub bb18feaacf docs: make phone field optional 2025-02-10 16:41:47 +05:30
prafull-opensignlabsandGitHub 19324ad0d8 docs: update sender_name and sender_email in selfsign API 2025-02-10 11:56:57 +05:30
prafull-opensignlabsandGitHub 8a0f5c460f Update opensign.yaml 2025-02-07 22:40:56 +05:30
AmolandGitHub 625689b203 Update s3.md 2025-02-06 03:54:31 +05:30
prafull-opensignlabsandGitHub d919e8514b remove description parameter from selfsign and draft document API 2025-02-05 18:35:12 +05:30
prafull-opensignlabsandGitHub 18f183f48b removed swagger url 2025-02-05 12:23:36 +05:30
prafull-opensignlabsandGitHub 69135afe6b docs: removed description parameter from create and update document API 2025-02-05 12:23:07 +05:30
AmolandGitHub 474a20aa41 Update opensign.yaml 2025-01-31 18:23:37 +05:30
AmolandGitHub 19478536b3 Update opensign.yaml 2025-01-31 15:17:52 +05:30
prafull-opensignlabsandGitHub dc29d7a23b Update opensign.yaml 2025-01-20 13:29:50 +05:30
prafull-opensignlabsandGitHub f5137f54b0 Merge pull request #1538 from OpenSignLabs/draft_doc_api
Draft doc api
2025-01-18 00:34:55 +05:30
prafull-opensignlabsandGitHub 42f2122070 Update draft document api documentation 2025-01-18 00:33:34 +05:30
prafull-opensignlabsandGitHub e4ca29c2c3 Update opensign.yaml 2025-01-18 00:30:03 +05:30
AmolandGitHub b8a039bc20 Update env-variables.md 2025-01-17 01:42:03 +05:30
prafull-opensignlabsandGitHub 331b2d5a40 Merge pull request #1527 from pravinOpenSign/patch-27
Update upgrade-deployment.md
2025-01-02 20:46:25 +05:30
pravinandGitHub 46e390d3c5 Update upgrade-deployment.md
updated the self host upgrade document
2025-01-02 20:34:37 +05:30
prafull-opensignlabsandGitHub 0b8fb87a29 add certificate parameter in completed webhook event 2024-12-23 17:54:39 +05:30
prafull-opensignlabsandGitHub e0249211d2 update webhook event for draft template and readonly for dropdown, textbox widget 2024-12-19 19:11:55 +05:30
prafull-opensignlabsandGitHub a244c1ba3d docs: update info of drodown, radio button, checkbox 2024-12-13 20:49:53 +05:30
prafull-opensignlabsandGitHub 0a79807cb4 feat: add api documentation for selfsign 2024-12-11 19:10:11 +05:30
prafull-opensignlabsandGitHub b70c473002 docs: change parameter from size to fontsize in api docs 2024-11-12 15:28:15 +05:30
prafull-opensignlabsandGitHub 937390fca0 docs: update font size in api documentation 2024-11-12 12:25:12 +05:30
prafull-opensignlabsandGitHub 1140318719 Update info 2024-11-11 17:09:24 +05:30
prafull-opensignlabsandGitHub 655371c6d9 added draft template and color for widget cotent 2024-11-11 16:23:11 +05:30
AmolandGitHub f07fc78eff Update enforce-email-verification.md 2024-11-07 00:53:23 +05:30
AmolandGitHub 60034a4ad8 Create enforce-email-verification.md 2024-11-07 00:49:49 +05:30
RaktimaandGitHub ead7bf8841 Merge pull request #1421 from pravinOpenSign/patch-26
Update run-locally.md
2024-11-06 17:25:31 +05:30
pravinandGitHub 15d2798aab Update run-locally.md 2024-11-06 17:22:44 +05:30
prafull-opensignlabsandGitHub 58a0af40e6 Merge pull request #1397 from pravinOpenSign/patch-22
Update embed-template.md
2024-10-29 16:21:49 +05:30
prafull-opensignlabsandGitHub 1b79b45b1f Update embed-template.md 2024-10-29 16:21:29 +05:30
pravinandGitHub f831ff3b7a Update embed-template.md
Updated the react player settings, default playing set to False,  playing ={false}
2024-10-29 16:17:16 +05:30
prafull-opensignlabsandGitHub f1b6859e9c remove import statement from publictemplate doc 2024-10-29 14:11:16 +05:30
ZathielandGitHub 2148f5196c Merge pull request #1395 from pravinOpenSign/patch-15 2024-10-29 09:15:28 +01:00
pravinandGitHub 5495e569df Update publicTemplate.md
Added dependency import ReactPlayer from 'react-player';
2024-10-29 13:36:51 +05:30
pravinandGitHub e121df48fe Update embed-template.md
added the dependency import ReactPlayer from 'react-player'
2024-10-29 13:33:05 +05:30
prafull-opensignlabsandGitHub 39c05b1eb3 Merge pull request #1394 from pravinOpenSign/patch-12
Patch 12
2024-10-29 12:56:29 +05:30
pravinandGitHub 78892a497d Update embed-template.md
Updated the content for embeding the template
2024-10-29 12:19:22 +05:30
pravinandGitHub ccb08949ff Update sign-yourself.md
Added the details about My signature
2024-10-28 17:37:28 +05:30
pravinandGitHub 74b091b1eb Create embed-template.md
Added a new help document for embedding the template.
2024-10-24 19:13:22 +05:30
AmolandGitHub 264214babd Update opensign.yaml 2024-10-24 17:30:37 +05:30
pravinandGitHub 38930133f7 Update publicTemplate.md
Updated the steps
2024-10-24 16:29:58 +05:30
pravinandGitHub 758cfc8e8d Update publicTemplate.md 2024-10-24 16:15:37 +05:30
pravinandGitHub 2a9ae74c33 Update publicTemplate.md
Updated the page content
2024-10-24 16:14:48 +05:30
pravinandGitHub 2f73ba974c Update publicTemplate.md
updated the content
2024-10-24 16:08:25 +05:30
pravinandGitHub 7c0b744c40 Update publicTemplate.md
Update the header font
2024-10-24 15:07:08 +05:30
pravinandGitHub 010d2dba60 Update publicTemplate.md
Updated the content
2024-10-24 15:04:58 +05:30
pravinandGitHub c0b45e97ea Create publicTemplate.md
help document for public template
2024-10-23 17:04:02 +05:30
RaktimaandGitHub 7316fcd18a Merge pull request #1370 from pravinOpenSign/patch-25
Patch 25
2024-10-22 10:21:25 +05:30
pravinandGitHub 08a2d8a1a4 Update create-template.md
Correct the spelling
2024-10-21 18:24:54 +05:30
pravinandGitHub dbd53ba0d2 Update create-template.md
Updated the document content and Images.
2024-10-21 17:54:53 +05:30
pravinandGitHub 8b0c73c58e Update need-your-sign.md 2024-10-21 14:28:45 +05:30
pravinandGitHub a292687a8c Update expired.md 2024-10-21 14:28:16 +05:30
pravinandGitHub 8659c1f4dc Update contactbook.md
update the label actions button to Action buttons
2024-10-21 14:27:45 +05:30
pravinandGitHub 8ed73ba07b Create contactbook.md
Added the new contact book report
2024-10-21 14:26:20 +05:30
pravinandGitHub a41a31176d Update expired.md
Update the report name from Expired Documents Report to Expired documents report
2024-10-21 13:40:13 +05:30
pravinandGitHub d6740efaf9 Update declined.md
Updated the report name "Declined Documents Report"  to "Declined documents report"
2024-10-21 13:37:23 +05:30
pravinandGitHub aac4ea8e2a Update drafts.md
update the report name from "Draft Documents Report" to Draft documents report"
2024-10-21 13:34:51 +05:30
pravinandGitHub 3fe26cfb07 Update need-your-sign.md
Updated the header from # Need your sign report in OpenSign  to # Need your sign report to maintain the consistency in all report.
2024-10-21 13:30:23 +05:30
pravinandGitHub c837df6540 Update completed.md
Updated the word from 
"Completed Documents Report" to ""Completed documents report"
2024-10-21 13:28:43 +05:30
pravinandGitHub 03b6b567fc Update in-progress.md
Updated the sentence "In progress document Interface  " to  "In progress document report"
2024-10-21 13:22:58 +05:30
pravinandGitHub 09fbd442be Update need-your-sign.md
Updated the sentence "Understanding the Need your sign Interface  " to  "Understanding the Need your sign report"
2024-10-21 13:22:15 +05:30
pravinandGitHub 5f32ca0140 Update in-progress.md
Updated the Document and The latest Images in in-progress report.
2024-10-21 13:12:12 +05:30
pravinandGitHub 46e5aa2815 Update run-locally.md
Updated the sentence 
"Create a Docker Hub account if you don't already have one."
2024-10-21 12:31:15 +05:30
pravinandGitHub db635f80f8 Update need-your-sign.md
Update the Word "Need Your Signature" to "Need your signature.
2024-10-21 12:21:19 +05:30
prafull-opensignlabsandGitHub c3a101bc18 Merge pull request #1352 from pravinOpenSign/patch-23
Update upgrade-deployment.md
2024-10-18 19:47:26 +05:30
pravinandGitHub 1af4bd430f Update upgrade-deployment.md
Update the command to pull upgrade the opensign deployment
2024-10-18 17:18:13 +05:30
AmolandGitHub 0459c404f5 Update completed.md 2024-10-18 16:16:51 +05:30
prafull-opensignlabsandGitHub 492f242e4d update local command 2024-10-16 13:21:44 +05:30
prafull-opensignlabsandGitHub e06d6d5427 update command of local 2024-10-16 13:16:44 +05:30
prafull-opensignlabsandGitHub 747c7c549c Merge pull request #1344 from OpenSignLabs/update-doc
feat: update doc add enableTour variable
2024-10-15 11:51:03 +05:30
RaktimaNXG e91d615e68 feat: update doc add enableTour variable 2024-10-15 11:14:10 +05:30
prafull-opensignlabsandGitHub 2d527d59b0 Merge pull request #1310 from OpenSignLabs/revert-1303-update-doc
Revert "feat: update doc add enableTour variable"
2024-10-09 10:08:00 +05:30
prafull-opensignlabsandGitHub 340947a36d Revert "feat: update doc add enableTour variable" 2024-10-09 10:07:44 +05:30
prafull-opensignlabsandGitHub 91d098ef65 Merge pull request #1303 from OpenSignLabs/update-doc
feat: update doc add enableTour variable
2024-10-09 10:04:27 +05:30
RaktimaNXG d9f8ea8aca refactor code 2024-10-07 10:23:28 +05:30
AndrewandGitHub 33bcb55124 Update s3.md 2024-10-03 12:59:28 +05:30
AndrewandGitHub 5a93207dc2 Update s3.md 2024-10-03 12:55:03 +05:30
AndrewandGitHub fa7c36dbe2 fix syntax issue 2024-10-03 12:26:13 +05:30
prafull-opensignlabsandGitHub faba8b8201 Merge pull request #1286 from OpenSignLabs/docs_s3
update s3 doc
2024-10-03 10:52:42 +05:30
prafull-opensignlabsandGitHub 3422bc6f9e Update s3.md 2024-10-03 10:51:19 +05:30
prafull-opensignlabsandGitHub a195b758e6 Update s3.md 2024-10-03 10:49:26 +05:30
ZathielandGitHub 083cd60f2d Merge pull request #1284 from pravinOpenSign/patch-15 2024-10-01 10:19:21 +02:00
pravinandGitHub f4b7449262 Update run-locally.md 2024-10-01 13:19:00 +05:30
prafull-opensignlabsandGitHub fb68931538 Merge pull request #1281 from OpenSignLabs/docs_s3
Docs: Update s3 documentation
2024-09-30 21:28:55 +05:30
prafull-opensignlabsandGitHub be07fcec24 Update s3 documentation 2024-09-30 21:24:58 +05:30
RaktimaNXG f6245cfada feat: update doc add enableTourvariable 2024-09-30 16:47:08 +05:30
prafull-opensignlabsandGitHub 77cf6de722 Update run-locally.md 2024-09-26 10:11:25 +05:30
prafull-opensignlabsandGitHub 2b17c26722 Merge pull request #1177 from EDIflyer/feature/ediflyer-docs
docs: update install guidance
2024-09-25 20:07:19 +05:30
RaktimaNXG 9862921297 Merge branch 'feat-docs' of https://github.com/OpenSignLabs/OpenSign into feat-docs 2024-09-19 14:56:55 +05:30
RaktimaNXG 685b2ceabd update opensign-demo video 2024-09-19 14:55:20 +05:30
prafull-opensignlabsandGitHub 786b674db3 Update opensign.yaml 2024-09-18 19:11:20 +05:30
prafull-opensignlabsandGitHub 0b9074611a Update opensign.yaml 2024-09-18 14:56:23 +05:30
prafull-opensignlabsandGitHub 6ebfa038b3 Update opensign.yaml 2024-09-18 14:53:47 +05:30
prafull-opensignlabsandGitHub 4c809bb8d3 Merge pull request #1214 from pravinOpenSign/patch-62
Create upgrade-deployment.md
2024-09-18 14:33:56 +05:30
pravinandGitHub 2dcb7eb7a2 Create upgrade-deployment.md
Added deployment upgrade help document.
2024-09-18 11:56:53 +05:30
prafull-opensignlabsandGitHub 743e89038c webhook response schema updated 2024-09-09 20:19:36 +05:30
AndrewandGitHub f9f25dc0c3 Update run-locally.md 2024-09-09 02:45:33 +05:30
EDIflyerandEDIflyer ca75698328 better differentiate between custom domain and local 2024-09-08 16:26:01 +01:00
EDIflyerandEDIflyer f117aeb7c4 Add comment re CPU architecture
As per Discord discussions
2024-09-08 16:25:54 +01:00
EDIflyerandEDIflyer e36557e844 Update run-locally.md
Remove reference to NodeJS and Git as these aren't required for Docker as are included within it.
2024-09-08 16:25:39 +01:00
prafull-opensignlabsandGitHub e73b8ed5a5 Update opensign.yaml 2024-09-06 21:01:18 +05:30
AmolandGitHub 0aaeb28eb7 change branches in command 2024-09-03 22:32:08 +05:30
prafull-opensignlabsandGitHub 305a5f6fda added staging url 2024-09-02 11:06:33 +05:30
prafull-opensignlabsandGitHub 045961be02 update testing url 2024-09-02 10:28:14 +05:30
RaktimaNXG c612dd3e70 feat: replace opensign video to gif 2024-08-30 19:02:29 +05:30
RaktimaNXG ea4527e2dd feat: add opensign-react npm demo video 2024-08-30 18:49:55 +05:30
prafull-opensignlabsandGitHub aada33f23f Update run-locally.md 2024-08-30 11:02:17 +05:30
prafull-opensignlabsandGitHub 1f44582658 Update run-locally.md 2024-08-30 10:52:14 +05:30
prafull-opensignlabsandGitHub 198a58e524 Update run-locally.md 2024-08-29 20:01:58 +05:30
prafull-opensignlabsandGitHub 0d78aef414 Update run-locally.md 2024-08-29 20:01:31 +05:30
prafull-opensignlabsandGitHub 8f99cb0514 Update run-locally.md 2024-08-29 19:59:30 +05:30
prafull-opensignlabsandGitHub 9a734d9b3c Merge pull request #1132 from pravinOpenSign/patch-57
Update need-your-sign.md
2024-08-29 19:15:54 +05:30
prafull-opensignlabsandGitHub 7a2c93a3e9 Merge pull request #1133 from pravinOpenSign/patch-58
Update drafts.md
2024-08-29 19:13:23 +05:30
pravinandGitHub a5e1768f7e Update drafts.md
update the title Complete documents report to "draft documents report"
2024-08-29 18:20:49 +05:30
pravinandGitHub 30e27062bd Update need-your-sign.md
Corrected the spelling mistake Spelling mistake Action button  to Actions buttons
2024-08-29 18:19:05 +05:30
prafull-opensignlabsandGitHub 97d28a1b48 Merge pull request #1123 from pravinOpenSign/patch-52
Update declined.md
2024-08-29 10:43:36 +05:30
prafull-opensignlabsandGitHub aade153f1c Merge pull request #1125 from pravinOpenSign/patch-54
Update completed.md
2024-08-29 10:42:38 +05:30
prafull-opensignlabsandGitHub df6f5d4b33 Merge pull request #1126 from pravinOpenSign/patch-55
Update in-progress.md
2024-08-29 10:41:51 +05:30
prafull-opensignlabsandGitHub ab14628769 Merge pull request #1127 from pravinOpenSign/patch-56
Update drafts.md
2024-08-29 10:41:33 +05:30
RaktimaNXG 69effb5af0 feat: replace demo-video 2024-08-28 18:41:17 +05:30
RaktimaNXG 6e9078d64b feat: upload public demo video 2024-08-28 18:22:17 +05:30
pravinandGitHub 9c73b7818f Update drafts.md
title updated
2024-08-28 18:04:23 +05:30
pravinandGitHub c5246d7a83 Update in-progress.md
content updated for shared document popup
2024-08-28 18:03:04 +05:30
pravinandGitHub 35511e08ac Update completed.md
Title updated
2024-08-28 17:57:59 +05:30
pravinandGitHub 39dc8b226a Update declined.md
page title updated
2024-08-28 17:53:52 +05:30
prafull-opensignlabsandGitHub 7cb531b183 Merge pull request #1118 from pravinOpenSign/patch-48
Update drafts.md
2024-08-28 17:42:44 +05:30
prafull-opensignlabsandGitHub 58422b17e5 Merge pull request #1119 from pravinOpenSign/patch-49
Update in-progress.md
2024-08-28 17:42:14 +05:30
prafull-opensignlabsandGitHub 0b2191f97c Merge pull request #1121 from pravinOpenSign/patch-50
Update expired.md
2024-08-28 17:41:40 +05:30
prafull-opensignlabsandGitHub a3e672cde0 Merge pull request #1122 from pravinOpenSign/patch-51
Update declined.md
2024-08-28 17:41:16 +05:30
pravinandGitHub 5a0b10bdff Update declined.md
Declined Document report
2024-08-28 17:18:37 +05:30
pravinandGitHub dfbf4d8a8f Update expired.md
Expired documents report help document completed
2024-08-28 17:15:51 +05:30
pravinandGitHub 4727d622db Update in-progress.md
Updated the help document for in-progress report.
2024-08-28 17:02:43 +05:30
pravinandGitHub e18e62754f Update drafts.md
Draft document report help document updated
2024-08-28 15:28:15 +05:30
prafull-opensignlabsandGitHub bec7af5142 Merge pull request #1117 from pravinOpenSign/patch-47
Update completed.md
2024-08-28 12:58:03 +05:30
pravinandGitHub 0db937eeeb Update completed.md
content updated
2024-08-28 12:57:20 +05:30
prafull-opensignlabsandGitHub c8d26a5ea9 Merge pull request #1114 from pravinOpenSign/patch-46
Update create-document.md
2024-08-28 12:45:54 +05:30
pravinandGitHub 1659ebd2ac Update create-document.md
fixed the end tag <img> issue
2024-08-27 19:34:35 +05:30
prafull-opensignlabsandGitHub 7877d13776 Merge pull request #1113 from pravinOpenSign/patch-45
Update create-document.md
2024-08-27 19:16:39 +05:30
pravinandGitHub 2f7cacb933 Update create-document.md
Added the Missing <img> tag
2024-08-27 16:47:17 +05:30
prafull-opensignlabsandGitHub 16fcbf8a54 Update create-document.md 2024-08-27 16:37:29 +05:30
prafull-opensignlabsandGitHub 719a23c95b Update create-document.md 2024-08-27 16:30:52 +05:30
prafull-opensignlabsandGitHub f4db8af201 Update create-document.md 2024-08-27 16:23:01 +05:30
prafull-opensignlabsandGitHub 3549c63cc0 Merge pull request #1109 from pravinOpenSign/patch-42
Update declined.md
2024-08-27 16:17:25 +05:30
prafull-opensignlabsandGitHub b9ed7e5293 Merge pull request #1100 from pravinOpenSign/patch-34
Update completed.md
2024-08-27 16:16:30 +05:30
prafull-opensignlabsandGitHub e34e2c4386 Merge pull request #1110 from pravinOpenSign/patch-43
Update create-template.md
2024-08-27 16:16:09 +05:30
prafull-opensignlabsandGitHub a09b2e186f Merge pull request #1099 from pravinOpenSign/patch-33
Update list-grid-view.md
2024-08-27 16:15:52 +05:30
prafull-opensignlabsandGitHub cc273261c3 Merge pull request #1111 from pravinOpenSign/patch-44
Update need-your-sign.md
2024-08-27 16:15:17 +05:30
prafull-opensignlabsandGitHub 26c5c951b6 Merge pull request #1098 from pravinOpenSign/patch-32
Update create-document.md
2024-08-27 16:14:59 +05:30
prafull-opensignlabsandGitHub e63178b899 Merge pull request #1105 from pravinOpenSign/patch-39
Update my-signature.md
2024-08-27 16:14:36 +05:30
pravinandGitHub eb42f08640 Update need-your-sign.md
updated the signers description paragraph.
2024-08-27 15:30:36 +05:30
pravinandGitHub 2843bfd5c9 Update create-template.md
Updated the quick send paragraph description
2024-08-27 15:25:10 +05:30
pravinandGitHub b2a838dc4e Update declined.md
Update the signers description
2024-08-27 15:02:01 +05:30
pravinandGitHub c682a6d8eb Update my-signature.md
Updated the Images on my signature page
2024-08-27 13:19:16 +05:30
prafull-opensignlabsandGitHub c4a23b4f1b Merge pull request #1104 from pravinOpenSign/patch-38
Update declined.md
2024-08-27 11:21:50 +05:30
pravinandGitHub 12e74533c7 Update declined.md
updated the heading "Understanding the Completed Documents Report"
2024-08-27 11:20:14 +05:30
prafull-opensignlabsandGitHub 24c8f6012f Merge pull request #1102 from pravinOpenSign/patch-36
Update declined.md
2024-08-27 10:24:08 +05:30
prafull-opensignlabsandGitHub b20fb9ea3f Merge pull request #1103 from pravinOpenSign/patch-37
Update need-your-sign.md
2024-08-27 10:22:24 +05:30
prafull-opensignlabsandGitHub 079e0defc4 Merge pull request #1097 from pravinOpenSign/patch-31
Update my-signature.md
2024-08-27 10:08:02 +05:30
prafull-opensignlabsandGitHub 00ad406e1b Merge pull request #1090 from pravinOpenSign/patch-30
Update quick-send.md
2024-08-27 10:03:59 +05:30
pravinandGitHub 5c7a9e1d08 Update need-your-sign.md
Need your signature report help document completed.
2024-08-26 19:02:23 +05:30
pravinandGitHub ea2c981a7f Update declined.md
help document for decline document reports is completed.
2024-08-26 18:45:08 +05:30
pravinandGitHub ee18d1b317 Update completed.md
Help document added for completed document report
2024-08-26 18:18:23 +05:30
pravinandGitHub 7f6771e56d Update list-grid-view.md
Images updated
2024-08-26 17:21:37 +05:30
pravinandGitHub 1308b143c4 Update create-document.md
Help document for creating and managing folders in OpenSign Drive has been completed
2024-08-26 17:07:42 +05:30
pravinandGitHub 7be2d1f06a Update my-signature.md
Update the signature page image
2024-08-26 14:34:51 +05:30
pravinandGitHub 62021e8870 Update quick-send.md
Help documents finalized for signature requests using Quick Send.
2024-08-23 19:16:54 +05:30
prafull-opensignlabsandGitHub ea5f407786 Merge pull request #1083 from pravinOpenSign/patch-29
Update use-template.md
2024-08-22 13:07:26 +05:30
pravinandGitHub 2ecd1823e1 Update use-template.md
completed help document: create the document from template
2024-08-21 19:02:26 +05:30
prafull-opensignlabsandGitHub 1e2eee63df Update create-template.md 2024-08-19 16:03:45 +05:30
prafull-opensignlabsandGitHub 8fda979870 Update create-template.md 2024-08-19 15:58:24 +05:30
prafull-opensignlabsandGitHub c59002c375 Update create-template.md 2024-08-19 15:55:50 +05:30
prafull-opensignlabsandGitHub 1fe05b402b Update create-template.md 2024-08-19 15:51:48 +05:30
prafull-opensignlabsandGitHub c7d5bef886 Merge pull request #1075 from pravinOpenSign/patch-26
Update create-template.md
2024-08-19 15:45:20 +05:30
pravinandGitHub ca2fc2bd5c Update create-template.md
Create template help document updated.
2024-08-19 15:43:27 +05:30
prafull-opensignlabsandGitHub 8bf9fb6299 Delete docs/docs/self-host/docker/run-locally-windows.md 2024-08-19 10:42:11 +05:30
prafull-opensignlabsandGitHub 031f24180a Merge pull request #1061 from pravinOpenSign/patch-25
Update sign-yourself.md
2024-08-14 21:05:21 +05:30
prafull-opensignlabsandGitHub 8663777097 Update run-locally.md 2024-08-14 21:04:16 +05:30
prafull-opensignlabsandGitHub 342876cd0b Update run-locally.md 2024-08-14 21:02:17 +05:30
prafull-opensignlabsandGitHub beaa256e3f Update run-locally.md 2024-08-14 20:59:06 +05:30
pravinandGitHub 27ae27187d Update sign-yourself.md
updated the Side bar position.
2024-08-14 19:43:38 +05:30
prafull-opensignlabsandGitHub e8d692a707 Merge pull request #1059 from pravinOpenSign/patch-24
Update sign-yourself.md
2024-08-14 17:07:15 +05:30
prafull-opensignlabsandGitHub 4f71d1bd03 Merge pull request #1057 from pravinOpenSign/patch-23
Update request-signatures.md
2024-08-14 13:42:43 +05:30
prafull-opensignlabsandGitHub 8d33d4c44e Update run-locally.md 2024-08-13 20:21:56 +05:30
prafull-opensignlabsandGitHub 8be55a30c1 Update run-locally.md 2024-08-13 20:18:26 +05:30
prafull-opensignlabsandGitHub 46a0cfa1eb Update run-locally.md 2024-08-13 20:16:29 +05:30
prafull-opensignlabsandGitHub 6988bca7f4 Update run-locally.md 2024-08-13 20:13:33 +05:30
prafull-opensignlabsandGitHub 1a2c0ecbfc Update run-locally.md 2024-08-13 20:11:10 +05:30
prafull-opensignlabsandGitHub f2281505a4 Update run-locally.md 2024-08-13 20:10:52 +05:30
prafull-opensignlabsandGitHub 3ff790c57b Update run-locally.md 2024-08-13 20:02:04 +05:30
pravinandGitHub d5b0fc4e3b Update sign-yourself.md
Updated the title and removed some text
2024-08-13 18:52:25 +05:30
pravinandGitHub 69129c2d47 Update request-signatures.md
Image Location Changed and updated the support line add the bottom
2024-08-13 18:46:38 +05:30
prafull-opensignlabsandGitHub 1486d66b9b Update run-locally.md 2024-08-13 18:33:20 +05:30
prafull-opensignlabsandGitHub 67323d01f5 Update run-locally.md 2024-08-13 18:18:17 +05:30
prafull-opensignlabsandGitHub d0566e6645 Update run-locally.md 2024-08-13 18:16:57 +05:30
prafull-opensignlabsandGitHub a3e1fa866e Update request-signatures.md 2024-08-13 17:45:58 +05:30
prafull-opensignlabsandGitHub 6d6b70a888 Update run-locally.md 2024-08-13 17:31:33 +05:30
prafull-opensignlabsandGitHub c152d3bf35 Update sign-yourself.md 2024-08-13 17:24:25 +05:30
prafull-opensignlabsandGitHub 56a0211b03 Update request-signatures.md 2024-08-13 17:20:43 +05:30
prafull-opensignlabsandGitHub 87fb943ddb Update request-signatures.md 2024-08-13 17:12:40 +05:30
prafull-opensignlabsandGitHub dacc9bb27e Update request-signatures.md 2024-08-13 17:07:02 +05:30
prafull-opensignlabsandGitHub 43a9fa6820 Update run-locally.md 2024-08-13 16:52:11 +05:30
prafull-opensignlabsandGitHub 523d7a0896 Update request-signatures.md 2024-08-13 16:06:50 +05:30
prafull-opensignlabsandGitHub df53e243a5 Update request-signatures.md 2024-08-13 15:51:03 +05:30
prafull-opensignlabsandGitHub b30d7e3337 Update request-signatures.md 2024-08-13 15:45:36 +05:30
AmolandGitHub 7a8e2bcd02 Update run-locally.md 2024-08-13 15:35:17 +05:30
AmolandGitHub 7aa505f1a3 Update run-locally.md 2024-08-13 15:34:34 +05:30
AmolandGitHub beecd2d26f Merge pull request #1008 from pravinOpenSign/patch-20
Update request-signatures.md
2024-08-02 17:49:43 +05:30
pravinandGitHub 96ecbe97f1 Update request-signatures.md
The issue with the image closing tag has been fixed.
2024-08-02 17:47:22 +05:30
AndrewandGitHub 7161da4a2f Merge pull request #1004 from pravinOpenSign/patch-17 2024-08-02 17:21:48 +05:30
AndrewandGitHub 462fdfe1be Merge pull request #1005 from pravinOpenSign/patch-18 2024-08-02 17:21:41 +05:30
AndrewandGitHub dc25133b10 Merge pull request #1006 from pravinOpenSign/patch-19 2024-08-02 17:21:21 +05:30
pravinandGitHub bb7552a7bf Update sign-yourself.md
Added padding between images and the subsequent line
2024-08-02 16:58:28 +05:30
pravinandGitHub 79b4ca053a Update sign-yourself.md
The images in the "Sign Yourself" help document have been updated.
2024-08-02 16:44:24 +05:30
pravinandGitHub 8d91bd218b Update request-signatures.md
The request signature flow help document has been updated.
2024-08-02 16:36:50 +05:30
AmolandGitHub 8e0c96589a Update manage-users.md 2024-07-28 12:41:29 +05:30
AmolandGitHub 3ac66ea4c5 Update manage-users.md 2024-07-28 12:39:43 +05:30
AndrewandGitHub acbff61d9e Update run-locally.md 2024-07-25 02:07:01 +05:30
prafull-opensignlabsandGitHub 83a1da04d1 Update run-locally-windows.md 2024-07-25 01:37:30 +05:30
AmolandGitHub b86155de49 Merge pull request #951 from pravinOpenSign/patch-11
Update sign-yourself.md
2024-07-24 23:50:43 +05:30
prafull-opensignlabsandGitHub 2108ce52ca Update how-to-generate-self-signed-document-signing-certificate.md 2024-07-24 22:56:51 +05:30
AmolandGitHub 4af96da515 Create upgrade-to-v2.1.0.md 2024-07-24 15:31:57 +05:30
pravinandGitHub eda2085d4b Update sign-yourself.md
Replace the duplicate step 4 to step 5
2024-07-19 11:49:14 +05:30
AmolandGitHub 6cdcf66e81 Merge pull request #947 from pravinOpenSign/patch-9
Update sign-yourself.md
2024-07-18 18:20:45 +05:30
pravinandGitHub a701522dca Update sign-yourself.md
Completed Sign yourself help document.
2024-07-18 18:19:05 +05:30
AmolandGitHub ddeb31e530 Update opensign.yaml 2024-07-11 08:58:16 +05:30
AmolandGitHub f827ead0b6 Update opensign.yaml 2024-07-11 08:32:19 +05:30
AmolandGitHub ae87703a34 Update index.js 2024-07-11 08:07:54 +05:30
AmolandGitHub 250c2d768b Update DigitalOcean.md 2024-06-14 23:29:24 +05:30
AmolandGitHub e5e6587490 Create env-variables.md 2024-06-12 03:15:47 +05:30
AmolandGitHub 4921152336 Update expired.md 2024-06-10 22:50:29 +05:30
AmolandGitHub 0c7da91fab Update expired.md 2024-06-10 22:49:17 +05:30
AmolandGitHub add07026bc Update Ensure this field is accurately filled and meets all requirements.md 2024-06-06 12:37:37 +05:30
AmolandGitHub 7f64418a6c Create Ensure this field is accurately filled and meets all requirements.md 2024-06-06 12:23:07 +05:30
AmolandGitHub e83ceaa815 Update sign-yourself.md 2024-06-05 00:05:58 +05:30
AmolandGitHub e3dcb99438 Update FAQs.md 2024-06-04 18:48:29 +05:30
AmolandGitHub 78821cb5e4 Update _category_.json 2024-06-04 18:47:55 +05:30
AmolandGitHub 548441dded Create FAQs.md 2024-06-04 18:43:50 +05:30
AmolandGitHub 7c53ae421c Create _category_.json 2024-06-04 18:12:25 +05:30
AmolandGitHub a71a867aea Update opensign.yaml 2024-05-31 20:50:13 +05:30
AmolandGitHub 4d0d2e9a58 Update my-signature.md 2024-05-23 10:37:06 +05:30
AmolandGitHub fcda1e325e Update manage-users.md 2024-05-22 02:59:26 +05:30
AmolandGitHub b41fed0d12 Update my-signature.md 2024-05-22 02:58:14 +05:30
AmolandGitHub ac533d92f6 Create _category_.json 2024-05-22 02:37:55 +05:30
AmolandGitHub 792b48b75a Create how-to-generate-self-signed-document-signing-certificate.md 2024-05-22 02:35:09 +05:30
AmolandGitHub 175eb921c1 Update run-locally-windows.md 2024-05-22 02:27:08 +05:30
prafull-opensignlabsandGitHub 4cd959b34b stop automatic playing 2024-05-16 10:06:42 +05:30
AmolandGitHub 0083efb7dc Update run-locally-windows.md 2024-05-16 00:41:25 +05:30
AmolandGitHub 18738a56c0 Add files via upload 2024-05-15 22:41:11 +05:30
AmolandGitHub 3254fc8199 Rename favicon.ico to favicon-old.ico 2024-05-15 22:40:29 +05:30
prafull-opensignlabsandGitHub 4a52299d35 Update opensign.yaml 2024-05-15 10:28:34 +05:30
prafull-opensignlabsandGitHub 7a1247051c Update opensign.yaml 2024-05-14 10:44:12 +05:30
prafull-opensignlabsandGitHub 71d34dd3d3 Update opensign.yaml 2024-05-13 19:43:09 +05:30
prafull-opensignlabsandGitHub 1971ffd221 Update opensign.yaml 2024-05-13 19:35:17 +05:30
prafull-opensignlabsandGitHub a0af2145f3 Update opensign.yaml 2024-05-13 19:10:31 +05:30
prafull-opensignlabsandGitHub 64bd5cef35 Update opensign.yaml 2024-05-13 19:06:46 +05:30
prafull-opensignlabsandGitHub 4eb511e76e Update opensign.yaml 2024-05-13 19:01:23 +05:30
prafull-opensignlabsandGitHub 6e7fa2a7f8 add documentation for folder api 2024-05-13 18:51:48 +05:30
prafull-opensignlabsandGitHub 1e3765990a Update opensign.yaml 2024-05-13 14:11:53 +05:30
prafull-opensignlabsandGitHub 2ef608fa33 add resend mail api 2024-05-13 11:50:04 +05:30
AmolandGitHub 479878a59d Update primary color 2024-05-07 16:28:09 +05:30
AmolandGitHub 475eba8b7e Update index.js 2024-04-24 18:06:24 +05:30
AmolandGitHub c0ddec8896 Update index.js 2024-04-24 18:02:41 +05:30
prafull-opensignlabsandGitHub 38cd32b8c8 Update opensign.yaml 2024-04-22 19:49:00 +05:30
prafull-opensignlabsandGitHub 9a6ee0397b Update opensign.yaml 2024-04-22 19:29:13 +05:30
prafull-opensignlabsandGitHub 57f7bf6375 add all widgets json 2024-04-22 19:11:46 +05:30
AmolandGitHub 93f3cd7868 Update docusaurus.config.js 2024-04-21 16:11:20 +05:30
AmolandGitHub 157b5a891e Update run-locally.md 2024-04-20 22:12:36 +05:30
AmolandGitHub fcd10703a8 Update sign-yourself.md 2024-04-15 12:15:03 +05:30
AmolandGitHub d17a8524c5 Update sign-yourself.md 2024-04-15 12:12:57 +05:30
AmolandGitHub 2d42013fed Update index.js 2024-04-14 17:23:56 +05:30
AmolandGitHub 5288fe1512 Update index.js 2024-04-14 17:18:40 +05:30
AmolandGitHub 3988361471 Update run-locally-windows.md 2024-04-14 16:45:57 +05:30
AmolandGitHub 62204bda9d Update list-grid-view.md 2024-04-14 16:37:37 +05:30
AmolandGitHub 1ac4418d41 Create run-locally-windows.md 2024-04-14 16:35:09 +05:30
AmolandGitHub 23914274b5 Update run-locally.md 2024-04-14 16:30:27 +05:30
AmolandGitHub a668aa11db Update home page 2024-04-14 16:20:24 +05:30
AmolandGitHub 0aefb792dc Update list-grid-view.md 2024-04-12 17:19:11 +05:30
AmolandGitHub 54de1c1f5a Create navigate-between-pages.md 2024-04-12 17:08:32 +05:30
prafull-opensignlabsandGitHub f53f125e3e Update debugUI url 2024-04-03 09:37:00 +05:30
AmolandGitHub 0269647d75 Update disabledocumentid.md 2024-03-26 19:18:26 +05:30
AmolandGitHub 5fc05e7faa Rename profile.md to disabledocumentid.md 2024-03-26 16:59:44 +05:30
AmolandGitHub 8c3caed1fb Update profile.md 2024-03-26 16:59:15 +05:30
AmolandGitHub fbcb1fc47a fix: spelling mistakes 2024-03-26 16:46:16 +05:30
AmolandGitHub fdd6e64060 Update profile.md 2024-03-26 16:36:27 +05:30
AmolandGitHub 3dd88f2453 Update profile.md 2024-03-26 12:41:38 +05:30
prafull-opensignlabsandGitHub d06bfefc40 Update run-locally.md 2024-03-23 17:16:43 +05:30
prafull-opensignlabsandGitHub 30236206bc remove CI env variables 2024-03-23 15:52:51 +05:30
prafull-opensignlabsandGitHub 24b0231495 Update opensign.yaml 2024-03-19 13:16:14 +05:30
prafull-opensignlabsandGitHub 57946fea6d Update run-locally.md 2024-03-18 17:39:42 +05:30
prafull-opensignlabsandGitHub 187990ce05 Update run-locally.md 2024-03-18 17:29:58 +05:30
AmolandGitHub 8cfcecf440 Update s3.md 2024-03-12 12:35:29 +05:30
AmolandGitHub 041d290f0f Create _category_.json 2024-03-12 12:28:43 +05:30
AmolandGitHub 291791cb08 Update docusaurus.config.js 2024-03-12 12:24:58 +05:30
AmolandGitHub 3d081cb7a0 Create s3.md 2024-03-12 11:58:03 +05:30
AmolandGitHub 0201159b31 Update INSTALLATION.md 2024-03-12 11:55:47 +05:30
AndrewandGitHub 4caaa203bb Update docusaurus.config.js 2024-03-11 10:48:51 +05:30
AndrewandGitHub 783bd63da0 Update docusaurus.config.js 2024-03-11 10:46:06 +05:30
AndrewandGitHub 82a187fe46 Add sitemap 2024-03-11 10:43:09 +05:30
prafull-opensignlabsandGitHub 8ebf96f1e1 Update run-locally.md 2024-03-02 14:44:55 +05:30
prafull-opensignlabsandGitHub b25152a5e8 Update run-locally.md 2024-02-29 19:11:34 +05:30
prafull-opensignlabsandGitHub b1b488a8a0 Update INSTALLATION.md 2024-02-29 19:08:47 +05:30
prafull-opensignlabsandGitHub 8a76b92b5f Update run-locally.md 2024-02-29 15:31:01 +05:30
prafull-opensignlabsandGitHub 724f3a9724 Update run-locally.md 2024-02-29 15:29:40 +05:30
prafull-opensignlabsandGitHub 388d9cb29e Update run-locally.md 2024-02-29 15:22:55 +05:30
prafull-opensignlabsandGitHub 6b463c6f1a Update run-locally.md 2024-02-29 15:15:10 +05:30
prafull-opensignlabsandGitHub 4afca77d1e Update run-locally.md 2024-02-29 15:14:20 +05:30
prafull-opensignlabsandGitHub 53d8e60ec3 Update run-locally.md 2024-02-23 20:43:58 +05:30
prafull-opensignlabsandGitHub 23c22b79d8 Update run-locally.md 2024-02-23 20:40:39 +05:30
prafull-opensignlabsandGitHub 4943517145 Update run-locally.md 2024-02-23 20:12:42 +05:30
prafull-opensignlabsandGitHub c71398c6e3 Update run-locally.md 2024-02-23 20:09:39 +05:30
prafull-opensignlabsandGitHub dfaa278636 Update run-locally.md 2024-02-22 17:24:42 +05:30
prafull-opensignlabsandGitHub 139c3b42f5 Update run-locally.md 2024-02-22 17:18:16 +05:30
prafull-opensignlabsandGitHub d89c28334e Update run-locally.md 2024-02-22 17:15:31 +05:30
prafull-opensignlabsandGitHub 7638bcad02 Update run-locally.md 2024-02-22 17:15:13 +05:30
prafull-opensignlabsandGitHub 63090b82e3 Update run-locally.md 2024-02-22 17:11:07 +05:30
prafull-opensignlabsandGitHub 63b7cb8188 update info of env 2024-02-22 16:58:04 +05:30
prafull-opensignlabsandGitHub ad9dda27ba Update INSTALLATION.md 2024-02-22 16:39:14 +05:30
prafull-opensignlabsandGitHub 3f3137874a change sidebar position of installation instructions 2024-02-22 16:37:00 +05:30
prafull-opensignlabsandGitHub 440eaaeb26 Update title of installation instructiosn 2024-02-22 16:29:39 +05:30
prafull-opensignlabsandGitHub 2d6d8ce2be update run command 2024-02-22 16:25:45 +05:30
prafull-opensignlabsandGitHub 229d0731b8 Update INSTALLATION.md 2024-02-22 16:23:59 +05:30
prafull-opensignlabsandGitHub 418cd92f80 Update opensign.yaml 2024-02-16 19:56:49 +05:30
prafull-opensignlabsandGitHub 6e4ed4bc09 Update opensign.yaml 2024-02-16 16:43:42 +05:30
prafull-opensignlabsandGitHub 51b417aa7e Update opensign.yaml 2024-02-16 16:38:00 +05:30
prafull-opensignlabsandGitHub 0fc895ad17 Update opensign.yaml 2024-02-15 19:11:15 +05:30
prafull-opensignlabsandGitHub 2dea2172bc send in order 2024-02-15 19:04:20 +05:30
prafull-opensignlabsandGitHub fcd3c15ec7 Update opensign.yaml 2024-02-15 15:49:21 +05:30
prafull-opensignlabsandGitHub 4cd9b08698 Update opensign.yaml 2024-02-14 21:26:07 +05:30
prafull-opensignlabsandGitHub b21b641e2a Update opensign.yaml 2024-02-14 21:18:45 +05:30
prafull-opensignlabsandGitHub af9c8d71c6 removed binary api from document and template 2024-02-12 18:01:04 +05:30
prafull-opensignlabsandGitHub 8bd1891fcc Update opensign.yaml 2024-02-12 17:39:09 +05:30
prafull-opensignlabsandGitHub e5a62f17a5 Update opensign.yaml 2024-02-12 17:16:12 +05:30
prafull-opensignlabsandGitHub db383d0e88 Update opensign.yaml 2024-02-12 17:06:21 +05:30
prafull-opensignlabsandGitHub e519d86cad Update opensign.yaml 2024-02-09 17:31:54 +05:30
prafull-opensignlabsandGitHub bf68656d05 Update opensign.yaml 2024-02-09 13:56:43 +05:30
prafull-opensignlabsandGitHub 69913151b6 Update opensign.yaml 2024-02-09 13:47:27 +05:30
prafull-opensignlabsandGitHub 46312eb138 Update opensign.yaml 2024-02-09 12:43:17 +05:30
prafull-opensignlabsandGitHub 1a13936681 Update opensign.yaml 2024-02-09 12:35:33 +05:30
prafull-opensignlabsandGitHub 251ea22f5f Update opensign.yaml 2024-02-09 09:49:48 +05:30
prafull-opensignlabsandGitHub 8f8808ce1c Update opensign.yaml 2024-02-09 09:41:31 +05:30
prafull-opensignlabsandGitHub bb207b953c Update opensign.yaml 2024-02-09 09:35:34 +05:30
prafull-opensignlabsandGitHub 2984d6876d add event description in webhook 2024-02-09 09:25:56 +05:30
prafull-opensignlabsandGitHub 5d2b131c99 remove webhook description 2024-02-09 09:15:08 +05:30
prafull-opensignlabsandGitHub 43c9b4db9c Update opensign.yaml 2024-02-08 10:39:43 +05:30
prafull-opensignlabsandGitHub ce9e27e116 Update opensign.yaml 2024-02-08 10:29:28 +05:30
prafull-opensignlabsandGitHub e25b7deaf3 update description of webhook , create document, create template 2024-02-07 20:51:13 +05:30
prafull-opensignlabsandGitHub 81078073cb Update opensign.yaml 2024-02-02 18:48:59 +05:30
prafull-opensignlabsandGitHub e6e5db95ba Update opensign.yaml 2024-02-02 18:41:50 +05:30
prafull-opensignlabsandGitHub 2cf3af242b Update opensign.yaml 2024-02-02 12:30:49 +05:30
prafull-opensignlabsandGitHub ed664359a6 Update opensign.yaml 2024-02-01 19:46:46 +05:30
prafull-opensignlabsandGitHub 4a5e855b76 Update opensign.yaml 2024-01-29 18:40:43 +05:30
prafull-opensignlabsandGitHub 1e60863a40 Update opensign.yaml 2024-01-29 18:21:44 +05:30
prafull-opensignlabsandGitHub 10ad3ee5bd Update opensign.yaml 2024-01-29 18:20:02 +05:30
prafull-opensignlabsandGitHub 32c5a0a77a Update opensign.yaml 2024-01-29 15:16:37 +05:30
prafull-opensignlabsandGitHub b6651f12e2 Update opensign.yaml 2024-01-25 23:46:25 +05:30
prafull-opensignlabsandGitHub 15ad35bf76 fix: all body parameter must be in lowercase 2024-01-25 18:29:32 +05:30
prafull-opensignlabsandGitHub 9a986dd000 Update title of create template api 2024-01-24 23:40:13 +05:30
prafull-opensignlabsandGitHub 714146f616 update create template API 2024-01-24 23:34:25 +05:30
prafull-opensignlabsandGitHub 96d2b4e9fd Update createdocument api 2024-01-24 18:31:54 +05:30
prafull-opensignlabsandGitHub 122c42153e add webhook api 2024-01-24 12:37:58 +05:30
AmolandGitHub 32c4ee16a0 Create rename-document.md 2024-01-19 15:47:57 +05:30
AmolandGitHub 53cdb411b7 Update organize-documents.md 2024-01-19 15:36:10 +05:30
AmolandGitHub 0708e0ae1c Update intro.md 2024-01-19 15:27:29 +05:30
AmolandGitHub 95db24f8ed Delete docs/docs/help/New-Document/video-tutes.mdx 2024-01-19 15:26:58 +05:30
AmolandGitHub bcdd2e7feb Update REPORTING_GUIDELINES.md 2024-01-19 15:24:10 +05:30
AmolandGitHub 4adfa9f830 Update REPORTING_GUIDELINES.md 2024-01-19 15:23:30 +05:30
AmolandGitHub dcc8f99991 update video link 2024-01-19 14:57:01 +05:30
AmolandGitHub 3bdb56462d Update video-tutes.mdx 2024-01-19 14:47:50 +05:30
AmolandGitHub b8bffe97b5 Update video-tutes.mdx 2024-01-19 14:28:09 +05:30
AmolandGitHub af817b6bc3 Update video-tutes.mdx 2024-01-18 21:18:25 +05:30
nxglabs 8e1cbc65d7 update package lock 2024-01-18 21:10:41 +05:30
nxglabs e38a1f9c1a add help docs 2024-01-18 21:09:17 +05:30
nxglabs 50c3133dae docs updates 2024-01-18 21:09:17 +05:30
AmolandGitHub b1e2a74ad5 Create video-tutes.mdx 2024-01-18 20:40:56 +05:30
AmolandGitHub 7e9dc8cd65 Update package.json 2024-01-18 20:38:19 +05:30
AmolandGitHub 7d87cc27fc Update run-locally.md 2024-01-18 20:30:57 +05:30
AmolandGitHub 25714cde90 Update DigitalOcean.md 2024-01-18 20:28:23 +05:30
AmolandGitHub 8241482c19 Update run-locally.md 2024-01-18 20:23:11 +05:30
AmolandGitHub 3044e010f6 Update run-locally.md 2024-01-18 20:22:19 +05:30
AmolandGitHub 9743b933da Update DigitalOcean.md 2024-01-18 20:19:32 +05:30
AmolandGitHub 1ce8ec4758 Create run-locally.md 2024-01-18 20:16:38 +05:30
AmolandGitHub cb99b7646c Update intro.md 2024-01-18 20:14:56 +05:30
AmolandGitHub 5af7279c67 Delete docs/docs/self-host/tutorial-extras directory 2024-01-18 20:06:23 +05:30
AmolandGitHub 224d9f6787 Rename _category_.json to _category_.json 2024-01-18 20:06:11 +05:30
AmolandGitHub ed7df13f9b Update _category_.json 2024-01-18 20:05:55 +05:30
AmolandGitHub 2c5f6631d7 Delete docs/docs/self-host/tutorial-basics directory 2024-01-18 20:04:56 +05:30
AmolandGitHub a32b88f6b0 Rename docs/docs/self-host/oneclick-install_category_.json to docs/docs/self-host/One-click-Install/oneclick-install_category_.json 2024-01-18 20:02:49 +05:30
AmolandGitHub 88cb271332 Rename DigitalOcean.md to DigitalOcean.md 2024-01-18 20:02:15 +05:30
AmolandGitHub e18d1a7a16 Update DigitalOcean.md 2024-01-18 20:00:59 +05:30
AmolandGitHub b2dfc6f32c Update and rename create-a-page.md to DigitalOcean.md 2024-01-18 19:56:00 +05:30
AmolandGitHub a64e30a94c Update intro.md 2024-01-18 19:52:13 +05:30
AmolandGitHub 6d5b28f75f Update and rename docs/docs/self-host/tutorial-basics/_category_.json to docs/docs/self-host/oneclick-install_category_.json 2024-01-18 19:49:27 +05:30
AmolandGitHub c7decaec02 Update INSTALLATION.md 2024-01-18 19:45:33 +05:30
AmolandGitHub 8600437c5a Update COMMUNITY.md 2024-01-18 19:41:55 +05:30
AmolandGitHub ece3f42ab3 Update COMMUNITY.md 2024-01-18 17:20:06 +05:30
prafull-opensignlabsandGitHub 32be8dfe3a Update opensign.yaml 2024-01-17 17:01:26 +05:30
prafull-opensignlabsandGitHub 2aebceda24 remove duplicate header 2024-01-17 11:55:41 +05:30
prafull-opensignlabsandGitHub 85b463f0e0 Update description of apis 2024-01-17 11:23:43 +05:30
prafull-opensignlabsandGitHub f6c8d4f51a change request body for create document and template 2024-01-17 10:04:49 +05:30
AmolandGitHub b84c1c8821 Update server url 2024-01-16 18:14:10 +05:30
prafull-opensignlabsandGitHub a3334fdf2d remove code from response 2024-01-15 22:17:51 +05:30
prafull-opensignlabsandGitHub d6b12b75b0 Update create template template response 2024-01-15 16:09:15 +05:30
prafull-opensignlabsandGitHub a9e623391b Update response of create contact 2024-01-15 15:35:36 +05:30
prafull-opensignlabsandGitHub fd34ba778c Update opensign.yaml 2024-01-15 13:17:55 +05:30
prafull-opensignlabsandGitHub d00d31eaf2 Update response syntax 2024-01-15 13:03:23 +05:30
prafull-opensignlabsandGitHub 016a0f62bd Update opensign.yaml 2024-01-15 12:11:54 +05:30
prafull-opensignlabsandGitHub cf52292f7c Update documentlist 2024-01-15 11:59:17 +05:30
prafull-opensignlabsandGitHub 8b26c94ada Update document list api 2024-01-12 18:19:02 +05:30
prafull-opensignlabsandGitHub 582b10b5ee Update opensign.yaml 2024-01-12 13:23:34 +05:30
prafull-opensignlabsandGitHub b51e152d10 Update opensign.yaml 2024-01-12 12:35:01 +05:30
prafull-opensignlabsandGitHub 5f197f5f9f Update opensign.yaml 2024-01-12 11:03:13 +05:30
AmolandGitHub 5a3ee25dfd Add clean API docs step 2024-01-12 00:57:03 +05:30
AmolandGitHub 7050138e5e Add build api-docs step 2024-01-12 00:49:06 +05:30
prafull-opensignlabsandGitHub 049d268314 Update template section 2024-01-11 19:59:07 +05:30
prafull-opensignlabsandGitHub 6f71afb418 Update template section name 2024-01-11 17:08:54 +05:30
AndrewandGitHub 7e65692b5a Update CODE_OF_CONDUCT.md 2024-01-01 01:26:47 +05:30
AndrewandGitHub bd1f44479b Delete docs/docs/contribute/tutorial-extras directory 2024-01-01 01:22:47 +05:30
AndrewandGitHub c0935001ce Delete docs/docs/contribute/tutorial-basics directory 2024-01-01 01:22:24 +05:30
AndrewandGitHub f65ab5dfea Update CODE_OF_CONDUCT.md 2024-01-01 01:19:42 +05:30
AndrewandGitHub dbb7fd576f Create REPORTING_GUIDELINES.md 2024-01-01 01:17:56 +05:30
AndrewandGitHub be5cc6126e Update CODE_OF_CONDUCT.md 2024-01-01 01:16:33 +05:30
AndrewandGitHub 6a4eb24630 Update CODE_OF_CONDUCT.md 2024-01-01 01:14:59 +05:30
AndrewandGitHub 61a8bc519f Update sign-yourself.md 2024-01-01 01:10:45 +05:30
AmolandGitHub b15f3c0333 Update request-signatures.md 2023-12-30 00:44:56 +05:30
AmolandGitHub 5830fda578 Update request-signatures.md 2023-12-30 00:44:19 +05:30
AmolandGitHub 102f837263 Update intro.md 2023-12-28 01:30:14 +05:30
AmolandGitHub 5cee42a76e Update intro.md 2023-12-28 01:29:32 +05:30
AmolandGitHub 8fc7cc924a Update sign-yourself.md 2023-12-28 01:20:25 +05:30
AmolandGitHub 80170b814f Create COMMUNITY.md 2023-12-28 01:17:24 +05:30
AmolandGitHub 91fcb71bc3 Update intro.md 2023-12-28 01:13:45 +05:30
AmolandGitHub eb13d91bbb Create INSTALLATION.md 2023-12-28 01:11:46 +05:30
AmolandGitHub a464437b3a Create CODE_OF_CONDUCT.md 2023-12-28 01:10:31 +05:30
AmolandGitHub 3a67dc9b08 Update intro.md 2023-12-28 01:07:49 +05:30
AmolandGitHub a6ff20a657 Update intro.md 2023-12-28 01:00:24 +05:30
AmolandGitHub 4bf380edf8 Update intro.md 2023-12-28 00:58:03 +05:30
AmolandGitHub ab3148b705 Update intro.md 2023-12-28 00:55:20 +05:30
AmolandGitHub 2ffd1ebf2a Update sign-yourself.md 2023-12-28 00:54:17 +05:30
AmolandGitHub d1155bc8ef Update intro.md 2023-12-28 00:44:42 +05:30
AmolandGitHub 33ff706803 docs: Update dropbox icon documentation 2023-12-27 16:46:47 +05:30
nxglabs 7fdd819722 docs: update docs 2023-12-27 02:35:12 +05:30
AmolandGitHub aeaea23098 docs: fix build issue due to no closing img tag 2023-12-27 02:28:55 +05:30
AmolandGitHub ff7f45f055 docs: update screenshot 2023-12-27 02:26:04 +05:30
nxglabs 40665684a8 docs: update intro 2023-12-27 02:23:40 +05:30
nxglabs 861f822151 docs: update docs 2023-12-27 02:19:58 +05:30
nxglabs 62541f1450 docs: fix broken link 2023-12-25 03:30:46 +05:30
nxglabs a356e77f54 docs: fix broken link 2023-12-25 03:29:29 +05:30
nxglabs 74abeff8d9 docs: OpenAPI setup 2023-12-25 03:22:18 +05:30
AmolandGitHub 78dfaccd38 docs: fix broken link 2023-12-24 18:39:33 +05:30
AmolandGitHub 757b72161a docs: add closing img tag 2023-12-24 18:20:26 +05:30
AmolandGitHub c2065bf752 docs: move to other directory 2023-12-24 18:09:30 +05:30
AmolandGitHub 5608dae6e3 docs: add sign yourself documentation 2023-12-24 18:05:03 +05:30
AmolandGitHub 2288880eba docs: update intro 2023-12-24 17:25:32 +05:30
nxglabs ba7d0a9723 chore: add CNAME file for setting up custom domain 2023-12-18 23:09:19 +05:30
nxglabs 1ac8800b40 docs: setup help docs 2023-12-18 23:00:04 +05:30
nxglabs bb7827b762 chore: change the build directory 2023-12-18 20:56:52 +05:30
nxglabs 8caa0275ab chore: change working dir 2023-12-18 20:49:35 +05:30
nxglabs 7e1d0f8a49 chore: add debig code 2023-12-18 20:45:33 +05:30
nxglabs f7f5c2de37 chore: fix syntax issue 2023-12-18 20:44:09 +05:30
nxglabs f75710c836 fix syntax 2023-12-18 20:42:40 +05:30
nxglabs a02cc89e5d chore: change dir 2023-12-18 20:41:37 +05:30
nxglabs f54a51c546 chore: change yarn to npm 2023-12-18 20:38:07 +05:30
nxglabs b12eb87b38 chore: setup github pages action to publish docs 2023-12-18 20:34:20 +05:30
nxglabs 93f7408847 docs: add docs verson 1 2023-12-18 20:21:12 +05:30
103 changed files with 30698 additions and 0 deletions
+50
View File
@@ -0,0 +1,50 @@
name: Deploy to GitHub Pages
on:
push:
branches:
- feat-docs
# Review gh actions docs if you want to further define triggers, paths, etc
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#on
permissions:
contents: write
jobs:
deploy:
name: Deploy to GitHub Pages
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
cache: npm
- name: Install dependencies
working-directory: ./docs
run: npm ci
- name: Clean api-docs
working-directory: ./docs
run: npm run docusaurus clean-api-docs all
- name: Build api-docs
working-directory: ./docs
run: npm run docusaurus gen-api-docs all
- name: Build website
working-directory: ./docs
run: npm run build
# Popular action to deploy to GitHub Pages:
# Docs: https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-docusaurus
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
# Build output to publish to the `gh-pages` branch:
publish_dir: ./docs/build
# The following lines assign commit authorship to the official
# GH-Actions bot for deploys to `gh-pages` branch:
# https://github.com/actions/checkout/issues/13#issuecomment-724415212
# The GH actions bot is used by default if you didn't specify the two fields.
# You can swap them out with your own user credentials.
user_name: github-actions[bot]
user_email: 41898282+github-actions[bot]@users.noreply.github.com
+20
View File
@@ -0,0 +1,20 @@
# Dependencies
/node_modules
# Production
/build
# Generated files
.docusaurus
.cache-loader
# Misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*
+41
View File
@@ -0,0 +1,41 @@
# Website
This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator.
### Installation
```
$ yarn
```
### Local Development
```
$ yarn start
```
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
### Build
```
$ yarn build
```
This command generates static content into the `build` directory and can be served using any static contents hosting service.
### Deployment
Using SSH:
```
$ USE_SSH=true yarn deploy
```
Not using SSH:
```
$ GIT_USER=<Your GitHub username> yarn deploy
```
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
+3
View File
@@ -0,0 +1,3 @@
module.exports = {
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
};
+12
View File
@@ -0,0 +1,12 @@
---
slug: first-blog-post
title: First Blog Post
authors:
name: Gao Wei
title: Docusaurus Core Team
url: https://github.com/wgao19
image_url: https://github.com/wgao19.png
tags: [hola, docusaurus]
---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
+44
View File
@@ -0,0 +1,44 @@
---
slug: long-blog-post
title: Long Blog Post
authors: endi
tags: [hello, docusaurus]
---
This is the summary of a very long blog post,
Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
<!--truncate-->
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
+20
View File
@@ -0,0 +1,20 @@
---
slug: mdx-blog-post
title: MDX Blog Post
authors: [slorber]
tags: [docusaurus]
---
Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
:::tip
Use the power of React to create interactive blog posts.
```js
<button onClick={() => alert('button clicked!')}>Click me!</button>
```
<button onClick={() => alert('button clicked!')}>Click me!</button>
:::
Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

+25
View File
@@ -0,0 +1,25 @@
---
slug: welcome
title: Welcome
authors: [slorber, yangshun]
tags: [facebook, hello, docusaurus]
---
[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
Simply add Markdown files (or folders) to the `blog` directory.
Regular blog authors can be added to `authors.yml`.
The blog post date can be extracted from filenames, such as:
- `2019-05-30-welcome.md`
- `2019-05-30-welcome/index.md`
A blog post folder can be convenient to co-locate blog post images:
![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)
The blog supports tags as well!
**And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.
+17
View File
@@ -0,0 +1,17 @@
endi:
name: Endilie Yacop Sucipto
title: Maintainer of Docusaurus
url: https://github.com/endiliey
image_url: https://github.com/endiliey.png
yangshun:
name: Yangshun Tay
title: Front End Engineer @ Facebook
url: https://github.com/yangshun
image_url: https://github.com/yangshun.png
slorber:
name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png
+26
View File
@@ -0,0 +1,26 @@
# Overview
OpenSign™ 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.
# Key Features
- **Document Creation**: Allows for the generation of digital documents directly through the API.
- **Template Creation**: Supports the creation and management of document templates for consistent use across various applications.
- **Electronic Signature Integration**: Provides capabilities for incorporating electronic signatures into documents.
- **User Management**: Facilitates the management of user accounts, permissions, and roles within an application.
- **Contacts Management**: Enables efficient handling of contact information and integration with document processes.
- **Compliance and Security**: Ensures all operations adhere to global legal standards for electronic signatures and data security.
- **Customization and Flexibility**: Offers highly customizable workflows, tailored to meet diverse organizational requirements.
- **Cross-Platform Compatibility**: Assures seamless functionality across various platforms and devices.
# Target Audience
- **Developers and IT Professionals**: Implementing digital document management and electronic signature solutions.
- **Businesses and Enterprises**: Seeking efficient and secure digital document workflows.
- **Legal and Compliance Teams**: Requiring digital solutions compliant with legal standards for signatures and document management.
# Usage Scenarios
- Streamlining contract creation and signing processes in corporate environments.
- Managing user permissions and contacts for large-scale document workflows.
- Utilizing templates for standardized document processes in legal, financial, and governmental sectors.
File diff suppressed because it is too large Load Diff
+71
View File
@@ -0,0 +1,71 @@
---
sidebar_position: 1
title: Code of conduct
---
# Code of Conduct for OpenSign
## 1. Introduction
A primary goal of OpenSign is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe, and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).
This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior.
We invite all those who participate in OpenSign to help us create safe and positive experiences for everyone.
## 2. Open Source Citizenship
A supplemental goal of this Code of Conduct is to increase open source citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community.
Communities mirror the societies in which they exist and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society.
## 3. Expected Behavior
The following behaviors are expected and requested of all community members:
- Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
- Exercise consideration and respect in your speech and actions.
- Attempt collaboration before conflict.
- Refrain from demeaning, discriminatory, or harassing behavior and speech.
- Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential.
## 4. Unacceptable Behavior
The following behaviors are considered harassment and are unacceptable within our community:
- Violence, threats of violence, or violent language directed against another person.
- Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
- Posting or displaying sexually explicit or violent material.
- Posting or threatening to post other peoples personally identifying information ("doxing").
- Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
- Inappropriate photography or recording.
- Inappropriate physical contact. You should have someones consent before touching them.
- Unwelcome sexual attention. This includes sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
- Deliberate intimidation, stalking or following (online or in person).
- Advocating for, or encouraging, any of the above behavior.
## 5. Consequences of Unacceptable Behavior
Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated.
Anyone asked to stop unacceptable behavior is expected to comply immediately.
If a community member engages in unacceptable behavior, the community organizers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event).
## 6. Reporting Guidelines
If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community organizer as soon as possible by emailing [contact@opensignlabs.com](mailto:contact@opensignlabs.com).
[Reporting guidelines](REPORTING_GUIDELINES.md)
## 7. Addressing Grievances
If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify the OpenSign administration with a concise description of your grievance. Your grievance will be handled in accordance with our existing governing policies.
## 8. Scope
We expect all community participants (contributors, paid or otherwise; sponsors; and other guests) to abide by this Code of Conduct in all community venues—online and in-person—as well as in all one-on-one communications pertaining to community business.
## 9. Contact info
[contact@opensignlabs.com](mailto:contact@opensignlabs.com)
+8
View File
@@ -0,0 +1,8 @@
# Community at OpenSign™
Welcome to the OpenSign™ Community page! OpenSign™ is dedicated to fostering a vibrant and engaging community where members can connect, share ideas and collaborate on the OpenSign™ 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™ 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™ as the premier open-source [alternative to DocuSign](https://www.opensignlabs.com).
- [Discord](https://discord.com/invite/xe9TDuyAyj)
- [Twitter](https://www.twitter.com/opensignhq)
- [LinkedIn](https://www.linkedin.com/company/opensign™/)
- [Facebook](https://www.facebook.com/profile.php?id=61551030403669)
+50
View File
@@ -0,0 +1,50 @@
---
sidebar_position: 4
title: Installation instructions
---
# INSTALLATION INSTRUCTIONS
You can use our app as a cloud version from [OpenSignLabs](https://www.opensignlabs.com)
or follow below instructions to install it on your own infrastructure.
- Localhost(Frontend only)
- Localhost(Docker)
## Localhost(Frontend only)
This is the easiest way to run the frontend application for development or testing purpose without the hassle of installing backend & DB. All the features including document upload, signing, email notifications will work seamlessly from staging backend.
**Warning:** All data, including user accounts and documents, is stored in the staging backend. This data will be erased every time there is a merge to the main branch. As a result, you may need to recreate user accounts repeatedly. If you find that login attempts are failing, it is likely because the data has been cleared due to a recent merge.
Below are the steps to follow -
- [Clone the repository](https://help.github.com/articles/cloning-a-repository/) to your local machine using below command -
```
git clone https://github.com/OpenSignLabs/OpenSign.git
```
- Switch to the newly created OpenSign directory.
```
cd OpenSign
```
- Copy the .env.frontend_dev file to apps/OpenSign/.env using below command(on mac & linux). For windows use COPY command instead.
```
cp .env.frontend_dev apps/OpenSign/.env
```
- Switch to apps/OpenSign directory.
```
cd apps/OpenSign
```
- Install NPM packages using
```
npm install
```
- Run the project locally using
```
npm run start-dev
```
You should be able to access the application from http://localhost:3000 after this.
Create an account by signing-up and start contributing.
## Localhost(Docker)
- Please refer this documentation => [click here](https://docs.opensignlabs.com/docs/self-host/docker/run-locally)
@@ -0,0 +1,59 @@
# OpenSign™ Reporting Guidelines
This document provides guidelines for reporting issues, suggesting enhancements, and submitting pull requests to the [OpenSign™ GitHub repository](https://github.com/OpenSignLabs/OpenSign). Adhering to these guidelines helps maintain the project's quality and efficiency.
## Issues
When creating an issue, include the following:
### Bug Reports
- **Title**: Concise and informative.
- **Description**: Detailed description of the issue.
- **Steps to Reproduce**: Clear steps to reproduce the bug.
- **Expected Behavior**: Describe what you expected to happen.
- **Actual Behavior**: Describe what actually happened.
- **Screenshots**: If applicable, add screenshots to help explain your issue.
- **Environment**: Include details like OS, browser version, and OpenSign™ version.
- **Logs**: Attach relevant logs or error messages.
### Feature Requests
- **Title**: Short and descriptive.
- **Description**: Detailed explanation of the feature and its benefits.
- **Use Case**: Describe a specific use case or problem this feature addresses.
- **Proposed Solution**: If possible, suggest an implementation idea.
- **Additional Context**: Any other information or screenshots.
## Pull Requests
For submitting pull requests, follow these steps:
- **Branch Naming**: Use a short, descriptive name for your branch.
- **Commit Messages**: Write clear, concise commit messages.
- **Description**: Provide a detailed description of changes.
- **Testing**: Describe testing done to validate the changes.
- **Documentation**: Update relevant documentation.
- **Screenshots**: Include before and after screenshots for UI changes.
## Code of Conduct
All contributors are expected to follow the project's [Code of Conduct](https://docs.opensignlabs.com/docs/contribute/CODE_OF_CONDUCT).
## Getting Help
If you need help or have questions:
- Visit our [GitHub Discussions](https://github.com/OpenSignLabs/OpenSign/discussions) page.
- Contact us through our [Discord community](https://discord.com/invite/xe9TDuyAyj).
## Stay Connected
- [Twitter](https://twitter.com/OpenSignHQ)
- [Facebook](https://www.facebook.com/profile.php?id=61551030403669)
- [LinkedIn](https://www.linkedin.com/company/opensign%E2%84%A2/)
- [YouTube](https://www.youtube.com/@opensignhq)
- [Website](http://www.opensignlabs.com)
Thank you for contributing to OpenSign™!
+74
View File
@@ -0,0 +1,74 @@
---
sidebar_position: 1
---
# Contributing to OpenSign
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.
## Table of Contents
1. [Getting Started](#getting-started)
2. [Code of Conduct](#code-of-conduct)
3. [How Can I Contribute?](#how-can-i-contribute)
- [Reporting Bugs](#reporting-bugs)
- [Suggesting Enhancements](#suggesting-enhancements)
- [Pull Requests](#pull-requests)
4. [Style Guidelines](#style-guidelines)
- [Git Commit Messages](#git-commit-messages)
- [JavaScript Style Guide](#javascript-style-guide)
5. [Community](#community)
6. [License](#license)
## Getting Started
- Fork the [OpenSign repository](https://github.com/OpenSignLabs/OpenSign) to your GitHub account.
- Clone your fork locally: `git clone https://github.com/your-username/OpenSign.git`
- Create a new branch for your contribution: `git checkout -b feature/your-feature-name`
- Make your contributions.
- Push your branch to your fork: `git push origin feature/your-feature-name`
- Create a Pull Request from your fork to the OpenSign repository.
## Code of Conduct
We expect all our contributors to adhere to the [Code of Conduct](CODE_OF_CONDUCT.md). Please read it thoroughly before contributing.
## How Can I Contribute?
### Reporting Bugs
- Check the [Issues](https://github.com/OpenSignLabs/OpenSign/issues) to see if the bug has already been reported. If it has, add any additional information in the comments.
- If the bug hasnt been reported, create a new issue. Please provide as much information as possible to help maintainers reproduce the bug.
### Suggesting Enhancements
- Use the [Issues](https://github.com/OpenSignLabs/OpenSign/issues) section to suggest any enhancements or new features.
- Clearly describe your suggestion, explaining the problem it solves or the functionality it adds.
### Pull Requests
- Ensure any install or build dependencies are removed before the end of the layer when doing a build.
- Update the README.md with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations, and container parameters.
- You may merge the Pull Request in once you have the sign-off of two other developers, or if you do not have permission to do that, you may request the second reviewer to merge it for you.
## Style Guidelines
### Git Commit Messages
- Use the present tense ("Add feature" not "Added feature")
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
- Limit the first line to 72 characters or less
### JavaScript Style Guide
Adhere to the [Standard JavaScript Style Guide](https://standardjs.com).
## Community
Engage with the community on our [Gitter Channel](https://gitter.im/OpenSignLabs/community) or join our monthly community calls. Details can be found on our [Community Page](COMMUNITY.md).
## License
By contributing, you agree that your contributions will be licensed under its [AGPL v3 License](https://github.com/OpenSignLabs/OpenSign/LICENSE).
---
@@ -0,0 +1,10 @@
---
sidebar_position: 2
title: Why am I getting 'Ensure this field is accurately filled and meets all requirements'?
---
# Why am I getting 'Ensure this field is accurately filled and meets all requirements'?
This happens when you leave a field blank or when you dont enter correct values in the field, for example not entering email address in correct format.
At OpenSign we constantly try to improve the user experience our platform offers, in the latest version of OpenSign the field for which the validation has failed is automatically highlighted making it easy to identify & fix the incorrect values being entered.
You can check the bookmark icons on the page previews on the left hand side to quickly find all the pages that have fields meant to be filled by you.
<img width="362" alt="image" src="https://github.com/OpenSignLabs/OpenSign/assets/5486116/0e9458d1-3013-4af8-a98f-c7ff01d5d4f2" />
+7
View File
@@ -0,0 +1,7 @@
---
sidebar_position: 1
title: Why is there no dropdown list when I sign a document myself?
---
# Why is there no dropdown list when I sign a document myself?
The dropdown list field is available only when you request a signature from others or when you create a template. This is because dropdown lists function as temporary widgets, allowing the user to select one of multiple values. Once a signer selects a value from the dropdown, it is embedded into the document as text. When you sign a document yourself, OpenSign digitally signs it immediately upon clicking the finish button. Therefore, you can use the text widget to add the necessary text to the document.
+8
View File
@@ -0,0 +1,8 @@
{
"label": "FAQs",
"position": 6,
"link": {
"type": "generated-index",
"description": "FAQs on Utilizing Various Features of OpenSign™ - The World's Leading Free & Open Source Document Signing Platform."
}
}
@@ -0,0 +1,8 @@
{
"label": "Create New OpenSign Document",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn how to create Document in OpenSign."
}
}
@@ -0,0 +1,87 @@
---
sidebar_position: 4
title: Enforce email OTP verification
---
# How to Use the "Enable OTP Verification" Feature in OpenSign
The "Enable OTP Verification" feature in OpenSign is designed to add an extra layer of security to the document-signing process by verifying the signers email address. Heres an in-depth look at how it works, when to use it, and its impact on the signing process.
## What is OTP Verification?
**OTP (One-Time Password) Verification** is a security feature that requires each signer to enter a unique code sent to their email address before they can sign the document. This ensures that only individuals with access to the specified email address can complete the signing process, adding an extra level of authenticity to each signature.
## How to Enable OTP Verification
1. **Prepare the Document**:
- Navigate to "Main Menu" -> "Request Signatures" & start by uploading the document you want to send for signatures in OpenSign.
2. **Add Signers**:
- Specify the individuals who need to sign the document by entering their email addresses.
3. **Configure Security Settings**:
- Click the "Advanced Options"
- <img width="499" alt="image" src="https://github.com/user-attachments/assets/2f099abb-9421-49fb-b53a-7d9a610a8cfe"/>
- Under **Security Settings**, find the option labeled "Enable OTP Verification."
- Select **Yes** to activate OTP verification for this document.
- <img width="1125" alt="image" src="https://github.com/user-attachments/assets/48d15c53-5eba-407c-8f81-1b17a47f32cb"/>
4. **Send the Document**:
- Once all settings are configured, proceed to send the document to the signers.
## How OTP Verification Works for Signers
When OTP verification is enabled, heres what the signing experience looks like for recipients:
1. **Email Notification**:
- The signer receives an email notification prompting them to review and sign the document.
2. **OTP Verification Prompt**:
- When the signer clicks the link to sign the document, they are required to enter a one-time password (OTP).
- An OTP is sent to the signers email address. They must enter this code on the signing page to proceed.
3. **Document Signing**:
- After entering the correct OTP, the signer gains access to the document and can proceed with adding their signature.
## Benefits of Using OTP Verification
- **Enhanced Security**: Only users with access to the designated email account can sign, reducing the risk of unauthorized access.
- **Reliable Authentication**: Verifying the signers email adds an additional level of validation, helping to ensure the authenticity of each signature.
## Impact on the Completion Certificate
Once the document is fully signed by all parties, OpenSign generates a **Completion Certificate**. This certificate contains detailed information about the signing process, including:
- **Signers Identity**: Each signers name and email address.
- **OTP Verification Status**: If OTP verification was enabled for the document, this is noted in the completion certificate. This notation serves as proof that the signers email address was verified before the document was signed.
This feature makes it clear that the signing process involved OTP verification, adding credibility to the documents legal standing.
## When to Use OTP Verification
Consider enabling OTP verification in scenarios where:
- **Confidentiality** is critical: You want to ensure that only authorized individuals with access to the signers email can view and sign the document.
- **Authentication** is a priority: OTP adds an extra layer of verification, enhancing the documents validity and security.
- **Compliance** is required: Certain regulations or standards may necessitate an additional verification step for document signing.
## Disabling OTP Verification
If OTP verification is unnecessary for a particular document:
1. Under the **Security Settings**, select **No** for the "Enable OTP Verification" option.
2. By disabling OTP verification, recipients can directly access and sign the document without needing to enter an OTP.
## Summary
The "Enable OTP Verification" feature in OpenSign is a powerful tool for ensuring that only verified individuals can sign documents. By sending a unique code to each signers email and requiring it before signing, this feature strengthens security and authenticity. The use of OTP verification is also recorded in the completion certificate, providing a clear record of email verification.
Use OTP verification whenever you need an added layer of email-based security and authenticity in your document signing workflows.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
@@ -0,0 +1,9 @@
---
sidebar_position: 3
title: Navigate between pages of a document
---
# How to navigate between pages of a document in OpenSign™?
To navigate between pages of a document that you have uploaded either click on the 'prev' & 'next' buttons at the top or click on any of the page previews loaded on the left side -
![image](https://github.com/OpenSignLabs/OpenSign/assets/5486116/658c1bbc-84af-4dca-a12b-54071c236260)
@@ -0,0 +1,166 @@
---
sidebar_position: 2
title: Request signatures
---
# Request signatures using OpenSign™
## Interface Overview
The OpenSign™ Request signatures interface is designed to streamline the process of creating, preparing, and sending documents for electronic signature.
# How to Create and Send a Document for Signature with OpenSign™
### Step 1: Begin New Document Creation
- **Navigate to Request Signatures form**: Start by navigating to 'Request Signatures' from the main menu to initiate the creation of a document for signatures.
<img width="800" alt="request signatures" src="https://github.com/user-attachments/assets/94112aec-4581-46a5-8e09-b6fc42e9e72a" />
### Step 2: Uploading Your Document
- **[2] Choose File**: Once the "Request signature" page opens, click here to select and upload the document file from your computer that needs to be signed.
- **[3] Choose File from Dropbox**: Click the dropbox icon to select the document file from your dropbox account.
### Step 3: Entering Document Details And Signers
- **[4] Title** *(Required)*: Input the title of your document. This identifier will be visible to signers and in your document management.
- **[5] Signers**: Use the dropdown to select existing signers or use the addition button to add a new signer who needs to sign the document. (Here, add the signer's details such as name, email, and phone number).
- **[6] Note**: Optionally add a note to give context or instructions regarding the document.
### Step 4: Organizing Your Document
- **[7] Folder**: Select a folder where you want the document to be stored, or leave it to default to the 'Root' folder. You can browse your documents in a beautiful explorer view by navigating to "OpenSign™ Drive".
### Step 5: Setting the Time Frame
- **[8] Time To Complete (Days)** *(Required)*: Specify the number of days the signers have to complete the signatures. After that, the document will no longer be available for signing.
### Step 6: Set the sending order
- **[9] Send in Order**
- **If you choose:**
- **Yes**: Selecting this option will send the signing request to the first signer initially. Once the first signer completes their part, the next signer in the sequence will receive the request. This process continues until all signers have signed the document. This method ensures that the document is signed in a specific order.
- **No**: Selecting this option will send the signing links to all signers simultaneously. Every signer can sign the document at their convenience, regardless of whether other signers have completed their signatures. This method is faster but does not enforce any signing order among the participants.
Select the option that best suits the needs of your document processing.
### Step 7: Auto reminder (feature only avilable for the subscribed user)
- **[10]** Once you enable the auto reminder, a text field will appear allowing you to set the reminder for a specific number of days.
- **Remind once in every (Days)**: Here, you can set the number of days for the reminder.
### Step 8: Proceed to Document Creation Panel
- **Next**: Once all the necessary fields are filled, click this button to proceed to create the document for signing.
- **Cancel**: If you need to start over or make changes, click this button to clear the form.
### Step 9: Document creation
<img width="800" alt="request signatures" src="https://github.com/user-attachments/assets/b4e6f257-e362-46a7-b809-546f0e5999fc" />
- **[1] Add signature widget**: Once your document is loaded in the document creation panel, you'll need to add a signature widget for each signer. OpenSign provides an intuitive interface for this task. Select the signer from the right side panel, click on the signature widget, and position it where the signature is required.
Use the option on the right side to add recipients if you need to include additional signers. You can place multiple signature widgets for each signer, as required.
After placing the Signature widget, you will see the options on the widget such as:
- **Add Signer/Change Signer**: Clicking the first icon on the signature widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- **Copy Signature**: Clicking on this option reveals the following choices.
- All pages: It will copy the signature widget to all pages.
- All pages but last: It will copy the signature widget to all pages except the last page.
- All pages but first: It will copy the signature widget to all pages except the first page.
- **[2] Add other widgets**: Depending on your needs, you can include additional widgets such as:
- **Stamp**: After placing the Stamp widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can specify whether this widget is mandatory or optional during the document signing.
- Add Signer/Change Signer: Clicking the second option on the stamp widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy Stamp: Clicking on this option reveals the following choices.
- All pages : It will copy the stamp widget to all pages.
- All pages but last: It will copy the stamp widget to all pages except the last page.
- All pages but first: It will copy the stamp widget to all pages except the first page.
- **Initials**: After placing the Initials widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can specify whether this widget is mandatory or optional during the document signing.
- Add Signer/Change Signer: Clicking the first icon on the Initials widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy Initials: Clicking on this option reveals the following choices.
- All pages : It will copy the stamp widget to all pages.
- All pages but last: It will copy the stamp widget to all pages except the last page.
- All pages but first: It will copy the stamp widget to all pages except the first page.
- **Name**: After placing the name widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Name widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the name widget.
- **Job title**: After placing the job title widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Job title widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the job title widget.
- **Company**: After placing the company widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Company widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the Company widget.
- **Date**: After placing the date widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can choose from various date formats.
- Add Signer/Change Signer: Clicking the first icon on the Date widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the date widget.
- **Text**: After placing the Text widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Copy : Clicking on this you can ducplicate the Text widget.
- **Text Input**: After placing the Text Input widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Text Input widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the Text Input widget.
- **Checkbox**: Once you drop the checkbox widget, a popup will open where you can set the checkbox name and options. Additionally, there is few optiona available like you can set Minimum check, maximum check also whether this check box is readonly also hide label option.
- Add Signer/Change Signer: Clicking the first icon on the CheckBox widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Dropdown**: Once you drop the dropdown widget, a popup will open where you can set the dropdown name and options. Additionally, there is few option available like you can set default value, also whether this dropdown is required or optional.
- Add Signer/Change Signer: Clicking the first icon on the Dropdown widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Radio button**: Once you drop the radio button widget, a popup will open where you can set the radio button name and options. Additionally, there is few option available like you can set default value, also whether this radio button is readonly also hide label option.
- Add Signer/Change Signer: Clicking the first icon on the Radio button widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Image**: After placing the Image widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can specify whether this widget is mandatory or optional during the document signing.
- Add Signer/Change Signer: Clicking the first icon on the Image widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Email**: After placing the email widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Email widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can duplicate the email widget.
### Step 10: Next:
- **Next**: After adding the widgets and signatures, click the 'Next' button. The document will then be created.
### Step 11: Send Mail
After finishing the document creation, a 'Send Mail' popup will appear, offering options to Send Email, Customize Email, Copy Link, or Share the document.
- Send Email: Click the 'Send' button to send the document for signing to all signers. If the sending order is set to 'Yes', it will send the document to the first signer.
- Customize Email: Click the 'Customize Email' button to open the email editor. Here, you can set variables and customize the content. After clicking 'Send', the document will be sent for signing to all signers, or if the sending order is set to 'Yes', it will be sent to the first signer with the customized email.
- Copy Link: You can copy the link to sign the document.
- Share: Use this option to share the document via email, WhatsApp and other Windows apps
<img width="800" alt="request signatures" src="https://github.com/user-attachments/assets/e2344479-daae-43ff-a61a-14ea98b237d6" />
## Signers Signing Process
### Step 12: Email OTP verification
Once the email is received, the signer can click the 'Sign Here' button. This will open the email verification page. After clicking the 'Get Verification Code' button, an OTP (one-time password) will be sent to the signers email address. Enter the received OTP into the verification textbox and click the 'Verify' button.
<div>
<img width="800" alt="OpenSign send OTP" src="https://github.com/user-attachments/assets/b82c796a-98e3-4296-bde1-fe86b1b993ad" />
</div>
<div>
<img width="800" alt="OpenSign verify otp" src="https://github.com/user-attachments/assets/63cf4b75-9d47-4630-a83c-e916a5c13b3c" />
</div>
### Step 13: Finalizing the Process:
After verification, the signer will be redirected to the document signing page, where he can view the document received for signing. To sign, the signer simply clicks on the signature widget, which allows them to draw, upload a digitally scanned signature, or type the signature.
After filling out all assigned widgets, click the 'Finish' button. Once the document is finished,.
- The signer has the option of downloading or printing the signed document. He will also obtain the completion certificate if he is the final signer.
- If there are more than one signer, the document will be immediately sent to the next signer. Once all signers have finished their signatures, they can download and print the signed document as well as the completion certificate.
<img width="800" alt="OpenSignFinalStep" src="https://github.com/user-attachments/assets/f4783aa0-2879-4ec2-9ddc-16d59f3a1fc0" />
## Additional Information
- All fields marked with an asterisk (*) must be completed before the document can be submitted.
- Ensure that the document format is supported by OpenSign before uploading.
- Signed documents can be accessed in the designated 'Root' folder or the one you have specified.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
@@ -0,0 +1,86 @@
---
sidebar_position: 1
title: Sign your-self
---
# Sign your-self using OpenSign™
## Interface Overview
# How to digitally sign a document using OpenSign™ for free?
OpenSign lets you digitally sign documents that don't need to be sent to anybody with ease. This feature is available in all the plans including **OpenSign free**.
After login, you will be directed to the OpenSign dashboard. From the left-side menu, click on "Sign yourself" or by clicking the button on the Dashboard.
### Step 1: Uploading Your Document
- **[1] Choose File**: Once the "Sign Yourself" page opens, click here to upload the document you want to sign from your computer.
- **[2] Upload from Dropbox**: To upload a document directly from your Dropbox account, click the Dropbox icon. You may need to provide permissions to access the file when you do it for the first time.
```The maximum document size allowed is 20MB.```
### Step 2: Document Information
- **[1] Title** *(Required)*: Enter a title for your document. This will help you identify it later in OpenSign™.
- **[2] Note**: Provide an optional note for further context about the document.
<img width="918" alt="OpenSign_Signyourself" src="https://github.com/user-attachments/assets/41c0f460-23b6-4ab0-befd-7fba8e845c23" />
### Step 3: Document Organization
- **[1] Folder**: Select a folder where you want the document to be stored, or leave it to default to the 'Root' folder. You can browse your documents in a beautiful explorer view by navigating to "OpenSign™ Drive".
- **[2] Root**: This is your default directory. Click the pencil icon to create or choose a different folder.
- **[3] Next**: After filling in all the required fields, click the "Next" button to proceed to the document creation panel.
### Step 4: Document creation and Signing
- **[1] Add signature widget**: Once your document is loaded in the document creation panel, you will need to add a signature widget. OpenSign provides an intuitive interface for this task. Click on the signature widget and position it where the signature is required. You can add multiple signature widgets if needed.
After placing the Signature widget, a popup will appear for drawing the signature.
In the "Draw Signature" popup, you have three options available:
- Draw the signature using your mouse cursor.
- Upload a digitally scanned signature.
- Type the signature using text input.
- Select your signature from "My Signature." (This option is available only if you have uploaded a signature under "My Signature" in Settings.)
- **[2] Add other widgets**: Depending on your needs, you can include additional widgets such as:
- **Stamp**: After dragging and dropping the stamp widget, the "Upload Stamp Image" popup will appear, allowing you to upload an image from your file explorer. Once the stamp is uploaded, you will see the stamp image on the document. Additionally, alongside your stamp image, there is an option to copy the image. Clicking on the copy option presents three choices:
- All pages : It will copy the stamp to all pages.
- All pages but last: It will copy the stamp to all pages except the last page.
- All pages but first: It will copy the stamp to all pages except the first page.
- **Initials**: Click on the initials widget and position it where the initials are required. After placing the Initials widget, a popup will appear for drawing the initials. In the "Draw Initials" popup, you have three options available:
- Draw the initials using your mouse cursor.
- Upload the digitally scanned initials.
- Type the initials using text input.
- **Name**: Once you drop the name widget, you can edit the name. We also provide customization options such as setting the color or font. Additionally, there is a copy option available to duplicate the widget.
- **Job Title**: Once you drop the job title widget, you can edit the job title. Customization options such as setting the color or font are also provided. Additionally, there is a copy option available to copy the widget.
- **Company**: Once you drop the company widget, you can edit the company name. Customization options such as setting the color or font are also provided. Additionally, there is a copy option available to duplicate the widget.
- **Date** : Once you drop the date widget, you can choose from various date formats.
- **Text**: Once you drop the text widget, you can write the text. Customization options such as setting the color or font are also provided. Additionally, there is a copy option available to duplicate the widget.
- **Checkbox**: After dropping the checkbox widget, a popup will open allowing you to set the checkbox name and options. Once you click save, the checkbox will be created on the document. Additionally, a copy option will be available to duplicate the widget.
- **Image** : After dragging and dropping the image widget, the "Upload Image" popup will appear, allowing you to upload an image from your file explorer. Once the image is uploaded, it will be displayed on the document. Additionally, there is an option to duplicate the image.
- **Email**: Once you drop the email widget, you can edit the email. Customization options such as setting the color or font are also provided. Additionally, there is a copy option available to duplicate the widget.
<img width="918" alt="OpenSign_Widgets" src="https://github.com/user-attachments/assets/b73ef535-245c-43c8-98eb-cb43e4720bc5" />
### Step 5: Finalizing the Process:
- **Finish**: After adding the widgets and signatures, click the "Finish" button. This will create a digitally signed document.
### Step 6: Print, download or send the document copy via email
After finishing the document, a "Successfully Signed!" popup will appear, offering options to print, download, or send the document via email.
In the "Add Email Address" text field, enter the email address you want to send the document to, then click the "Send" button to receive a copy of the signed document.
<img width="918" alt="OpenSign_sendEmail" src="https://github.com/user-attachments/assets/7ec61f70-3ffe-4c7e-b911-843919c6d25d" />
## Additional Information
- The fields with an asterisk (*) are mandatory.
- Make sure your document is in PDF, PNG, JPG, JPEG, or DOCX format.
- You can access your signed documents in the folder you've selected by visiting OpenSign™ Drive anytime. You can also access the documents from reports section.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
@@ -0,0 +1,8 @@
{
"label": "Manage Docs using OpenSign™ Drive",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn everything about OpenSign™ Drive."
}
}
@@ -0,0 +1,92 @@
---
sidebar_position: 2
title: Create Docs & Folders
---
# Organize Documents using OpenSign™ Drive
OpenSign Drive offers a streamlined way to manage, sign, and request signatures on your important documents. Whether you're drafting an offer letter or storing signed agreements, organizing your documents effectively is crucial. Heres a step-by-step guide on how to create documents and folders in OpenSign Drive.
### 1. Accessing OpenSign Drive
After logging into OpenSign, navigate to the left-hand sidebar and click on "OpenSign Drive." This will open the OpenSign Drive page where you can see all your stored files.
<img width="828" alt="OpenSign drive" src="https://github.com/user-attachments/assets/1159afaa-e7e4-4f6d-9087-e22ea7a0c840" />
### 2. Creating a New Folder
Organizing your documents into folders helps you keep track of different categories of files.
**Step 1:** In the OpenSign Drive window, look for the "+" icon at the top-right of the screen.
**Step 2:** Click the "+" icon and select "Create Folder" from the dropdown menu.
**Step 3:** A dialog box will prompt you to name your new folder. Enter a descriptive name and hit "Add."
**Step 4:** Your new folder will appear in the main area of OpenSign Drive, ready to store your documents.
<img width="828" alt="Create new folder" src="https://github.com/user-attachments/assets/f0260329-d3b0-4c03-af1b-7231b4f2c6a4" />
### 3. Creating a New Document
To create a document for self-signing or by requesting a signature, you can do so by selecting the appropriate option from OpenSign Drive.
**Step 1:** Click the "+" icon in the top-right corner of OpenSign Drive.
**Step 2:** This time, choose "Sign Yourself" or "Request Signatures" depending on whether you want to sign the document yourself or send it to others for their signatures.
**Step 3:** When you select the "Sign Yourself" or "Request Signature" option, the document creation page will open, allowing you to enter details such as the document title, description, notes, and other necessary information. You can also choose an OpenSign Drive folder to store your document. Once youve selected the folder and created the document, it will be saved in that folder, making it easily accessible from your OpenSign Drive.
<img width="828" alt="Create new document" src="https://github.com/user-attachments/assets/97bd75ec-ea9d-4f1d-b514-b9e04ce856aa" />
### 4. Organizing Documents
After creating or uploading documents, it's crucial to organize them effectively. Here are some options available in OpenSign Drive for managing your documents:
<img width="828" alt="OpenSign Drive Options" src="https://github.com/user-attachments/assets/350c7f0b-7751-419d-85bd-3d4ca68c1485" />
- **Download:** To download a document, right-click on it and select the "Download" option. This will save a copy of the document to your device.
- **Rename:** If you need to rename a document, right-click on it and choose the "Rename" option. This will allow you to edit the document's name.
- **Move:** To move a document to a different folder, right-click on the document and select the "Move" option. You'll see a list of existing folders, along with the option to create a new folder. Select the desired folder or create a new one, then move the document to that location.
- **Delete:** If you wish to delete a document, simply right-click on it and choose the "Delete" option. This will remove the document from your OpenSign Drive.
Organizing your documents properly ensures that you can easily find and manage them whenever needed.
### 5. Managing Documents
OpenSign Drive offers a variety of tools to help you manage your documents efficiently, one of the most useful being the Status Indicators system.
**Status Indicators**
These indicators are represented by different icons on your documents, allowing you to instantly recognize their current status:
- **Signed (Green Check Mark):** This icon signifies that the document has been fully signed and is complete.
- **Pending Signature (Yellow Paper Airplane):** Documents with this icon are awaiting signatures from one or more parties.
- **Draft (Blue Paper Clip):** A Blue Paper Clip indicates that the document is in draft form and has not yet been sent out for signatures.
- **Declined document (Red Exclamation Mark):** This icon highlights documents that require immediate action, indicating that the document has been declined.
- **Expired (Gray Hourglass):** A gray hourglass indicates that the document is expired.
<img width="828" alt="Create new folder" src="https://github.com/user-attachments/assets/b488ef24-3db5-4323-a3b3-ed3c12a04291" />
### 6. Filter and Sort Documents in OpenSign Drive
OpenSign Drive provides a powerful and easy-to-use interface for managing your documents. To help you quickly find and organize your files, OpenSign Drive offers several sorting and filtering options, allowing you to arrange your documents by name or date, in either ascending or descending order.
<img width="861" alt="OpenSign filters" src="https://github.com/user-attachments/assets/af51e68a-730c-4203-8015-54b30da572f6" />
- **Sorting Documents by Name:**
To sort your documents alphabetically:
1. Click on the Sort dropdown menu in the upper right corner of the OpenSign Drive interface.
2. Select "Name" from the dropdown list. This will arrange your documents alphabetically by their titles.
3. You can then choose to order them in ascending (A-Z) or descending (Z-A) order by toggling the "Ascending" or "Descending" option.
- **Sorting Documents by Date:**
If you prefer to sort your documents based on when they were created or modified:
1. Click the Sort dropdown menu in the top right corner.
2. Ensure that "Date" is selected. This will organize your documents based on their creation or modification date.
3. Select "Ascending" to arrange documents from the oldest to the newest, or choose "Descending" to list them from the newest to the oldest.
- **Ascending vs. Descending Order**
- **Ascending Order:** Whether sorting by name or date, selecting "Ascending" will arrange your documents from A to Z (if sorting by name) or from oldest to newest (if sorting by date).
- **Descending Order:** Choosing "Descending" will reverse the order, arranging documents from Z to A (by name) or from newest to oldest (by date).
These sorting features help you keep your documents organized, making it easier to locate specific files quickly, especially when you have a large number of documents stored in your OpenSign Drive.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
@@ -0,0 +1,18 @@
---
sidebar_position: 3
title: Grid vs List view
---
# How to switch between grid view and list view in OpenSign drive
- Navigate to OpenSign drive using the main menu or clicking [this](https://app.opensignlabs.com/opensigndrive) link.
- Click the list view icon on the upper right corner of the screen(marked in green) to switch to list view from gride view -
<img width="1159" alt="OpenSign gridview icon" src="https://github.com/user-attachments/assets/0c03980e-6c28-4ac4-ace2-214d66858d84"></img>
- In case you are already in list view, you will find a button to swith to grid view at the same location(marked in green)
<img width="1164" alt="image" src="https://github.com/user-attachments/assets/566845ac-de2e-4f0a-b758-77833fb6e829"></img>
@@ -0,0 +1,49 @@
# OpenSign™ Drive Interface Documentation
## Overview
This documentation provides an overview of the OpenSign™ Drive interface, detailing its key features, user interface elements and functionality.
![OSD](https://github.com/OpenSignLabs/OpenSign/assets/5486116/e11c7060-15ab-4062-915e-2f47e832f023)
### Interface Elements
- **Navigation Bar**: At the top, displaying the current directory ("OpenSign™ Drive >").
- **Toolbar**:
- `+`: Button to add new documents.
- `Sort Options`: Dropdown to sort files by criteria such as date.
- `View Options`: Toggle between list and grid views.
### File Organization
- **Documents**: Represented by icons with a red PDF symbol.
- `Status Indicator`: Colored dots on the PDF icons represent the document status (e.g., green for 'complete').
- **Folders**: Represented by yellow folder icons.
### Document Information Popup
- Activated by hovering on a document, displaying the following details:
- **Title**: The name of the document.
- **Status**: Current status of the document (e.g., "Draft", "In-progress", "Completed", "Rejected" & "Expired").
- **Created Date**: The date the document was created or uploaded.
- **Additional Notes**: Any pertinent notes or descriptions.
### File and Folder Labels
- **Labels**: Below each icon, providing the name of the file or folder.
- **Status Labels**: Next to file labels, indicating additional status information.
## Interaction Patterns
- **Click**: Select files or folders.
- **Right-click**: Access context-specific actions.
## Accessibility Features
- **Status Colors**: Visually distinct colors for quick status recognition.
- **File Icons**: Large and clear with significant visual cues (PDF symbol).
### Version Information
This interface is current as of 15/01/2024. It is subject to change with future updates to the OpenSign™ Drive.
For further assistance or to report issues, please contact us on hello@opensignlabs.com
@@ -0,0 +1,21 @@
# Rename documents from OpenSign™ Drive
The OpenSign™ Drive interface allows users to rename their documents efficiently.
![rename](https://github.com/OpenSignLabs/OpenSign/assets/5486116/ea3df671-07a8-423d-916b-eb22aa4a1f50)
## Overview of User Interface
- **Toolbar at the top**: Includes options to add a new document (`+` icon), sort documents by date, and change the view layout (grid or list view).
- **Document and Folder Grid**: Displays documents and folders as icons with titles. PDF documents are clearly indicated with a red PDF logo.
- **Status Indicators**: Some documents have colored status labels such as blue (with a lock icon) indicating a secure document, and green (with a checkmark) suggesting completed or signed documents.
- **Selected Document Preview**: When a document is selected, a preview pane appears at the bottom, showing details like Title, Status, Created Date, and Signers involved.
## Renaming a Document
To rename a document in OpenSign™ Drive, follow these steps:
1. **Select the Document**: Hover on the document you wish to rename. The document will be highlighted and its details will be displayed in the preview pane.
2. **Access Rename Option**: Right-click on the selected document to open the context menu and select the 'Rename' option.
3. **Edit the Title**: Enter the new name for the document in the provided field.
4. **Save Changes**: Press 'Enter' to apply the new name to the document.
+8
View File
@@ -0,0 +1,8 @@
{
"label": "Reports",
"position": 2,
"link": {
"type": "generated-index",
"description": "Navigate seamlessly through OpenSign™ reports."
}
}
+48
View File
@@ -0,0 +1,48 @@
---
sidebar_position: 3
title: Completed
---
# Completed documents report
---
The "Completed documents" report within OpenSign serves as a vital tool for managing and reviewing all finalized documents that have been processed through the platform. This guide will walk you through the key features and functionalities of the "Completed documents" report, enabling you to efficiently navigate and manage your signed documents.
```note: In this report, you can only see documents that you own.```
### Navigating to the Completed documents report
1. Once logged into OpenSign, you'll see a navigation panel on the left side of your screen.
2. Click on **"Reports"** to expand the available options.
3. Select **"Completed"** to view the list of documents that have been fully signed and processed.
### Understanding the Completed documents report
The "Completed documents" report is displayed in a tabular format, presenting key information about each finalized document. Below is a breakdown of each column and its purpose:
<img width="816" alt="OpenSign_Signyourself" src="https://github.com/user-attachments/assets/4694c9b3-ca2c-4f27-a9d9-8dca220a4124" />
- **Sr.No:** This column displays the serial number for each document in the list, helping you quickly identify and reference documents.
- **Title:** The "Title" column displays the name of the document.
- **Note:** This section contains any notes that were added during the document's creation process.
- **Folder:** The "Folder" column indicates the location where the document is stored within OpenSign Drive, ensuring you can easily locate the document later.
- **File:** Here, you will find a **"Download"** link that allows you to directly download the completed document to your local device for review or archiving.
- **Owner:** This column shows the name of the person who created the document.
- **Signers:** The "Signers" column displays the names and email addresses of the signers assigned to that document for signature. Click the "View" button to see the signers.
### Action buttons
The "Completed documents" report also includes several actions icons for each document:
- **View Document:** The eye icon allows you to preview the document directly within OpenSign without needing to download it.
- **Delete Document:** The trash bin icon enables you to permanently delete a document from your completed list. Be cautious, as this action cannot be undone.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
+38
View File
@@ -0,0 +1,38 @@
---
sidebar_position: 7
title: Contactbook
---
# Contactbook
The **Contactbook** report in OpenSign enables you to add and manage contacts.
## Accessing Contactbook
To view your Contactbook:
1. Log in to your OpenSign account.
2. Navigate to the left sidebar.
3. Click on the `Contactbook` link under the reports section.
<img width="828" alt="Add contact" src="https://github.com/user-attachments/assets/80308df4-33a8-41ee-a240-801f775dcec0" />
## Understanding the Contactbook report
### Adding a New Contact:
To add a new contact, click the red plus (+) button located at the top-right corner of the Contactbook page.
This will open a pop-up where you can enter the contacts name, email, and phone number.
The Contactbook page displays a list of contacts with the following columns:
- **Sr.No**: A sequential number for each contact.
- **Name**: The contact's name.
- **Email**: The contacts email address.
- **Phone**: The contacts phone number (if available).
<img width="828" alt="contactbook" src="https://github.com/user-attachments/assets/524a7aa7-594e-412a-ad50-caebc125c1db" />
### Action buttons
- **Delete**: To delete a contact, click on the trash icon located next to the contacts details. This will remove the contact from your Contactbook. A confirmation prompt may appear to prevent accidental deletions.
+44
View File
@@ -0,0 +1,44 @@
---
sidebar_position: 5
title: Declined
---
# The Declined documents report
The "Declined documents" report within OpenSign serves as a vital tool for managing and reviewing all declined documents that have been processed through the platform. This guide will walk you through the key features and functionalities of the "Declined documents" report, enabling you to efficiently navigate and manage your signed documents.
### Navigating to the Declined documents report
1. Once logged into OpenSign, you'll see a navigation panel on the left side of your screen.
2. Click on **"Reports"** to expand the available options.
3. Select **"Declined"** to view the list of documents that have been fully signed and processed.
### Understanding the Declined documents report
The "Declined documents" report is displayed in a tabular format, presenting key information about each finalized document. Below is a breakdown of each column and its purpose:
<img width="816" alt="OpenSign_Signyourself" src="https://github.com/user-attachments/assets/dc55e678-52c0-4e75-a1d5-b5a94690bc33" />
- **Sr.No:** This column displays the serial number for each document in the list, helping you quickly identify and reference documents.
- **Title:** The "Title" column displays the name of the document.
- **Reason:** This section contains the reasons for declining the document.
- **Folder:** The "Folder" column indicates the location where the document is stored within OpenSign Drive, ensuring you can easily locate the document later.
- **File:** Here, you will find a **"Download"** link that allows you to directly download the completed document to your local device for review or archiving.
- **Owner:** This column shows the name of the person who created the document.
- **Signers:** The "Signers" column displays the names and email addresses of the signers assigned to that document for signature. Click the "View" button to see the signers
### Action buttons
The "Declined documents" report also includes several action icons for each document:
- **View Document:** The eye icon allows you to preview the document directly within OpenSign without needing to download it.
- **Delete Document:** The trash bin icon enables you to permanently delete a document from your declined list. Be cautious, as this action cannot be undone.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
+45
View File
@@ -0,0 +1,45 @@
---
sidebar_position: 4
title: Drafts
---
# The Draft documents report
The Draft documents section in OpenSign helps you manage all your in-progress documents easily. This feature allows you to save, review, and edit documents before sending them for signature. Here's a detailed overview of how to navigate and use the Draft Documents report effectively.
### Navigating to the Draft documents report
1. Once logged into OpenSign, you'll see a navigation panel on the left side of your screen.
2. Click on **"Reports"** to expand the available options.
3. Select **"Drafts"** under the Reports section. This will display all your saved draft documents.
### Understanding the Draft documents report
The Draft documents section provides an organized list of all documents that are saved as drafts. Each draft entry contains key details that help you quickly identify and manage your documents. Heres a breakdown of the information available:
<img width="816" alt="Draft documents" src="https://github.com/user-attachments/assets/6f743287-6459-4e93-ad7d-064c1ed68da0" />
- **Sr.No:** This column displays the serial number for each document in the list, helping you quickly identify and reference documents.
- **Title:** The "Title" column displays the name of the document.
- **Note:** This section contains any notes that were added during the document's creation.
- **Folder:** The "Folder" column indicates the location where the document is stored within OpenSign Drive, ensuring you can easily locate the document later.
- **File:** Here, you will find a **"Download"** link that allows you to directly download the drafted document to your local device for review or archiving.
- **Owner:** This column shows the name of the person who created the document.
- **Signers:** The "Signers" column displays the names and email addresses of the signers assigned to that document for signature. Click the "View" button to see the signers.
### Action buttons
The "Draft documents" report also includes several actions icons for each document:
- **Edit:** If you need to make changes to your draft, click the edit (pencil) icon. This will open the document for you to make the necessary modifications before sending it for signatures.
- **Delete:** If a draft is no longer needed, click the trash icon to delete it. Be cautious when using this action as deleted drafts cannot be recovered.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
+46
View File
@@ -0,0 +1,46 @@
---
sidebar_position: 6
title: Expired
---
# Expired documents report
The **Expired documents** report in OpenSign allows you to manage and review documents that have reached their expiration date without being signed. This feature is essential for maintaining an organized record of inactive documents that may require follow-up or archival.
## Accessing Expired documents
To view your expired documents:
1. Log in to your OpenSign account.
2. Navigate to the left sidebar.
3. Click on the `Expired` link under the Reports section.
<img width="828" alt="Expired document" src="https://github.com/user-attachments/assets/01f3626f-d694-4d3b-82da-2f2b77693b76" />
## Understanding the Expired documents report
The Expired documents report displays a list of documents that have not been signed by all parties before the designated expiration date. Each entry in the report includes the following information:
- **Title**: The name of the document.
- **Note**: A brief note associated with the document at the time of creation.
- **Folder**: The folder in which the document is stored, helping you organize and locate documents efficiently in OpenSign drive.
- **File**: Link to download the document for offline storage.
- **Owner**: The user who uploaded or owns the document.
- **Signers**: Lists the parties required to sign the document.
### Action buttons
For each expired document, you can perform several actions:
- **Delete**: Deletes the document from your OpenSign account.
- **View**: Opens the document in a viewer within OpenSign, allowing you to review the details and contents of the document.
## Managing Expired documents
Managing your expired documents effectively can help ensure that no important document is overlooked. Consider the following tips:
- **Review Regularly**: Check the Expired documents report periodically to manage documents that require attention.
- **Follow Up**: Contact the signers who have not completed their signatures informing them about the expired documents and resend the documents if necessary.
- **Archive**: Move documents that are no longer active or needed to an archive folder to keep your workspace organized.
By keeping track of your expired documents, you can maintain a clear overview of your document workflows & ensure that all the necessary actions are taken on time.
+70
View File
@@ -0,0 +1,70 @@
---
sidebar_position: 2
title: In Progress
---
# In-Progress documents report
The In-Progress documents report in OpenSign helps you monitor and manage documents that are currently in the signing process. This report enables you to monitor the status of your documents, manually share the document URL, track document progress, resend reminders, revoke access, or delete documents that are no longer required. Heres a detailed guide on how to use the In-Progress documents report effectively.
### Navigating to the In-Progress documents report
1. Once logged into OpenSign, you'll see a navigation panel on the left side of your screen.
2. Click on **"Reports"** to expand the available options.
3. Select **"In progress"** This will display all documents that are currently awaiting signatures or are otherwise in the signing process.
### Understanding the In-Progress documents report
The "In progress documents" report is displayed in a tabular format, presenting key information about each finalized document. Below is a breakdown of each column and its purpose:
<img width="816" alt="Inprogress documents" src="https://github.com/user-attachments/assets/60100998-1412-4331-8842-55fd9dd10307" />
- **Sr.No:** This column displays the serial number for each document in the list, helping you quickly identify and reference documents.
- **Title:** The "Title" column displays the name of the document.
- **Note:** This section contains any notes that were added during the document's creation process.
- **Folder:** The "Folder" column indicates the location where the document is stored within OpenSign Drive, ensuring you can easily locate the document later.
- **File:** Here, you will find a **"Download"** link that allows you to directly download the In-progress document to your local device for review.
- **Status:** This column displays the current status of the document, indicating whether it has been viewed or signed by the signer. Once the signer has viewed or signed the document, the Owner of the document can click "View" to see the activity logs.
<img width="816" alt="Inprogress documents" src="https://github.com/user-attachments/assets/4eb43321-5eec-48ec-a3b6-75e932d31c6c" />
- **Signers:** The "Signers" column displays the names and email addresses of the signers assigned to that document for signature. Click the "View" button to see the signers.
### Action buttons
The "In progress documents" report also includes several actions icons for each document:
- **Share Document:** The "Share" option in the In-Progress Documents report allows you to manually share the signing link of a document with signers or other recipients directly via email. This feature ensures that the signers can easily access the document, even if they have missed the initial notification.
<img width="816" alt="Inprogress documents" src="https://github.com/user-attachments/assets/7c632c2d-c784-4b51-9517-5c6817abd16f" />
Upon clicking the Share icon, a pop-up window titled Copy link will appear. This window provides multiple options to share the document link with designated recipients.
**Heres how to use the options within this pop-up:**
The pop-up will display a list of email addresses of the intended recipients or signers of the document. Each email corresponds to a person who needs access to the document.
-
- **Share Button:** Click the Share button next to the recipients email address to resend the document link directly to that individual. This action provides multiple sharing options, such as copying the link, or sharing it via Outlook, WhatsApp, Messenger, and more.
- **Copy Button:** Click the Copy button next to the email address to copy the unique signing link to your clipboard. You can then paste this link manually into an email, chat, or any other preferred method of communication to share with the recipient.
- **View Document:** The eye icon lets you preview the document directly within OpenSign without downloading it. Here, you can view the document's exact status, including who has signed and how many signers are still pending.
- **Resend:** If a signer has not responded or needs a reminder, use the resend option to send another notification. This ensures that the signing process continues without delay.
<img width="816" alt="resend document" src="https://github.com/user-attachments/assets/c0cb3348-47ca-4d2e-a2d7-81cb3b18a0c6" />
- **Revoke:** If theres a mistake or you need to cancel the document, revoking stops all signing actions immediately. This is useful when changes are needed before re-sending the document.
<img width="816" alt="resend document" src="https://github.com/user-attachments/assets/b2273768-ef81-44cd-95ea-92babee429b6" />
- **Delete :** If the document is outdated or was sent by mistake, you can permanently remove it from the list. Use this action cautiously, as deleted documents cannot be recovered.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
+51
View File
@@ -0,0 +1,51 @@
---
sidebar_position: 1
title: Need your sign
---
# Need your sign report
The "Need your sign" feature in OpenSign is designed to simplify the process of managing documents that require your signature. This guide will walk you through the various elements of the "Need your sign" report, helping you to efficiently navigate and complete your pending signing tasks.
## Accessing the "Need your sign" report
- **Login to OpenSign**: Start by logging into your OpenSign account.
- **Navigate to "Need your sign"**: Once logged in, you will find a navigation panel on the left side of your screen. Under the "Reports" section, click on "Need your sign" to view all documents that require your signature.
## Understanding the "Need your sign" report
Upon clicking "Need your sign," you will be presented with a list of documents awaiting your signature. Here's a breakdown of the key elements within this interface:
- **Sr.No**: This column provides a serial number for each document in the list, allowing for easy identification and reference.
- **Title**: The "Title" column displays the name of the document.
- **Note**: This section includes any notes or instructions related to the document.
- **Folder**: The folder column shows where the document is stored within OpenSign Drive. This helps in organizing and finding documents later on.
- **File**: In this column, a "Download" link is provided, allowing you to download the document directly to your device for offline review or record-keeping.
- **Owner**: The owner column indicates who owns or initiated the document.
- **Signers**: The "Signers" column displays the names and email addresses of the signers assigned to that document for signature. Click the "View" button to see the signers
- **Sign**: The "SIGN" button is prominently displayed next to each document. Clicking this button will open the document in the signing interface, allowing you to review and apply your signature.
### Action buttons
- **View Document**: By clicking "View" under the "Signers" column, you can get more details about the document, including the list of individuals who have already signed or are expected to sign it.
- **Download Document**: The "Download" link in the "File" column provides a quick way to save the document to your local device, ensuring you have a copy for your records.
## Signing a Document
To sign a document:
1. Click the **SIGN** button next to the document you wish to sign.
2. Review the document carefully within the OpenSign interface.
3. Apply your signature following the prompts.
4. Once signed, the document will move from the "Need your sign" section to the "Completed" section, indicating that the signing process is finished.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
+8
View File
@@ -0,0 +1,8 @@
{
"label": "Settings",
"position": 5,
"link": {
"type": "generated-index",
"description": "5 minutes to learn everything about OpenSign™ configuration."
}
}
@@ -0,0 +1,19 @@
---
sidebar_position: 2
title: Disable DocumentId
---
# How to disable adding the OpenSign™ documentId to signed documents
Whenever a document is signed by all parties, OpenSign™ adds a DocumentId at the top left corner of the digitally signed document.
Using this id you can verifiy the authenticity of the document at a later date, hence we strongly recommend that you keep this id.
In case you want to disable adding this to your signed documents, turn the 'Disable DocumentId' switch on.
- Click the '⌄' symbol just beside your name on the top right corner
- Click profile
- Click the 'edit' button
- Turn the 'Disable DocumentId' swith to on
- Click 'save'
<img width="436" alt="image" src="https://github.com/OpenSignLabs/OpenSign/assets/5486116/ee4433c7-1af7-4b74-800d-500060c0642d"></img>
Note that this feature will be available only to enterprise plan customers.
+52
View File
@@ -0,0 +1,52 @@
---
sidebar_position: 2
title: Manage users
---
# User Management
The **User Management** feature allows administrators to add, edit, and manage users within the OpenSign application. This feature is available on self-hosted, teams, and enterprise plans. Only users with "Admin" & "OrgAdmin" role are allowed to manage users.
## Accessing User Management
1. **Navigate to User management**
- Go to the **Menu**.
- Select **Settings**.
- Click on **Users**.
- A list of existing users will be displayed.
## Adding a New User
To add a new user:
1. **Click the "+" Button**
- Located in the upper right corner of the user list.
2. **Fill in the User Information**
- **Name** (required): Enter the user's full name.
- **Email** (required): Enter the user's email address.
- **Password**: A password is generated automatically. Copy it as it will only be displayed once.
- **Phone** (optional): Enter the user's phone number.
- **Team** (required): Select the team the user belongs to from the dropdown. Teams can be created only on the Teams & Enterprise plans.
- **Role** (required): Select the user's role from the dropdown - OrgAdmin(Has all permissions including user management), Editor(Has all permissions other than user management like creating & sharing templates with teams, User(cannot manager users & cannot share templates with teams but can use templates features for themselves).
![image](https://github.com/user-attachments/assets/d8c3c94e-842d-4f97-bfbc-8a63fc8d62c3)
3. **Submit or Cancel**
- Click **Submit** to add the user.
- Click **Cancel** to discard the changes.
## Managing User Status
- **Toggling Active Status**
- Use the "active" switch next to each user to enable or disable their account.
---
For more information, visit our social media channels:
- [Twitter](https://twitter.com/OpenSignHQ)
- [Website](http://www.opensignlabs.com)
- [Facebook](https://www.facebook.com/profile.php?id=61551030403669)
- [LinkedIn](https://www.linkedin.com/company/opensignhq/)
- [YouTube](https://www.youtube.com/@opensignhq)
+37
View File
@@ -0,0 +1,37 @@
---
sidebar_position: 1
title: My Signature
---
# Setup "My Signature" in OpenSign
This guide provides instructions on how to save your signature and initials using the OpenSign application. Once saved, you can use them with one click when signing documents. To create your signature, start by clicking the "My Signature" link under "settings" menu.
## Creating and Saving Your Signature
The drawing box on the left is dedicated to this purpose. If you make a mistake or wish to redo your signature, simply click the Clear button below the drawing box to erase it and start over.
## Uploading a Signature Image
Alternatively, if you prefer to use a pre-existing image of your signature, click the "Upload Image" button next to the Signature button. This will prompt you to select an image file from your device. Once uploaded, the image will be displayed in the drawing box, ready to be saved.
<img width="820" alt="create signature and initials" src="https://github.com/user-attachments/assets/6e86e3ed-48e2-47d1-a9b6-f964b13986c5"></img>
## Creating and Saving Your Initials
For creating your initials, use your mouse or a stylus to draw your initials on the drawing box on the right. As with the signature, there is a Clear button available to erase and redo the initials if necessary.
## Saving Your Signature and Initials
After you have drawn your signature and initials or uploaded your signature image, the next step is to save them. Click the Save button located below the drawing areas. This will store your signature and initials in the system, making them readily available for future use.
<img width="820" alt="create signature" src="https://github.com/user-attachments/assets/f999f256-038f-4e91-be7d-e1dceb0cfdec"></img>
Once saved, these can be applied with a single click whenever you need to sign a document within the OpenSign application, streamlining your workflow and ensuring consistency in your document signing process.
## Getting Started
**try OpenSign on cloud** at **[OpenSignLabs](https://app.opensignlabs.com)**.
Or
Get started by deploying a new instance of **OpenSign** by following these [instructions](https://docs.opensignlabs.com/docs/self-host/intro).
+8
View File
@@ -0,0 +1,8 @@
{
"label": "Templates",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn everything about OpenSign™ Templates feature."
}
}
+179
View File
@@ -0,0 +1,179 @@
---
sidebar_position: 1
title: Create Templates
---
## Getting Started
Creating a template in OpenSign is straightforward and can significantly enhance your document workflow. Follow these steps to create a custom template:
# How to Create a Template in OpenSign™
## Step 1:
### Begin New Template Creation
- **Navigate to New template form**: On the left sidebar, click on "Templates" to expand the menu. and Click on the "Create template" option.
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/1cb7610f-c144-4774-85c2-ed7d70e0a73c" />
### Uploading Your Document
- **[1] Choose File**: Once the "New template" page opens, click here to select and upload the document file from your computer that needs to be signed. Supported formats include PDF, PNG, JPG, JPEG, and DOCX.
- **[2] Choose File from Dropbox**: Click the dropbox icon to select the document file from your dropbox account.
### Entering Template Details
- **[3] Title** *(Required)*: Provide a title for your template. For example, "Demo Custom Template."
- **[4] Description**: Optionally add a description to give context or instructions regarding the template.
- **[5] Note**: Optionally add a note to give context or instructions regarding the document.
### Set the sending order
- **[6] Send in Order**
- **If you choose:**
- **Yes**: Selecting this option will send the signing request to the first signer initially. Once the first signer completes their part, the next signer in the sequence will receive the request. This process continues until all signers have signed the document. This method ensures that the document is signed in a specific order.
- **No**: Selecting this option will send the signing links to all signers simultaneously. Every signer can sign the document at their convenience, regardless of whether other signers have completed their signatures. This method is faster but does not enforce any signing order among the participants.
Select the option that best suits the needs of your document processing.
### Auto reminder (feature only avilable for the subscribed user)
- **[7]** Once you enable the auto reminder, a text field will appear allowing you to set the reminder for a specific number of days.
- **Remind once in every (Days)**: Here, you can set the number of days for the reminder.
### Security Setting
- **[8] Enable OTP Verfication** :
If set to "Yes," the signer will be required to complete email OTP verification before viewing and signing the document. If "Enable OTP Verification" is set to "No," the signer will not be prompted for OTP verification during the signing process.
- **[9] Enable tour**:
If set to "Yes," the signer will see the tour guide while signing the document. If your signer is familiar with OpenSign and you prefer not to display the tour guide, you can select "No," and the tour guide will not be shown to your signers.
### Proceed to Template Creation Panel
- **Next**: Click the "Next" button to proceed to the next stage of template creation, where you can add widgets and finalize the template.
- **Cancel**: If you need to start over or make changes, click Cancel button to clear the form.
## Step 2:
### Template creation
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/986a0068-e711-4367-91b6-349dc1db8c43" />
- **[1] Define Roles**:
- **Add Roles**: In the roles section on the right, click "+ Add role" to specify the roles involved in the document, such as Candidate, HR, and Manager.
- **[2] Assign Widgets to Roles**: Click on each role to highlight it, then drag and drop the widget to assign it to that role.
- **[1] Assign signature widget**: Select the Role from the right side panel, click on the signature widget, and position it where the signature is required. You can place multiple signature widgets for each Role, as required.
After placing the Signature widget, you will see the options on the widget such as:
- **Add Signer/Change Signer**: Clicking the first icon on the signature widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- **Copy Signature**: Clicking on this option reveals the following choices.
- All pages: It will copy the signature widget to all pages.
- All pages but last: It will copy the signature widget to all pages except the last page.
- All pages but first: It will copy the signature widget to all pages except the first page.
- **[2] Add other widgets**: Depending on your needs, you can include additional widgets such as:
- **Stamp**: After placing the Stamp widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can specify whether this widget is mandatory or optional during the document signing.
- Add Signer/Change Signer: Clicking the second option on the stamp widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy Stamp: Clicking on this option reveals the following choices.
- All pages : It will copy the stamp widget to all pages.
- All pages but last: It will copy the stamp widget to all pages except the last page.
- All pages but first: It will copy the stamp widget to all pages except the first page.
- **Initials**: After placing the Initials widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can specify whether this widget is mandatory or optional during the document signing.
- Add Signer/Change Signer: Clicking the first icon on the Initials widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy Initials: Clicking on this option reveals the following choices.
- All pages : It will copy the stamp widget to all pages.
- All pages but last: It will copy the stamp widget to all pages except the last page.
- All pages but first: It will copy the stamp widget to all pages except the first page.
- **Name**: After placing the name widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Name widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the name widget.
- **Job title**: After placing the job title widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Job title widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the job title widget.
- **Company**: After placing the company widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Company widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the Company widget.
- **Date**: After placing the date widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can choose from various date formats.
- Add Signer/Change Signer: Clicking the first icon on the Date widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the date widget.
- **Text**: After placing the Text widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Copy : Clicking on this you can ducplicate the Text widget.
- **Text Input**: After placing the Text Input widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Text Input widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the Text Input widget.
- **Checkbox**: Once you drop the checkbox widget, a popup will open where you can set the checkbox name and options. Additionally, there is few optiona available like you can set Minimum check, maximum check also whether this check box is readonly also hide label option.
- Add Signer/Change Signer: Clicking the first icon on the CheckBox widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Dropdown**: Once you drop the dropdown widget, a popup will open where you can set the dropdown name and options. Additionally, there is few option available like you can set default value, also whether this dropdown is required or optional.
- Add Signer/Change Signer: Clicking the first icon on the Dropdown widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Radio button**: Once you drop the radio button widget, a popup will open where you can set the radio button name and options. Additionally, there is few option available like you can set default value, also whether this radio button is readonly also hide label option.
- Add Signer/Change Signer: Clicking the first icon on the Radio button widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Image**: After placing the Image widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can specify whether this widget is mandatory or optional during the document signing.
- Add Signer/Change Signer: Clicking the first icon on the Image widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can ducplicate the image widget.
- **Email**: After placing the email widget, you will see the options on the widget such as:
- Setting icon: By clicking on the option, you can set the color and font.
- Add Signer/Change Signer: Clicking the first icon on the Email widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- Copy : Clicking on this you can duplicate the email widget.
### Save Template
**Next button**: Once youve organized your widgets and set their properties, simply click the “Next” button to save your template.
After doing so, a “Create document” popup will appear, prompting you with the question: “Do you want to create a document using the template you just created?” Youll have the option to choose either “Yes” or “No.”
**If you select "Yes"**: It will create a document using the template you just created.
**If you select "No"**: You will be redirected to the Manage templates form.
## Step 3:
### Viewing and Managing Templates
<img width="828" alt="Manage Template" src="https://github.com/user-attachments/assets/06b80221-5c42-451c-af03-44cc12e6aa2d" />
On the Manage templates page you will see a list of templates you have created or have access to. The list includes details such as the template title, file, owner, signers, and whether the template is public.
**Download Template**: If you need to download the template file, click on the "Download" link under the "File" column next to the respective template.
**View Signers**: This will display the roles or the list of signers along with their assigned roles, if assigned during template creation.
**Public/Private Toggle**: You can set your template to public or private by toggling the switch under the "Public" column. Public templates can be accessed by anyone via the public URL, allowing them to open and sign the document after registering.
**Use Template**: To use a template, click the "+ USE" button next to the desired template. This will open the template, enabling you to create a document for a signature request. Simply assign the signers and send it for signatures.
**Quick Send**: For faster processing, the Quick Send feature allows you to swiftly create and send a document to a signer using the selected template.
**Edit**: The "Edit" feature is crucial for keeping your document templates up-to-date and relevant. Whether you need to make minor tweaks or major changes, OpenSign's editing capabilities are user-friendly and efficient.
Click on the three dots next to the template you want to edit.
Select "Edit." Make the necessary changes and save them.
**Share With Team**: Collaboration is essential for any successful team, and OpenSign simplifies sharing document templates with your team. Here's how you can utilize the "Share With Team" feature:
Click on the three dots next to the template you want to share.
Select "Share With Team."
**Embed**: The "Embed" option provides you with a code to embed the template into a website or other platforms, allowing users to interact with it directly from the external site.
Click "Embed" to generate the code that can be copied and pasted into your desired web location. We currently support React, HTML/JavaScript and Angular-based websites.
<img width="828" alt="Embed" src="https://github.com/user-attachments/assets/05dcaf5d-07b0-4069-bcd5-83e2daf71e29" />
**Copy template id**: This action copies the unique ID associated with the template, which is useful for embedding or sharing with public users when your template is set to public.
**Copy public URL**: This generates a public link for the template, allowing external users to access it without logging into OpenSign.
Click "Copy Public URL" to generate the link, then share it as needed.
**Delete**: Sometimes, it's necessary to clean up your templates to keep your workspace organized. The "Delete" feature allows you to remove outdated or unnecessary templates with ease.
Click on the three dots next to the template you want to delete.
Select "Delete." Confirm the deletion.
## Additional Information
- The fields with an asterisk (*) are mandatory.
- Make sure your document is in PDF, PNG, JPG, JPEG, or DOCX format.
- You can access your signed documents in the folder you've selected by visiting OpenSign™ Drive anytime. You can also access the documents from reports section.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
+138
View File
@@ -0,0 +1,138 @@
---
sidebar_position: 5
title: Embedding OpenSign templates
---
import ReactPlayer from 'react-player';
# What is OpenSign Template Embedding?
OpenSign Template Embedding allows users to seamlessly integrate public document templates into their websites or applications. By embedding templates, you can provide a direct and interactive signing experience for your users without requiring them to leave your platform. This feature supports various technologies like React, Next.js, HTML, JavaScript, and Angular, making it easy to add signing capabilities to different web projects.
With OpenSign Template Embedding, businesses can offer a streamlined and professional document signing process, enhancing user experience and workflow efficiency.
## How to set up a Public profile, Design templates, and Embed a template?
### Step 1: Set up your Public profile (Username & Tagline)
- **Navigate to your profile**: On the top right, click your profile icon, select "Edit profile," and enter a public username (e.g., "OpenSignPublicProfile").
- **Add a tagline**(Optional): Enter a custom tagline (e.g., "Seal the deal openly") and save the changes.
<img width="828" alt="Set up Public Profile" src="https://github.com/user-attachments/assets/6c9cbd4b-eb1a-4a5b-bb0a-21777621555c" />
### Step 2: Create a new template
- **Navigate to Templates**: On the left sidebar, click "Templates" and select "Create template."
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/95ee5c26-4284-46aa-9de7-3f492ad34feb" />
### Upload your document and fill in the template details:
- **[1] Choose file**: Select the document to upload (supported formats: PDF, PNG, JPG, JPEG, DOCX).
- **[2] Choose file from Dropbox**: Click the dropbox icon to select the document file from your dropbox account.
- **[3] Title** *(Required)*: Provide a title for your template.
- **[4] Description**: Optionally add a description to give context or instructions regarding the template.
- **[5] Note**: Add additional notes or instructions.
- **[6] Send in Order**: Choose "Yes" or "No" for sending in a specific order.
- **[7] Auto reminder**: Set up automatic email reminders for signers.
- **[8] Enable OTP verification** : Choose "Yes" or "No" for requiring email verification via OTP.
- **[9] Enable tour**: Select "Yes" or "No" for enabling the tour feature.
### Proceed to template creation panel
- **Next**: Click the "Next" button to proceed to the next stage of template creation, where you can add widgets and finalize the template.
- **Cancel**: If you need to start over or make changes, click Cancel button to clear the form.
### Step 3: Template creation
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/36a269fb-179b-462e-abc0-f436ec195a4a" />
- **[1] Define roles**:
- **Add Roles**: In the roles section on the right, click "+ Add role" to specify the roles involved in the document, such as Candidate, HR, and Manager.
**Note**: Make sure the public role is positioned at the top if 'Send in Order' is set to Yes; Otherwise, you will not be able to make the template public.
- **[2] Assign widgets to roles**: Click on each role to highlight it, then drag and drop the widget to assign it to that role. The widgets will appear in the same colour as the role name once you drop it on the document.
- **[1] Assign signature widget**: Select the Role from the right side panel, click on the signature widget, and position it where the signature is required. You can place multiple signature widgets for each Role, as required.
- **[2] Add other widgets**: Depending on your needs, you can include additional widgets such as:
Stamps, Initials, Name, Date, Text, Checkbox, and more.
**Important**: Before proceeding, ensure that all roles have assigned signers, except for the public role, since we are making this template public.
### Save template
- **Next button**: Once youve organized your widgets and set their properties, simply click the “Next” button to save your template.
- After doing so, a “Create document” popup will appear, prompting you with the question: “Do you want to create a document using the template you just created?” Youll have the option to choose either “Yes” or “No.”
- Choose "No" you will be redirected to the Manage templates screen.
### Step 4: Managing and Embedding the template
<img width="828" alt="Manage Template" src="https://github.com/user-attachments/assets/4fd68285-d489-4998-bcf1-1cf40eada723" />
On the Manage templates page, you'll see a list of templates you've created or have access to. This list provides details such as the template title, file, owner, signers, and whether the template is public.
- To embed a template, you first need to make it public by clicking the toggle button in the public column of the template.
- A confirmation popup will appear with the message, 'Are you sure you want to make this template public?' You can choose either Yes or No. Select Yes to make the template public.
- A public profile popup will appear, displaying the code to embed the template.
- We support embedding the template in React/Next.js, HTML/JavaScript, and Angular application.
After making the template public, youll have an additional option to view the template embedding code.
To access it:
- Click on the three dots (options menu) next to the template.
- Select the Embed option from the dropdown menu.
**Embed the template in a React or Next.js application**
- Copy the code and paste it into your React or Next.js application.
- Install the required OpenSign dependencies and run your project.
Watch the video below to see how to embed the template in a React or Next.js application.
<div>
<ReactPlayer playing={false} controls url='https://youtu.be/W5tCPVNVNvg?si=IE0k33Gwzt3pwdxF' />
</div>
**Embed the template in an HTML or JavaScript project**
- Copy the code and paste it into your HTML or JavaScript application.
Watch the video below to see how to embed the template in HTML or JavaScript application.
<div>
<ReactPlayer playing={false} controls url='https://youtu.be/0CXZGRiGIjw?si=MqGkTZ1uz-2F-5Qn' />
</div>
**Embed the template in an Angular project**
- Copy the code and paste it into your an Angular application.
- Install the required OpenSign dependencies and run your project.
Watch the video below to see how to embed the template in an Angular application.
<div>
<ReactPlayer playing={false} controls url='https://youtu.be/3zz5flzql8M?si=2TgnLgjd0laCX3fu' />
</div>
### Step 5: Sign the document through the Embed public template.
- Once the document loads, click Sign Now in the top right corner. A popup will appear asking for signer details such as Name, Email, and Phone Number.
- Enter the required details and click Submit.
- You can now fill in the necessary fields within the document's widgets and sign it.
- After you finish signing, the document will be completed and automatically sent to the next signer for their signature.
### Step 6: Print document, Download completion certificate, and Download Document
Youll see options to Print or Download the signed document for your records.
If you are the only signer, the signing process is finished, and you will have the options to Print document, Download completion certificate, and Download document.
## Additional Information
- All fields marked with an asterisk (*) must be completed before the document can be submitted.
- Ensure that the document format is supported by OpenSign before uploading.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!write
+104
View File
@@ -0,0 +1,104 @@
---
sidebar_position: 4
title: Setting up an OpenSign template for public signing
---
# What is the OpenSign Public profile?
The OpenSign Public profile feature offers the ultimate public document signing solution without any need for integrations. With this feature, users can share document templates publicly, allowing anyone to access and sign the documents directly through the shared templates. This streamlines the signing process by providing a seamless, accessible way for public signers to complete documents without additional steps or integrations.
## How to setup Public profile, Design templates, and Enable public signing?
### Step 1: Set up your Public profile (Username & Tagline)
- **Navigate to your profile**: On the top right, click your profile icon, select "Edit profile," and enter a public username (e.g., "OpenSignPublicProfile").
- **Add a tagline**(Optional): Enter a custom tagline (e.g., "Seal the deal openly") and save the changes.
<img width="828" alt="Set up Public Profile" src="https://github.com/user-attachments/assets/6c9cbd4b-eb1a-4a5b-bb0a-21777621555c" />
### Step 2: Create a new template
- **Navigate to Templates**: On the left sidebar, click "Templates" and select "Create template."
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/95ee5c26-4284-46aa-9de7-3f492ad34feb" />
### Upload your document and fill in the template details:
- **[1] Choose file**: Select the document to upload (supported formats: PDF, PNG, JPG, JPEG, DOCX).
- **[2] Choose file from Dropbox**: Click the dropbox icon to select the document file from your dropbox account.
- **[3] Title** *(Required)*: Provide a title for your template.
- **[4] Description**: Optionally add a description to give context or instructions regarding the template.
- **[5] Note**: Add additional notes or instructions.
- **[6] Send in Order**: Choose "Yes" or "No" for sending in a specific order.
- **[7] Auto reminder**: Set up automatic email reminders for signers.
- **[8] Enable OTP verification** : Choose "Yes" or "No" for requiring email verification via OTP.
- **[9] Enable tour**: Select "Yes" or "No" for enabling the tour feature.
### Proceed to template creation panel
- **Next**: Click the "Next" button to proceed to the next stage of template creation, where you can add widgets and finalize the template.
- **Cancel**: If you need to start over or make changes, click Cancel button to clear the form.
### Step 3: Template creation
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/36a269fb-179b-462e-abc0-f436ec195a4a" />
- **[1] Define roles**:
- **Add Roles**: In the roles section on the right, click "+ Add role" to specify the roles involved in the document, such as Candidate, HR, and Manager.
**Note**: Make sure the public role is positioned at the top if 'Send in Order' is set to Yes; Otherwise, you will not be able to make the template public.
- **[2] Assign widgets to roles**: Click on each role to highlight it, then drag and drop the widget to assign it to that role. The widgets will appear in the same colour as the role name once you drop it on the document.
- **[1] Assign signature widget**: Select the Role from the right side panel, click on the signature widget, and position it where the signature is required. You can place multiple signature widgets for each Role, as required.
- **[2] Add other widgets**: Depending on your needs, you can include additional widgets such as:
Stamps, Initials, Name, Date, Text, Checkbox, and more.
**Important**: Before proceeding, ensure that all roles have assigned signers, except for the public role, since we are making this template public.
### Save template
- **Next button**: Once youve organized your widgets and set their properties, simply click the “Next” button to save your template.
- After doing so, a “Create document” popup will appear, prompting you with the question: “Do you want to create a document using the template you just created?” Youll have the option to choose either “Yes” or “No.”
- Choose "No" you will be redirected to the Manage templates screen.
### Step 4: Managing and making template public
<img width="828" alt="Manage Template" src="https://github.com/user-attachments/assets/4fd68285-d489-4998-bcf1-1cf40eada723" />
On the Manage templates page, you'll see a list of templates you've created or have access to. This list provides details such as the template title, file, owner, signers, and whether the template is public.
- To make a template public, click the toggle button in the public column on the template.
- A confirmation popup will appear with the message, 'Are you sure you want to make this template public?' You can choose either Yes or No. Select Yes to make the template public.
- A public profile popup will appear, where you can copy the public URL.
- Copy and share this link, and anyone with it can view your publicly available templates by pasting the URL into their browser.
<img width="828" alt="Manage Template" src="https://github.com/user-attachments/assets/99977728-86de-4913-8d2e-f54ab0b18033" />
### Step 5: Sign the document through the public template.
- Click the Sign now button next to the template you want to sign. Once the document loads, click Sign Now in the top right corner. A popup will appear asking for signer details such as Name, Email, and Phone Number.
- Enter the required details and click Submit.
- You can now fill in the necessary fields within the document's widgets and sign it.
- After you finish signing, the document will be completed and automatically sent to the next signer for their signature.
<img width="828" alt="Signed the template" src="https://github.com/user-attachments/assets/0c667098-1c79-4c6a-b59f-03d20ac85552" />
### Step 6: Print document, Download completion certificate, and Download Document
Youll see options to Print or Download the signed document for your records.
If you are the only signer, the signing process is finished, and you will have the options to Print document, Download completion certificate, and Download document.
## Additional Information
- All fields marked with an asterisk (*) must be completed before the document can be submitted.
- This feature is available on all paid plans.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!write
+111
View File
@@ -0,0 +1,111 @@
---
sidebar_position: 3
title: Quickly Send the Document for Signature Using Template
---
# How to use the OpenSign Quick Send feature to send a document for signature using a template
### Step 1: Begin New Template Creation
- **Navigate to New template form**: On the left sidebar, click on "Templates" to expand the menu. and Click on the "Create template" option.
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/fe7b0bd0-bb45-4f64-8450-83ffb5c3d7fc" />
### Step 2: Uploading Your Document
- **[1] Choose File**: Once the "New template" page opens, click here to select and upload the document file from your computer that needs to be signed. Supported formats include PDF, PNG, JPG, JPEG, and DOCX.
- **[2] Choose File from Dropbox**: Click the dropbox icon to select the document file from your dropbox account.
### Step 3: Entering Template Details
- **[3] Title** *(Required)*: Provide a title for your template. For example, "Demo Custom Template."
- **[4] Description**: Optionally add a description to give context or instructions regarding the template.
- **[5] Note**: Optionally add a note to give context or instructions regarding the document.
### Step 4: Set the sending order
- **[6] Send in Order**
- **If you choose:**
- **Yes**: Selecting this option will send the signing request to the first signer initially. Once the first signer completes their part, the next signer in the sequence will receive the request. This process continues until all signers have signed the document. This method ensures that the document is signed in a specific order.
- **No**: Selecting this option will send the signing links to all signers simultaneously. Every signer can sign the document at their convenience, regardless of whether other signers have completed their signatures. This method is faster but does not enforce any signing order among the participants.
Select the option that best suits the needs of your document processing.
### Step 5: Auto reminder (feature only avilable for the subscribed user)
- **[7]** Once you enable the auto reminder, a text field will appear allowing you to set the reminder for a specific number of days.
- **Remind once in every (Days)**: Here, you can set the number of days for the reminder.
### Step 6: Proceed to Template Creation Panel
- **Next**: Click the "Next" button to proceed to the next stage of template creation, where you can add widgets and finalize the template.
- **Cancel**: If you need to start over or make changes, click Cancel button to clear the form.
### Step 7: Template creation
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/986a0068-e711-4367-91b6-349dc1db8c43" />
- **[1] Define Roles**:
- **Add Roles**: In the roles section on the right, click "+ Add role" to specify the roles involved in the document, such as Candidate, HR, and Manager.
- **[2] Assign Widgets to Roles**: Click on each role to highlight it, then drag and drop the widget to assign it to that role.
- **[1] Assign signature widget**: Select the Role from the right side panel, click on the signature widget, and position it where the signature is required. You can place multiple signature widgets for each Role, as required.
After placing the Signature widget, you will see the options on the widget such as:
- **Add Signer/Change Signer**: Clicking the first icon on the signature widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- **Copy Signature**: Clicking on this option reveals the following choices.
- All pages: It will copy the signature widget to all pages.
- All pages but last: It will copy the signature widget to all pages except the last page.
- All pages but first: It will copy the signature widget to all pages except the first page.
- **[2] Add other widgets**: Depending on your needs, you can include additional widgets such as:
Stamps, Initials, Name, Date, Text, Checkbox, and more.
### Step 8: Save Template
**Next button**: Once youve organized your widgets and set their properties, simply click the “Next” button to save your template.
After doing so, a “Create Document” popup will appear, prompting you with the question: “Do you want to create a document using the template you just created?” Youll have the option to choose either “Yes” or “No.”
**If you select "Yes"**: It will create a document using the template you just created.
**If you select "No"**: You will be redirected to the Manage templates form.
### Step 9: Viewing and Managing Templates
<img width="828" alt="Manage Template" src="https://github.com/user-attachments/assets/86bf3628-987d-4ae2-89c3-b24ec1f6bdc2" />
On the Manage Templates page, you'll see a list of templates you've created or have access to. This list provides details such as the template title, file, owner, signers, and whether the template is public. Youll also find actions like "Use Template," "Quick Send," "Edit," "Delete," and more.
### Step 10: Quick Send
For faster processing, the Quick Send feature allows you to swiftly create and send a document to a signer using the selected template.
<img width="828" alt="Manage Template" src="https://github.com/user-attachments/assets/02334ff3-eab6-4a11-aba2-d95a5cba2935" />
How to Send the Document:
- Click the Quick Send button next to the template in the list.
- A popup will open where you can assign signers to each role by simply adding their email addresses.
- If you need to create multiple documents, click the Add New button.
After adding the signers, click the Send button. This will generate the document and send an email to the signers with a signature request.
## Signers Signing Process
### Step 11: Email OTP verification
Once the email is received, the signer can click the 'Sign Here' button. This will open the email verification page. After clicking the 'Get Verification Code' button, an OTP (one-time password) will be sent to the signers email address. Enter the received OTP into the verification textbox and click the 'Verify' button.
<div>
<img width="800" alt="OpenSign send OTP" src="https://github.com/user-attachments/assets/b82c796a-98e3-4296-bde1-fe86b1b993ad" />
</div>
<div>
<img width="800" alt="OpenSign verify otp" src="https://github.com/user-attachments/assets/63cf4b75-9d47-4630-a83c-e916a5c13b3c" />
</div>
### Step 12: Finalizing the Process:
After verification, the signer will be redirected to the document signing page, where he can view the document received for signing. To sign, the signer simply clicks on the signature widget, which allows them to draw, upload a digitally scanned signature, or type the signature.
After filling out all assigned widgets, click the 'Finish' button. Once the document is finished,.
- The signer has the option of downloading or printing the signed document. He will also obtain the completion certificate if he is the final signer.
- If there are more than one signer, the document will be immediately sent to the next signer. Once all signers have finished their signatures, they can download and print the signed document as well as the completion certificate.
<img width="800" alt="OpenSignFinalStep" src="https://github.com/user-attachments/assets/f4783aa0-2879-4ec2-9ddc-16d59f3a1fc0" />
## Additional Information
- All fields marked with an asterisk (*) must be completed before the document can be submitted.
- Ensure that the document format is supported by OpenSign before uploading.
- Signed documents can be accessed in the designated 'Root' folder or the one you have specified.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!write
+126
View File
@@ -0,0 +1,126 @@
---
sidebar_position: 2
title: Use template to create documents
---
# How to use template to create documents in OpenSign™
### Step 1: Begin New Template Creation
- **Navigate to New template form**: On the left sidebar, click on "Templates" to expand the menu. and Click on the "Create template" option.
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/fe7b0bd0-bb45-4f64-8450-83ffb5c3d7fc" />
### Step 2: Uploading Your Document
- **[1] Choose File**: Once the "New template" page opens, click here to select and upload the document file from your computer that needs to be signed. Supported formats include PDF, PNG, JPG, JPEG, and DOCX.
- **[2] Choose File from Dropbox**: Click the dropbox icon to select the document file from your dropbox account.
### Step 3: Entering Template Details
- **[3] Title** *(Required)*: Provide a title for your template. For example, "Demo Custom Template."
- **[4] Description**: Optionally add a description to give context or instructions regarding the template.
- **[5] Note**: Optionally add a note to give context or instructions regarding the document.
### Step 4: Set the sending order
- **[6] Send in Order**
- **If you choose:**
- **Yes**: Selecting this option will send the signing request to the first signer initially. Once the first signer completes their part, the next signer in the sequence will receive the request. This process continues until all signers have signed the document. This method ensures that the document is signed in a specific order.
- **No**: Selecting this option will send the signing links to all signers simultaneously. Every signer can sign the document at their convenience, regardless of whether other signers have completed their signatures. This method is faster but does not enforce any signing order among the participants.
Select the option that best suits the needs of your document processing.
### Step 5: Auto reminder (feature only avilable for the subscribed user)
- **[7]** Once you enable the auto reminder, a text field will appear allowing you to set the reminder for a specific number of days.
- **Remind once in every (Days)**: Here, you can set the number of days for the reminder.
### Step 6: Proceed to Template Creation Panel
- **Next**: Click the "Next" button to proceed to the next stage of template creation, where you can add widgets and finalize the template.
- **Cancel**: If you need to start over or make changes, click Cancel button to clear the form.
### Step 7: Template creation
<img width="828" alt="Create Template" src="https://github.com/user-attachments/assets/986a0068-e711-4367-91b6-349dc1db8c43" />
- **[1] Define Roles**:
- **Add Roles**: In the roles section on the right, click "+ Add role" to specify the roles involved in the document, such as Candidate, HR, and Manager.
- **[2] Assign Widgets to Roles**: Click on each role to highlight it, then drag and drop the widget to assign it to that role.
- **[1] Assign signature widget**: Select the Role from the right side panel, click on the signature widget, and position it where the signature is required. You can place multiple signature widgets for each Role, as required.
After placing the Signature widget, you will see the options on the widget such as:
- **Add Signer/Change Signer**: Clicking the first icon on the signature widget allows you to change the signer. You can choose from existing signers in the dropdown or add a new signer.
- **Copy Signature**: Clicking on this option reveals the following choices.
- All pages: It will copy the signature widget to all pages.
- All pages but last: It will copy the signature widget to all pages except the last page.
- All pages but first: It will copy the signature widget to all pages except the first page.
- **[2] Add other widgets**: Depending on your needs, you can include additional widgets such as:
Stamps, Initials, Name, Date, Text, Checkbox, and more.
### Step 8: Save Template
**Next button**: Once youve organized your widgets and set their properties, simply click the “Next” button to save your template.
After doing so, a “Create Document” popup will appear, prompting you with the question: “Do you want to create a document using the template you just created?” Youll have the option to choose either “Yes” or “No.”
- **If you select "Yes"**: It will create a document using the template you just created.
- **If you select "No"**: You will be redirected to the Manage templates form.
### Step 9:
**You now have two options to create a document from a template**:
- **1) Instant Document Creation with 'Yes' Option**:
Select the "Yes" option from the popup. This will open the template, enabling you to create a document for a signature request.
<img width="800" alt="request signatures" src="https://github.com/user-attachments/assets/d9b80b9e-390f-4382-9b81-8b91ec2efeba" />
- **2) Create Documents via 'Use Template' in Manage Templates**:
Select the "No" option from the popup, and you'll be redirected to the Manage Templates form. To use a template, click the "+ USE" button next to the desired template. This will open the template and allow you to create a document for a signature request. displaying all the widgets that were set up during template creation.
<img width="800" alt="request signatures" src="https://github.com/user-attachments/assets/e33f63b4-5b1a-430d-9fae-44a6ea316ba2" />
You can view all the widgets configured during template creation and also add, remove, or adjust them as needed. Before sending the document for signatures, it's essential to assign signers to each role.
**Option1**: To assign a signer, simply double-click on any widget corresponding to that role. A popup will appear, allowing you to either select an existing signer or add a new one.
**Option2**: Every widget includes an option to assign a signer. Clicking the second option on the widget allows you to assign the signer, either by selecting from existing signers in the dropdown or by adding a new signer.
### Step 10: Next:
- **Next**: Once the signers are assigned to all the roles, click the "Next" button. The document will then be created.
### Step 11: Send Mail
After finishing the document creation, a 'Send Mail' popup will appear, offering options to Send Email, Customize Email, Copy Link, or Share the document.
- Send Email: Click the 'Send' button to send the document for signing to all signers. If the sending order is set to 'Yes', it will send the document to the first signer.
- Customize Email: Click the 'Customize Email' button to open the email editor. Here, you can set variables and customize the content. After clicking 'Send', the document will be sent for signing to all signers, or if the sending order is set to 'Yes', it will be sent to the first signer with the customized email.
- Copy Link: You can copy the link to sign the document.
- Share: Use this option to share the document via email, WhatsApp and other Windows apps
<img width="800" alt="request signatures" src="https://github.com/user-attachments/assets/e2344479-daae-43ff-a61a-14ea98b237d6" />
## Signers Signing Process
### Step 12: Email OTP verification
Once the email is received, the signer can click the 'Sign Here' button. This will open the email verification page. After clicking the 'Get Verification Code' button, an OTP (one-time password) will be sent to the signers email address. Enter the received OTP into the verification textbox and click the 'Verify' button.
<div>
<img width="800" alt="OpenSign send OTP" src="https://github.com/user-attachments/assets/b82c796a-98e3-4296-bde1-fe86b1b993ad" />
</div>
<div>
<img width="800" alt="OpenSign verify otp" src="https://github.com/user-attachments/assets/63cf4b75-9d47-4630-a83c-e916a5c13b3c" />
</div>
### Step 13: Finalizing the Process:
After verification, the signer will be redirected to the document signing page, where he can view the document received for signing. To sign, the signer simply clicks on the signature widget, which allows them to draw, upload a digitally scanned signature, or type the signature.
After filling out all assigned widgets, click the 'Finish' button. Once the document is finished,.
- The signer has the option of downloading or printing the signed document. He will also obtain the completion certificate if he is the final signer.
- If there are more than one signer, the document will be immediately sent to the next signer. Once all signers have finished their signatures, they can download and print the signed document as well as the completion certificate.
<img width="800" alt="OpenSignFinalStep" src="https://github.com/user-attachments/assets/f4783aa0-2879-4ec2-9ddc-16d59f3a1fc0" />
## Additional Information
- All fields marked with an asterisk (*) must be completed before the document can be submitted.
- Ensure that the document format is supported by OpenSign before uploading.
- Signed documents can be accessed in the designated 'Root' folder or the one you have specified.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
Happy signing with OpenSign™!
+18
View File
@@ -0,0 +1,18 @@
---
sidebar_position: 1
---
import ReactPlayer from 'react-player';
# Intro
🌟Get ready for an electrifying journey at [OpenSign™](https://app.opensignlabs.com), the most incredibly documented open source document signing solution! 🚀 This is your go-to spot for diving deep into everything OpenSign™ has to offer. Whether youre just starting out or youre a seasoned pro eager to uncover even more cool features, weve got you covered with the most awesome, top-notch guides and resources around. Get ready to make the most out of OpenSign™ 🎉📚🔍 Your adventure in excellence starts here! 🌈✨🌟
<div>
<ReactPlayer playing controls url='https://www.youtube.com/watch?v=GY_OP697EiU' />
</div>
## Getting Started
Try OpenSign on cloud at **[OpenSignLabs](https://app.opensignlabs.com)**.
Or
Get started by deploying a new instance of **OpenSign** by following the **[installation guide](https://docs.opensignlabs.com/docs/self-host/intro).**
+47
View File
@@ -0,0 +1,47 @@
---
sidebar_position: 1
---
# Tutorial Intro
Let's discover **Docusaurus in less than 5 minutes**.
## Getting Started
Get started by **creating a new site**.
Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new)**.
### What you'll need
- [Node.js](https://nodejs.org/en/download/) version 18.0 or above:
- When installing Node.js, you are recommended to check all checkboxes related to dependencies.
## Generate a new site
Generate a new Docusaurus site using the **classic template**.
The classic template will automatically be added to your project after you run the command:
```bash
npm init docusaurus@latest my-website classic
```
You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor.
The command also installs all necessary dependencies you need to run Docusaurus.
## Start your site
Run the development server:
```bash
cd my-website
npm run start
```
The `cd` command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there.
The `npm run start` command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/.
Open `docs/intro.md` (this page) and edit some lines: the site **reloads automatically** and displays your changes.
@@ -0,0 +1,15 @@
---
title: Digital Ocean
---
# Digital Ocean
OpenSign application consistes of 3 components -
- ReactJS frontend
- NodeJS API
- MongoDB database
You can install all 3 components on digital ocean using the button below -
[![Deploy on DigitalOcean](https://www.deploytodo.com/do-btn-blue.svg)](https://cloud.digitalocean.com/apps/new?repo=https://github.com/OpenSignLabs/Deploy-OpenSign-to-Digital-Ocean/tree/main&refcode=30db1c901ab0)
**Note:** This button is not intended for production installations because it sets up the OpenSign database within an app platform container that lacks persistent storage. Instead, in the next step, replace the MongoDB connection string with one from a managed MongoDB instance, which you should set up on DigitalOcean.
@@ -0,0 +1,8 @@
{
"label": "One-click Install",
"position": 2,
"link": {
"type": "generated-index",
"description": "Start with installing OpenSign in your own cloud infrastructure."
}
}
@@ -0,0 +1,7 @@
{
"label": "Cloud Storage",
"position": 3,
"link": {
"type": "generated-index"
}
}
+86
View File
@@ -0,0 +1,86 @@
---
title: AWS S3
---
## You can create an AWS S3 bucket to store your uploaded documents using OpenSign™
### AWS S3 -
- **Step 1 : Create a S3 bucket**
- Login to [AWS console](https://aws.amazon.com/console/)
- Navigate to S3 under services.
![Screenshot 2024-09-30 203247](https://github.com/user-attachments/assets/1a734349-1c1a-4f53-8582-7318c22911f5)
- Hit "Create Bucket" button on upper right corner.
![Screenshot 2024-09-30 195246](https://github.com/user-attachments/assets/b036fa3b-20c4-4348-8697-68bcf2fd9de3)
- Now provide bucket name and don't change any other options scroll down and click on "Create Bucket" button.
![Screenshot 2024-09-30 195603](https://github.com/user-attachments/assets/3fb1a591-fffd-4703-9b1f-9cb1edbdf7fe)
![Screenshot 2024-09-30 195835](https://github.com/user-attachments/assets/a0b2be8a-a273-474d-88d5-614cb42de8dd)
- Click on name of bucket from list which we have just created.
- Now go to permission Tab and scroll down to botton.
![Screenshot 2024-09-30 202035](https://github.com/user-attachments/assets/dbf44b05-370b-40f8-bfc1-fd2f8441da46)
- At the bottom you will see cross-origin resource sharign (cors) section click on "Edit" button.
![Screenshot 2024-09-30 202057](https://github.com/user-attachments/assets/a9fb13b3-7a30-4c49-b3ea-6a30a2b7c357)
- Now paste below line of code and add origin url in AllowedOrigins array and click on "Save changes".
```
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"PUT",
"POST"
],
"AllowedOrigins": [
"https://localhost:3001",
"https://app.opensignlabs.com",
"https://eu-app.opensignlabs.com"
],
"ExposeHeaders": [
"x-amz-server-side-encryption",
"x-amz-request-id",
"x-amz-id-2"
],
"MaxAgeSeconds": 3000
}
]
```
- Once completed, navigate to "Properties," where you'll find the bucket region (e.g., us-east-1).
- Set the bucket name you created in step 1 as the value for "DO_SPACE" in the ENV file.
- Assign the region value to the "DO_REGION" variable in the ENV file.
- Replace the region in the URL s3.region.amazonaws.com and set it as "DO_ENDPOINT" in the ENV file.
- Replace both the bucket name and region in the URL https://bucketName.s3.region.amazonaws.com and set it as "DO_BASEURL" in the ENV file.
- **Step 2 : Create a aws policy**
- Navigate to IAM under services
![Screenshot 2024-09-30 200247](https://github.com/user-attachments/assets/8109d2bb-1afb-4407-b5cd-4886a070d5cc)
- Now click on "Polices" from left side "access management" menu.
- Hit "Create Policy" button on upper right corner.
![Screenshot 2024-09-30 200939](https://github.com/user-attachments/assets/1b3b5608-9a84-477d-b46e-aaf884a73343)
- Search for S3 and Tick "PutObject" and "GetObject" from "Specify permissions" screen.
![Screenshot 2024-09-30 200537](https://github.com/user-attachments/assets/7168d261-abc4-4789-8e64-628c81c79e24)
![Screenshot 2024-09-30 200607](https://github.com/user-attachments/assets/863f8e7c-74eb-4f1b-9ea5-41524ba249ca)
- Select "All" under Resources
![Screenshot 2024-09-30 200929](https://github.com/user-attachments/assets/c4b26336-aab0-49c3-a817-d2a71d603091)
- provide policy name and hit on 'Create Policy".
![Screenshot 2024-09-30 200808](https://github.com/user-attachments/assets/4db2ab95-14bb-4ea1-a9a3-821e20e70038)
- Step 3 : Create IAM user.
- Now click on "Users" from left side "access management" menu and then click on "Create User" button.
![Screenshot 2024-09-30 201026](https://github.com/user-attachments/assets/1aa1f071-6291-457f-a514-970f511866cb)
- Provide username and click on Next button.
- Now select "Attach policies directly" from Permissions options.
![Screenshot 2024-09-30 201731](https://github.com/user-attachments/assets/13c6d571-d3da-4259-8f04-8ec130d9091a)
- Now, search for the policy we created in the previous step within the "Permissions Policies" section.
![Screenshot 2024-09-30 201742](https://github.com/user-attachments/assets/c2b1643d-e3e3-49ee-920b-641e7ff819f5)
- Now scroll down and Click on "Create User" Button.
- Step 4 : Generate Credentials
- Now Click on username form list which we have created in previous step.
- Navigate to "Security credentials".
- Click on "Create Access Key" from right corner.
![Screenshot 2024-09-30 201850](https://github.com/user-attachments/assets/d25abe2f-0cfc-4cc0-a02c-6b9fc6559dd2)
- In the next step select "Application running outside AWS".
![Screenshot 2024-09-30 201917](https://github.com/user-attachments/assets/f9b0cdb2-3718-4ae6-a4ba-68e144d1f4a1)
- In the next step, you will see the "Access key" and "Secret Access key." Copy both values.
- Assign the "Access key" value to the "DO_ACCESS_KEY_ID" environment variable.
- Assign the "Secret Access key" value to the "DO_SECRET_ACCESS_KEY" environment variable.
If you encounter any issues while following these instructions, refer to the link below: - https://repost.aws/knowledge-center/create-access-key
@@ -0,0 +1,7 @@
{
"label": "Docker",
"position": 2,
"link": {
"type": "generated-index"
}
}
+123
View File
@@ -0,0 +1,123 @@
---
title: Self-host OpenSign™ with Docker on Linux/MacOS/Windows
---
import ReactPlayer from 'react-player';
## Steps to run OpenSign™ with docker on Linux/MacOS/Windows:
### Step 1. Download and Install [Docker](https://www.docker.com/products/docker-desktop/):
Follow the official Docker installation guide based on your operating system.
Create a Docker Hub account if you don't already have one.
**Important:** Don't forget to verify your Docker Hub account via the email verification link. If you skip this step, the deployment might fail due to unauthorized access errors when pulling Docker images.
### Step 2. Open the terminal and execute the below commands as per your operating system.
Make sure Docker is running in the background before proceeding.
**Warning:** The commands below should only be used when installing OpenSign for the first time. You may loose your settings as this will overwrite .env & caddy files.
### Running on a custom domain
Command for linux/MacOS
```
export HOST_URL=https://opensign.yourdomain.com && curl --remote-name-all https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/Caddyfile https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/.env.local_dev && mv .env.local_dev .env.prod && docker compose up --force-recreate
```
Command for Windows (**Powershell**)
```
$env:HOST_URL="https://opensign.yourdomain.com"; Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml -OutFile docker-compose.yml; Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/Caddyfile -OutFile Caddyfile; Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/.env.local_dev -OutFile .env.local_dev; Rename-Item -Path .env.local_dev -NewName .env.prod; docker compose up --force-recreate
```
Command for Windows (**CMD/Terminal**)
```
set HOST_URL=https://opensign.yourdomain.com && curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml && curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/Caddyfile && curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/.env.local_dev && rename .env.local_dev .env.prod && docker compose up --force-recreate
```
Copy the command above, paste it into the terminal, and press Enter to pull and start the containers automatically.
Make sure to replace the host URL with your subdomain where OpenSign will be accessible.
You will also need to point the subdomain to the server executing these commands by adding the correct A record to your DNS settings.
### Running locally
If instead want to run locally try out below commands.
Command for linux/MacOS (localhost)
```
curl --remote-name-all https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/Caddyfile https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/.env.local_dev && mv .env.local_dev .env.prod && docker compose up --force-recreate
```
Command for Windows (**Powershell**) (localhost)
```
Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml -OutFile docker-compose.yml; Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/Caddyfile -OutFile Caddyfile; Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/.env.local_dev -OutFile .env.local_dev; Rename-Item -Path .env.local_dev -NewName .env.prod; docker compose up --force-recreate
```
Command for Windows (**CMD/Terminal**) (localhost)
```
curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml && curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/Caddyfile && curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/.env.local_dev && rename .env.local_dev .env.prod && docker compose up --force-recreate
```
Once the deployment is successful, the application will be accessible at [https://localhost:3001](https://localhost:3001). You will need to accept Chrome's insecure certificate warning. Follow the steps in the screenshots to proceed.
<div>
<img width="700" alt="localhost" src="https://github.com/user-attachments/assets/f5de1882-64d0-44ea-86e3-3a7c8405272c"/>
</div>
<div>
<img width="700" alt="proceedtolocalhost" src="https://github.com/user-attachments/assets/33f975b9-4a9a-431e-a869-72e38f3b6754"/>
</div>
**Note:** If you wish to incorporate our latest features into your Docker container, follow the [Upgrade Deployment](https://docs.opensignlabs.com/docs/self-host/docker/upgrade-deployment) steps.
## Information About ENV variables which are used to setup OpenSign™ with Docker on Localhost
To set up OpenSign™ locally using Docker, the following prerequisites are required:
Add below Environment Varaibles to the ".env.prod" file that is automatically created in order to personalize your installation:
| Environment Varibale | Value | Description |
| ------------- | ------------- | ------------- |
| PUBLIC_URL | https://localhost:3001 or https://opensign.yourdomain.com | Set it to the URL form where the app home page will be accessed |
| APP_ID | opensign | A 12 character long random app identifier. |
| MASTER_KEY | XnAadwKxxByMr | 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. |
| MONGODB_URI | mongodb://mongo-container:27017/OpenSignDB | Mongodb URI to connect to |
| PARSE_MOUNT | /app | 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. |
| SERVER_URL | http://localhost:8080/app | Set it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:8080/app|
| DO_SPACE | DOSPACENAME | Digital ocean space name or AWS S3 bucket name for uploading documents |
| DO_ENDPOINT | ams3.digitaloceanspaces.com | Digital ocean spaces endpoint or AWS S3 endpoint for uploading documents |
| DO_BASEURL | https://dospace.ams3.digitaloceanspaces.com | Digital ocean baseurl or AWS S3 base URL |
| DO_ACCESS_KEY_ID | YOUR_S3_ACCESS_ID | Digital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs |
| DO_SECRET_ACCESS_KEY | YOUR_S3_ACCESS_KEY | Digital ocean spaces secret access key or AWS s3 secret access key for uploading the docs |
| DO_REGION | YOUR_S3_REGION | Digital ocean spaces region or AWS s3 region |
| USE_LOCAL | true | If this is set to true, local file storage will be used to save files, and DO credentials will be ignored. |
| MAILGUN_API_KEY | YOUR_MAILGUNAPI_KEY | Mailgun API Key |
| MAILGUN_DOMAIN | YOUR_MAILGUNAPI_DOMAIN | Mailgun API Domain |
| MAILGUN_SENDER | - | Mailgun Sender Mail ID |
| SMTP_ENABLE | false | If this is set to true, emails will be sent through SMTP, and Mailgun credentials will be ignored. |
| SMTP_HOST | smtp.yourhost.com | Provide smtp host |
| SMTP_PORT | 443 | Provide smtp port number |
| SMTP_USERNAME | - | Provide username of smtp |
| SMTP_USER_EMAIL | mailer@yourdomain.com | Provide user email of smtp |
| SMTP_PASS | password | Provide smtp password |
| PFX_BASE64 | - | Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase. |
| PASS_PHRASE | opensign | Pass phrase of PFX or p12 document signing certificate file. |
# Steps to Generate Self Sign Certificate
```
# execute below command and use passphrase 'opensign'
openssl genrsa -des3 -out ./local_dev.key 2048
openssl req -key ./local_dev.key -new -x509 -days 365 -out ./local_dev.crt
openssl pkcs12 -inkey ./local_dev.key -in ./local_dev.crt -export -out ./local_dev.pfx
openssl base64 -in ./local_dev.pfx -out ./base64_pfx
```
Please note that when signing a document using a certificate generated through this process, it wont be recognized as valid by Adobe Acrobat. To get the green tick on your signed documents, you'll need to purchase a document signing certificate (a p12 certificate in pfx format) from an [AATL-approved Certificate Authority](https://helpx.adobe.com/in/acrobat/kb/approved-trust-list1.html).
# CORS Configuration
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 [Cross-Origin Resource Sharing](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) restriction policies; as a consequence, OpenSign app may fail with (browser console) errors like the following:
```
Access to fetch at 'https://foo.nyc3.digitaloceanspaces.com/exported_file_4627_0000-00-00T00%3A45%3A43.344Z.pdf'
from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header
is present on the requested resource. If an opaque response serves your needs, set the request's mode to
'no-cors' to fetch the resource with CORS disabled.
```
In order to address this, your document storage system must be instructed to accept requests from other hosts; below the relevant documentation links:
- [How to Configure CORS on DigitalOcean Spaces](https://docs.digitalocean.com/products/spaces/how-to/configure-cors/)
- [Configuring cross-origin resource sharing on AWS S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html)
@@ -0,0 +1,86 @@
---
title: OpenSign™ Self-Hosted 'Upgrade Deployment' Guide Using Docker on Linux, macOS, or Windows
---
import ReactPlayer from 'react-player';
This guide provides step-by-step instructions to upgrade the deployment of OpenSign using Docker.
### Step 1: Open the Terminal
- **Windows:** Press Win + X and select Windows PowerShell or Windows Terminal from the menu.
- **macOS:** Go to Applications > Utilities > Terminal or search for "Terminal" using Spotlight (Cmd + Space).
- **Linux:** Open the terminal from the application menu or by pressing Ctrl + Alt + T.
### Step 2: Pull the Latest Docker Images
1) Before executing the commands below, make sure Docker is running on your machine.
2) Ensure that you are in the same directory where you executed the `build` or `compose` Docker command.
Run the following command to pull the latest OpenSign Docker images:
**Note:** If you've made any custom changes to your docker-compose.yml file, they will be lost when running the command below. This command is intended only for those who haven't made any custom modifications to their docker-compose.yml file.
## Running on a custom domain
**linux/MacOS**
```
export HOST_URL=https://opensign.yourdomain.com && curl --remote-name-all https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml && docker compose pull
```
**Windows** (Powershell)
```
$env:HOST_URL="https://opensign.yourdomain.com"; Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml -OutFile docker-compose.yml; docker compose pull
```
**Windows** (Command Prompt)
```
set HOST_URL=https://opensign.yourdomain.com && curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml && docker compose pull
```
- This command will fetch the most recent versions of the Docker images required by OpenSign.
- Wait for the pulling process to complete. You should see messages indicating the progress and completion of the download.
## Running locally
**linux/MacOS**
```
curl --remote-name-all https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml && docker compose pull
```
**Windows** (Powershell)
```
Invoke-WebRequest -Uri https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml -OutFile docker-compose.yml; docker compose pull
```
**Windows** (Command Prompt)
```
curl -O https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml && docker compose pull
```
- This command will fetch the most recent versions of the Docker images required by OpenSign.
- Wait for the pulling process to complete. You should see messages indicating the progress and completion of the download.
<img width="550" alt="Pulling completed" src="https://github.com/user-attachments/assets/1b708b04-e6e6-45a0-9625-94e420a68343" />
### Step 3: Start the Updated OpenSign Deployment
After the images have been successfully pulled, run the following command to start the updated OpenSign deployment:
### Running Docker Compose in Detached Mode
To start your Docker Compose services in detached mode (running in the background), use the following command:
```
docker compose up -d
```
**Explanation:**
- docker-compose up: This command starts the services defined in your docker-compose.yml file.
- -d: The detached mode flag, which runs the containers in the background and frees up your terminal.
<img width="550" alt="Docker compose up" src="https://github.com/user-attachments/assets/c573baaf-f70d-468e-a531-75b85a275647" />
### OR
If you have already run the above command, you do not need to execute this command.
```
docker compose up
```
- This command will recreate and start all the necessary containers with the updated images.
- You should see logs indicating that the containers are being created or updated, and eventually, that they are up and running.
## Note:
- The docker compose pull command ensures that you have the latest version of the Docker images, while the docker compose up command applies any updates and starts the containers.
## Troubleshooting:
- If you encounter any errors, check Docker logs by running docker compose logs to get more details.
- Verify that your environment variables and Docker configuration files are set correctly.
If you require more help, feel free to reach out to our customer support on support@opensignlabs.com.
For instant help and support, **[join our Discord community!](https://discord.com/invite/xe9TDuyAyj)**
@@ -0,0 +1,7 @@
{
"label": "Guides",
"position": 4,
"link": {
"type": "generated-index"
}
}
@@ -0,0 +1,49 @@
---
title: ENV variables which are used to setup OpenSign™ with Docker on Localhost
---
## Information About ENV variables which are used to setup OpenSign™ with Docker on Localhost
To set up OpenSign™ locally using Docker, the following prerequisites are required:
Environment Varaibles:
[//]: # "| appName | open_sign_server | Name of the app. It will be visible in the verification emails sent out. |"
[//]: # "| GENERATE_SOURCEMAP | false | Set it to true if you want to generate the Sourcemap for debugging |"
[//]: # "| REACT_APP_SERVERURL | http://localhost:8080/app | Set it to the URL from where APIs will be accessible, for local development it should be localhost:8080/app (use your local port number instead) |"
[//]: # "| REACT_APP_APPID | opensignstgn | 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. |"
| Environment Varibale | Value | Description |
| ------------- | ------------- | ------------- |
| PUBLIC_URL | https://localhost:3001 | Set it to the URL form where the app home page will be accessed |
| APP_ID | opensign | A 12 character long random app identifier. |
| MASTER_KEY | XnAadwKxxByMr | 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. |
| MONGODB_URI | mongodb://mongo-container:27017/OpenSignDB | Mongodb URI to connect to |
| PARSE_MOUNT | /app | 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. |
| SERVER_URL | http://localhost:8080/app | Set it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:8080/app|
| DO_SPACE | DOSPACENAME | Digital ocean space name or AWS S3 bucket name for uploading documents |
| DO_ENDPOINT | ams3.digitaloceanspaces.com | Digital ocean spaces endpoint or AWS S3 endpoint for uploading documents |
| DO_BASEURL | https://dospace.ams3.digitaloceanspaces.com | Digital ocean baseurl or AWS S3 base URL |
| DO_ACCESS_KEY_ID | YOUR_S3_ACCESS_ID | Digital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs |
| DO_SECRET_ACCESS_KEY | YOUR_S3_ACCESS_KEY | Digital ocean spaces secret access key or AWS s3 secret access key for uploading the docs |
| DO_REGION | YOUR_S3_REGION | Digital ocean spaces region or AWS s3 region |
| USE_LOCAL | true | If this is set to true, local file storage will be used to save files, and DO credentials will be ignored. |
| MAILGUN_API_KEY | YOUR_MAILGUNAPI_KEY | Mailgun API Key |
| MAILGUN_DOMAIN | YOUR_MAILGUNAPI_DOMAIN | Mailgun API Domain |
| MAILGUN_SENDER | - | Mailgun Sender Mail ID |
| SMTP_ENABLE | false | If this is set to true, emails will be sent through SMTP, and Mailgun credentials will be ignored. |
| SMTP_HOST | smtp.yourhost.com | Provide smtp host |
| SMTP_PORT | 443 | Provide smtp port number |
| SMTP_USERNAME | - | Provide username of smtp |
| SMTP_USER_EMAIL | mailer@yourdomain.com | Provide user email of smtp |
| SMTP_PASS | password | Provide smtp password |
| PFX_BASE64 | - | Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase. |
| PASS_PHRASE | opensign | Pass phrase of PFX or p12 document signing certificate file. |
# Steps to generate self-signed document singing certificate
```
# execute below command and use passphrase 'opensign'
openssl genrsa -des3 -out ./local_dev.key 2048
openssl req -key ./local_dev.key -new -x509 -days 365 -out ./local_dev.crt
openssl pkcs12 -inkey ./local_dev.key -in ./local_dev.crt -export -out ./local_dev.pfx
openssl base64 -in ./local_dev.pfx -out ./base64_pfx
```
@@ -0,0 +1,11 @@
---
title: How to generate self-signed document signing certificate?
---
# Steps to generate self-signed document signing certificate for testing OpenSign
```
# execute below command and use passphrase 'opensign'
openssl genrsa -des3 -out ./local_dev.key 2048
openssl req -key ./local_dev.key -new -x509 -days 365 -out ./local_dev.crt
openssl pkcs12 -inkey ./local_dev.key -in ./local_dev.crt -export -out ./local_dev.pfx
openssl base64 -in ./local_dev.pfx -out ./base64_pfx
```
@@ -0,0 +1,22 @@
---
title: How to upgrade self-hosted OpenSign to v2.1.0?
---
# Steps to upgrade any previous self-hosted OpenSign to v2.1.0
For self-hosted deployments, version 2.1.0 introduces changes to the signup process:
**New Deployment:** The signup button has been removed. During a fresh deployment, an admin creation wizard will guide you through creating an Admin user.
**Migration from Previous Versions:** For those upgrading from any previous version to 2.1.0, follow these steps to promote an existing user to Admin:
After upgrading, visit "https://public_url/upgrade-2.1" and enter the requested details to change the role of an existing user to Admin.
Ensure you have your master key (set in the environment variable during installation) and the email ID of the user to be promoted ready.
**User Roles and Capabilities**
In the self-hosted version, Admins have comprehensive control:
Admin: Admins can manage users and share templates with the entire organization. Only Admins can create users, with roles being assigned as OrgAdmin, Editor, or User.
OrgAdmin: OrgAdmins have the same access as Admins. Essentially they are new admins that can be created as and when needed.
Editor: Editors can share templates with all users but cannot create users.
User: Users cannot share templates or create users. They can only create emplates for themselves.
All other features remain accessible to all roles.
+6
View File
@@ -0,0 +1,6 @@
---
sidebar_position: 1
---
# Self-Hosting OpenSign
This section of the OpenSign™ 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™ - the best open source document signing infrastructure.
+213
View File
@@ -0,0 +1,213 @@
// @ts-check
// `@type` JSDoc annotations allow editor autocompletion and type checking
// (when paired with `@ts-check`).
// There are various equivalent ways to declare your Docusaurus config.
// See: https://docusaurus.io/docs/api/docusaurus-config
import {themes as prismThemes} from 'prism-react-renderer';
/** @type {import('@docusaurus/types').Config} */
const config = {
title: 'OpenSign™',
tagline: 'Official OpenSign™ Docs - tutorials, API documentation, self-host help & much more.',
favicon: 'img/favicon.ico',
// Set the production url of your site here
url: 'https://docs.opensignlabs.com',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<pro jectName>/'
baseUrl: '/',
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't ne ed these.
organizationName: 'opensignlabs', // Usually your GitHub org/user name.
projectName: 'opensign', // Usually your repo name.
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn',
// Even if you don't use internationalization, you can use this field to set
// useful metadata like html lang. For example, if your site is Chinese, you
// may want to replace "en" with "zh-Hans".
i18n: {
defaultLocale: 'en',
locales: ['en'],
},
presets: [
[
'classic',
/** @type {import('@docusaurus/preset-classic').Options} */
({
docs: {
sidebarPath: './sidebars.js',
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/opensignlabs/opensign/tree/feat-docs/docs/',
docItemComponent: "@theme/ApiItem" // derived from docusaurus-theme-openapi-docs
},
blog: {
showReadingTime: true,
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/facebook/docusaurus/tree/feat-docs/docs/',
},
theme: {
customCss: './src/css/custom.css',
},
})
],
],
plugins: [
[
"docusaurus-plugin-openapi-docs",
{
id: "openapi",
docsPluginId: "default", // e.g. "classic" or the plugin-content-docs id
config: {
opensign: { // "petstore" is considered the <id> that you will reference in the CLI
specPath: "docs/API-docs/opensign.yaml", // path or URL to the OpenAPI spec
outputDir: "docs/API-docs", // output directory for generated *.mdx and sidebar.js files
sidebarOptions: {
groupPathsBy: "tag", // generate a sidebar.js slice that groups operations by tag
},
}
}
},
]
],
themes: ["docusaurus-theme-openapi-docs"], // exports ApiItem and ApiDemoPanel
themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
announcementBar: {
id: 'support_us',
content:
'Help use spread the word - ⭐ OpenSign on <a target="_blank" rel="noopener" href="https://github.com/opensignlabs/opensign">GitHub</a>',
backgroundColor: '#cae4fa',
textColor: '#091E42',
isCloseable: false,
},
// Replace with your project's social card
image: 'img/docusaurus-social-card.png',
navbar: {
title: 'OpenSign™',
logo: {
alt: 'OpenSign™ Logo',
src: 'img/logo.png',
},
items: [
{
type: 'docSidebar',
sidebarId: 'tutorialSidebar',
position: 'left',
label: 'Help',
},
{
type: 'docSidebar',
sidebarId: 'apiSidebar',
position: 'left',
label: 'APIs',
},
{
type: 'docSidebar',
sidebarId: 'contributeSidebar',
position: 'left',
label: 'Contribute',
},
{
href: 'https://www.opensignlabs.com/plans-pricing',
label: 'Cloud Pricing',
position: 'left',
},
//{to: '/blog', label: 'Blog', position: 'left'},
{
type: 'docSidebar',
sidebarId: 'selfhostSidebar',
position: 'left',
label: 'Self-host',
},
{
href: 'https://github.com/opensignlabs/opensign',
label: 'GitHub',
position: 'right',
},
],
},
footer: {
style: 'dark',
links: [
{
title: 'Docs',
items: [
{
label: 'Help',
to: '/docs/help/intro',
},
{
label: 'APIs',
to: '/docs/API-docs/opensign-api-v-1',
},
{
label: 'Contribute',
to: '/docs/contribute/intro',
},
{
label: 'Self-host',
to: '/docs/self-host/intro',
},
],
},
{
title: 'Community',
items: [
{
label: 'Discord',
href: 'https://discord.com/invite/xe9TDuyAyj',
},
{
label: 'LinkedIn',
href: 'https://www.linkedin.com/company/opensign%E2%84%A2/',
},
{
label: 'Twitter',
href: 'https://www.twitter.com/opensignhq',
},
{
label: 'Facebook',
href: 'https://www.facebook.com/profile.php?id=61551030403669',
},
],
},
{
title: 'More',
items: [
// {
// label: 'Blog',
// to: '/blog',
// },
{
label: 'Official Website',
href: 'https://www.opensignlabs.com',
},
{
label: 'GitHub',
href: 'https://github.com/opensignlabs/opensign',
},
],
},
],
copyright: `Copyright © ${new Date().getFullYear()} OpenSign™. <br>The best Open Source DocuSign alternative.`,
},
prism: {
theme: prismThemes.github,
darkTheme: prismThemes.dracula,
},
}),
};
export default config;
+22854
View File
File diff suppressed because it is too large Load Diff
+49
View File
@@ -0,0 +1,49 @@
{
"name": "OpenSign-Docs",
"version": "0.1.0",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
"start": "docusaurus start",
"build": "docusaurus build",
"swizzle": "docusaurus swizzle",
"deploy": "docusaurus deploy",
"clear": "docusaurus clear",
"serve": "docusaurus serve",
"write-translations": "docusaurus write-translations",
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
"@docusaurus/core": "^3.7.0",
"@docusaurus/plugin-content-docs": "^3.7.0",
"@docusaurus/preset-classic": "^3.7.0",
"@mdx-js/react": "^3.0.0",
"add": "^2.0.6",
"clsx": "^1.2.1",
"docusaurus-plugin-openapi-docs": "^4.3.4",
"docusaurus-theme-openapi-docs": "^4.3.4",
"prism-react-renderer": "^2.1.0",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"react-player": "^2.16.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "^3.7.0",
"@docusaurus/types": "^3.7.0"
},
"browserslist": {
"production": [
">0.5%",
"not dead",
"not op_mini all"
],
"development": [
"last 3 chrome version",
"last 3 firefox version",
"last 5 safari version"
]
},
"engines": {
"node": ">=18.0"
}
}
+38
View File
@@ -0,0 +1,38 @@
/**
* Creating a sidebar enables you to:
- create an ordered group of docs
- render a sidebar for each doc of that group
- provide next/previous navigation
The sidebars can be generated from the filesystem, or explicitly defined here.
Create as many sidebars as you want.
*/
// @ts-check
import apiSidebar from './docs/API-docs/sidebar.ts';
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = {
// By default, Docusaurus generates a sidebar from the docs folder structure
tutorialSidebar: [{type: 'autogenerated', dirName: 'help'}],
selfhostSidebar: [{type: 'autogenerated', dirName: 'self-host'}],
contributeSidebar: [{type: 'autogenerated', dirName: 'contribute'}],
apiSidebar: apiSidebar,
// But you can create a sidebar manually
/*
tutorialSidebar: [
'intro',
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
*/
};
export default sidebars;
@@ -0,0 +1,94 @@
import React from 'react';
import clsx from 'clsx';
import styles from './styles.module.css';
const FeatureList = [
{
title: 'What is OpenSign™?',
PNGUrl: '/img/logo.svg',
description: (
<>
<div style={{ textAlign: 'justify' }}>At OpenSign Labs, we're redefining the landscape of digital signatures. Our mission is to make digital document signing not just a formality, but an integral part of your organization's digital transformation journey. OpenSign Docs is your gateway to a world where efficiency, security and simplicity reign supreme.</div>
</>
),
},
{
title: 'Why Choose OpenSign™?',
PNGUrl: '/img/whychooseus.svg',
description: (
<>
<div style={{ textAlign: 'justify' }}>
<ul>
<li>
<strong>Innovative Technology</strong>: Harness the latest advancements in e-signature technology.
</li>
<li>
<strong>Data-Driven Security</strong>: With encryption and compliance at the forefront, your documents are in safe hands. We also provide self host option for those who want full control of their data.
</li>
<li>
<strong>User-Centric Design</strong>: Experience unparalleled ease of use, designed for individuals and businesses alike. OpenSign user experience is designed while keeping the most novice user in mind. Finally, a tool that does not need numerous hours of training to get started.
</li>
<li>
<strong>Scalable Solutions</strong>: From small startups to large corporations, our platform grows with your needs. From free for life plan for individuals to branding and single-sign-on support for enterprises, our platform supports everything.
</li>
</ul>
</div>
</>
),
},
{
title: 'Getting Started',
PNGUrl: '/img/getstarted.svg',
description: (
<>
<div style={{ textAlign: 'justify' }}>
<p>
Dive into our comprehensive guides and tutorials. Whether you're a new user or looking to integrate OpenSign into your existing workflow, we have everything you need to get started.
</p>
<ul>
<li>
<strong><a href='https://docs.opensignlabs.com/docs/help/intro'>Tutorial</a></strong>: Get up and running in no time. Get all the help you need to navigate you through the already seamless UX of OpenSign.
</li>
<li>
<strong><a href='https://github.com/OpenSignLabs/OpenSign/discussions'>Github Discussions</a></strong>: Discuss your ideas & issues with the community.
</li>
<li>
<strong>Social media</strong>: Join us on <a href='https://discord.com/invite/xe9TDuyAyj'>Discord</a>, <a href='https://www.twitter.com/opensignhq'>Twitter</a>, <a href='https://www.linkedin.com/company/opensign%E2%84%A2'>LinkedIn</a> & <a href='https://www.facebook.com/profile.php?id=61551030403669'>Facebook</a>.
</li>
</ul>
</div>
</>
),
},
];
function Feature({PNGUrl, title, description}) {
return (
<div className={clsx('col col--4')}>
<div className="text--center">
<img src={PNGUrl} />
</div>
<div className="text--center padding-horiz--md">
<h3>{title}</h3>
<p>{description}</p>
</div>
</div>
);
}
export default function HomepageFeatures() {
return (
<section className={styles.features}>
<div className="container">
<div className="row">
{FeatureList.map((props, idx) => (
<Feature key={idx} {...props} />
))}
</div>
</div>
</section>
);
}
@@ -0,0 +1,11 @@
.features {
display: flex;
align-items: center;
padding: 2rem 0;
width: 100%;
}
.featureSvg {
height: 200px;
width: 200px;
}
+38
View File
@@ -0,0 +1,38 @@
/**
* Any CSS included here will be global. The classic template
* bundles Infima by default. Infima is a CSS framework designed to
* work well for content-centric websites.
*/
/* You can override the default Infima variables here. */
:root {
--ifm-color-primary: #3254A0;
--ifm-color-primary-dark: #0A1026;
--ifm-color-primary-darker: #080F27;
--ifm-color-primary-darkest: #070E2A;
--ifm-color-primary-light: #0B194B;
--ifm-color-primary-lighter: #0E205F;
--ifm-color-primary-lightest: #112775;
--ifm-code-font-size: 95%;
--docusaurus-highlighted-code-line-bg: rgba(215, 16, 16, 0.1);
--ifm-color-primary-gradient: linear-gradient(45deg, #c6cde4, #112775); /* created by chatgpt */
}
/* For readability concerns, you should choose a lighter palette in dark mode. */
[data-theme='dark'] {
--ifm-color-primary: #5768a3;
--ifm-color-primary-dark: #21af90;
--ifm-color-primary-darker: #1fa588;
--ifm-color-primary-darkest: #1a8870;
--ifm-color-primary-light: #29d5b0;
--ifm-color-primary-lighter: #32d8b4;
--ifm-color-primary-lightest: #4fddbf;
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
}
/* created by chatgpt */
.hero.hero--primary.heroBannerGradient {
background: var(--ifm-color-primary-gradient);
}
+40
View File
@@ -0,0 +1,40 @@
import React from 'react';
import clsx from 'clsx';
import Layout from '@theme/Layout';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import styles from './index.module.css';
import HomepageFeatures from '@site/src/components/HomepageFeatures';
function HomepageHeader() {
const {siteConfig} = useDocusaurusContext();
return (
<header className={clsx('hero hero--primary', styles.heroBanner)}>
<div className="container">
<h1 className="hero__title">{siteConfig.title}</h1>
<p className="hero__subtitle">{siteConfig.tagline}</p>
<div className={styles.buttons}>
<Link
className="button button--secondary button--lg"
to="/docs/help/intro">
Access Docs 🚀
</Link>
</div>
</div>
</header>
);
}
export default function Home() {
const {siteConfig} = useDocusaurusContext();
return (
<Layout
title={`Official OpenSign™ Docs - tutorials, API documentation, self-host help & much more.`}
description="Explore the official OpenSign™ documentation! Find comprehensive tutorials, API guides, self-hosting help, and much more to enhance your digital signing experience.">
<HomepageHeader />
<main>
<HomepageFeatures />
</main>
</Layout>
);
}
+23
View File
@@ -0,0 +1,23 @@
/**
* CSS files with the .module.css suffix will be treated as CSS modules
* and scoped locally.
*/
.heroBanner {
padding: 4rem 0;
text-align: center;
position: relative;
overflow: hidden;
}
@media screen and (max-width: 996px) {
.heroBanner {
padding: 2rem;
}
}
.buttons {
display: flex;
align-items: center;
justify-content: center;
}
+7
View File
@@ -0,0 +1,7 @@
---
title: Markdown page example
---
# Markdown page example
You don't need React to write simple standalone pages.
View File
+1
View File
@@ -0,0 +1 @@
docs.opensignlabs.com
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 59 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 222 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

+104
View File
@@ -0,0 +1,104 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
width="360.000000pt" height="241.000000pt" viewBox="0 0 360.000000 241.000000"
preserveAspectRatio="xMidYMid meet">
<g transform="translate(0.000000,241.000000) scale(0.100000,-0.100000)"
fill="#000000" stroke="none">
<path d="M698 2159 c-68 -35 -87 -113 -47 -191 11 -22 17 -43 12 -47 -5 -3
-15 -20 -22 -38 -10 -24 -24 -36 -56 -49 -24 -9 -62 -34 -84 -55 -73 -70 -145
-245 -140 -338 1 -25 -1 -54 -6 -64 -4 -11 -3 -23 4 -30 6 -6 11 -27 11 -48 0
-42 17 -98 36 -119 12 -12 20 -8 59 34 50 55 61 56 142 6 26 -16 91 -43 143
-60 90 -29 95 -30 108 -13 29 41 27 63 -13 97 -33 29 -35 34 -19 38 11 3 26 9
36 13 12 5 18 0 22 -22 4 -15 26 -53 49 -84 45 -60 117 -128 117 -111 0 6 -5
14 -11 18 -8 4 -7 9 2 15 10 6 9 12 -6 28 -22 25 -34 19 -15 -6 9 -11 5 -9 -9
3 -26 24 -21 44 10 44 10 0 19 6 19 13 -1 35 -50 213 -75 272 -7 17 -17 71
-23 120 -12 116 -31 156 -93 197 -34 21 -46 35 -39 42 17 17 11 36 -12 36 -54
0 -134 84 -109 113 5 7 11 28 13 47 3 31 6 35 28 32 33 -5 51 -22 23 -22 -11
0 -24 -7 -27 -16 -5 -13 -2 -14 11 -8 10 4 28 8 40 8 16 1 21 6 18 16 -3 11 2
15 20 15 24 0 24 0 4 -21 -24 -25 -25 -62 -1 -81 15 -13 15 -14 -11 -10 -33 5
-46 -9 -17 -18 24 -7 63 3 55 15 -3 4 2 27 10 50 8 23 12 46 9 51 -3 5 0 9 6
9 8 0 9 11 5 33 -7 37 -65 97 -94 97 -11 0 -25 2 -33 5 -7 2 -30 -5 -50 -16z
m159 -145 c-3 -3 -12 -4 -19 -1 -8 3 -5 6 6 6 11 1 17 -2 13 -5z m-17 -44 c0
-5 -4 -10 -10 -10 -5 0 -10 5 -10 10 0 6 5 10 10 10 6 0 10 -4 10 -10z"/>
<path d="M2465 2153 c-64 -14 -115 -57 -115 -97 0 -8 -8 -20 -17 -26 -17 -10
-17 -12 4 -26 l21 -15 -29 -30 c-49 -50 -29 -104 40 -111 l39 -3 -24 28 c-13
16 -24 32 -25 35 0 4 -2 18 -4 32 -2 20 4 30 26 42 16 10 39 33 50 53 14 23
27 34 36 31 8 -3 19 -6 24 -6 5 0 9 -13 9 -30 0 -28 -3 -30 -35 -30 -19 0 -35
-4 -35 -8 0 -5 12 -7 28 -5 39 5 49 -6 54 -64 4 -46 2 -53 -18 -63 -30 -17
-42 -90 -14 -90 15 0 60 61 60 81 0 15 7 19 36 19 20 0 52 9 70 21 29 18 33
24 28 52 -3 18 -9 41 -14 52 -4 11 -11 28 -14 38 -3 9 -16 21 -29 26 -13 5
-34 26 -45 45 -19 31 -58 59 -80 55 -4 -1 -16 -3 -27 -6z"/>
<path d="M760 1994 c0 -17 22 -14 28 4 2 7 -3 12 -12 12 -9 0 -16 -7 -16 -16z"/>
<path d="M2450 1965 c0 -8 5 -15 10 -15 6 0 10 7 10 15 0 8 -4 15 -10 15 -5 0
-10 -7 -10 -15z"/>
<path d="M2366 1961 c-4 -5 -2 -12 3 -15 5 -4 12 -2 15 3 4 5 2 12 -3 15 -5 4
-12 2 -15 -3z"/>
<path d="M2403 1940 c1 -16 5 -30 10 -30 11 0 9 48 -3 55 -5 3 -8 -7 -7 -25z"/>
<path d="M2415 1881 c-10 -18 17 -23 33 -7 15 15 15 16 -5 16 -12 0 -24 -4
-28 -9z"/>
<path d="M2601 1741 c-18 -33 -53 -81 -77 -108 -36 -40 -45 -45 -54 -33 -17
25 -40 111 -40 152 0 26 -4 38 -14 38 -26 0 -74 -50 -81 -83 -4 -17 -19 -54
-32 -82 -50 -97 -50 -99 -43 -156 7 -51 0 -79 -20 -79 -4 0 -11 42 -15 93 -4
50 -12 103 -16 116 -6 15 -6 28 1 36 9 11 7 12 -9 8 -12 -3 -21 -12 -21 -19 0
-12 -38 -14 -209 -14 -133 0 -212 -4 -216 -10 -6 -10 7 -180 21 -274 l6 -39
-155 6 c-86 3 -183 3 -216 0 -59 -6 -61 -7 -61 -34 0 -26 3 -29 35 -29 l35 0
0 -425 c0 -234 -3 -425 -7 -425 -5 0 -18 16 -31 35 -25 39 -46 44 -62 15 -14
-27 -29 -25 -40 4 -5 13 -14 27 -19 31 -24 14 -10 33 29 40 58 10 52 29 -6 21
-26 -3 -55 -6 -64 -6 -13 0 -16 -6 -13 -23 3 -13 0 -58 -6 -101 -8 -58 -8 -82
0 -92 13 -16 95 -19 101 -5 2 5 29 0 61 -11 49 -17 69 -19 125 -12 57 8 67 12
67 29 0 15 -12 24 -42 35 l-43 14 0 438 0 438 145 0 c109 0 145 -3 146 -12 1
-7 2 -222 3 -478 l1 -465 23 -3 22 -3 0 481 0 481 405 -1 c405 -2 405 -2 417
-23 16 -30 27 -96 17 -102 -4 -3 -45 9 -91 26 -108 40 -165 41 -238 4 -30 -15
-57 -29 -59 -31 -2 -2 4 -20 14 -40 25 -53 15 -114 -39 -231 -45 -98 -63 -116
-91 -93 -12 10 -15 9 -15 -6 0 -31 -63 -145 -107 -194 -47 -53 -69 -98 -54
-113 14 -14 111 22 142 53 15 14 32 24 38 22 18 -6 54 85 48 122 -8 55 19 152
61 219 49 78 62 118 59 185 -2 48 1 56 26 78 15 13 38 24 50 24 57 -1 73 -55
37 -123 -25 -46 -25 -44 3 -51 27 -7 64 -53 89 -115 l19 -46 -5 53 c-3 30 -16
73 -30 98 -30 53 -23 60 51 50 57 -8 77 -8 166 0 l67 6 0 -366 0 -366 25 0 25
0 0 480 0 480 150 0 150 0 0 -480 c0 -473 0 -480 20 -480 20 0 20 7 20 480 l0
480 35 0 c32 0 35 2 35 30 l0 30 -210 0 c-198 0 -210 1 -201 18 5 9 16 42 25
72 l16 55 -37 -39 c-20 -22 -59 -54 -87 -73 -49 -32 -54 -33 -154 -33 -66 0
-101 4 -97 10 3 6 33 10 66 10 l60 0 83 86 c81 84 86 87 120 81 20 -3 36 -3
36 1 0 4 -25 68 -54 142 -58 146 -73 164 -141 174 l-40 6 -34 -59z m-601 -266
c27 -33 -17 -74 -48 -43 -16 16 -15 23 4 42 19 20 28 20 44 1z m430 -94 c0
-14 -6 -40 -12 -58 -12 -32 -15 -34 -48 -28 -19 4 -36 8 -38 10 -2 2 11 30 27
64 29 56 33 60 51 49 11 -7 20 -24 20 -37z m108 12 c-10 -2 -18 -11 -18 -18 0
-7 8 -16 18 -19 10 -3 6 -4 -8 -3 -18 1 -26 9 -28 25 -3 18 1 22 25 21 17 -1
21 -3 11 -6z"/>
<path d="M2097 1749 c7 -7 15 -10 18 -7 3 3 -2 9 -12 12 -14 6 -15 5 -6 -5z"/>
<path d="M2503 1742 c-14 -4 -20 -12 -15 -19 5 -8 17 -6 42 8 36 19 21 25 -27
11z"/>
<path d="M1511 1598 c-3 -77 1 -138 9 -133 9 6 7 141 -2 150 -3 3 -6 -4 -7
-17z"/>
<path d="M1456 1565 c-4 -14 -2 -35 5 -46 6 -11 8 -27 5 -35 -3 -8 -1 -14 4
-14 4 0 8 27 7 60 -2 63 -11 77 -21 35z"/>
<path d="M2085 1085 c-3 -8 -7 -21 -9 -27 -2 -7 0 -23 5 -35 7 -18 16 -23 46
-23 34 0 39 3 49 33 6 17 14 40 19 50 6 15 1 17 -49 17 -42 0 -58 -4 -61 -15z"/>
<path d="M1010 1061 c13 -25 13 -44 0 -36 -5 3 -10 -2 -11 -12 0 -16 -1 -16
-9 2 -9 20 -9 20 -15 -2 -6 -18 -11 -20 -32 -12 -40 15 -53 11 -53 -16 l0 -25
100 0 c102 0 132 13 59 25 -32 6 -37 9 -26 18 24 20 27 44 8 61 -24 22 -34 20
-21 -3z"/>
<path d="M425 1019 c-12 -52 6 -60 126 -56 75 2 97 5 79 12 -13 5 -54 23 -90
42 -84 42 -106 43 -115 2z"/>
<path d="M2541 774 c0 -11 3 -14 6 -6 3 7 2 16 -1 19 -3 4 -6 -2 -5 -13z"/>
<path d="M2420 624 c0 -93 -4 -134 -12 -141 -7 -5 -38 -20 -68 -32 -150 -62
-171 -73 -165 -92 3 -9 1 -20 -5 -24 -17 -10 -11 -54 8 -64 30 -16 65 14 57
48 -6 27 -3 29 87 63 51 20 95 34 96 32 8 -6 7 -76 0 -80 -16 -10 -8 -53 11
-64 31 -16 51 -12 63 15 9 19 9 28 0 37 -15 15 -16 98 -1 98 28 0 49 -22 49
-53 0 -39 21 -72 60 -92 50 -26 60 -20 60 30 0 33 4 45 15 45 11 0 13 -7 9
-29 -7 -36 27 -66 58 -50 19 10 25 54 8 64 -6 4 -8 15 -5 25 4 13 -5 22 -44
39 -43 18 -53 28 -75 77 -14 31 -26 66 -26 77 0 11 -5 35 -12 52 -10 31 -12
32 -37 19 -14 -8 -34 -11 -43 -8 -22 6 -23 -5 -4 -31 21 -30 31 -105 14 -105
-32 1 -39 17 -38 91 2 66 -1 80 -29 129 l-31 55 0 -131z"/>
<path d="M788 513 c-39 -3 -47 -8 -50 -25 -2 -17 -27 -31 -113 -68 -67 -28
-110 -51 -111 -60 0 -8 -4 -23 -8 -32 -13 -29 -3 -53 25 -56 34 -4 54 20 40
47 -10 18 -4 22 69 50 44 17 82 31 86 31 3 0 3 -35 -1 -77 -6 -74 -5 -79 20
-105 32 -34 70 -45 91 -27 14 12 16 28 10 111 -4 54 -6 98 -4 98 2 0 37 -13
78 -28 69 -26 75 -30 72 -54 -3 -34 32 -62 60 -47 19 10 25 44 8 54 -5 3 -10
16 -10 28 0 18 -17 29 -97 64 -71 30 -101 38 -112 31 -21 -13 -71 6 -71 27 0
11 11 15 40 15 29 0 40 4 40 15 0 8 -3 14 -7 13 -5 -1 -29 -3 -55 -5z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.7 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

+1
View File
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 53 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 902 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 MiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

+171
View File
@@ -0,0 +1,171 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1088" height="687.962" viewBox="0 0 1088 687.962">
<title>Easy to Use</title>
<g id="Group_12" data-name="Group 12" transform="translate(-57 -56)">
<g id="Group_11" data-name="Group 11" transform="translate(57 56)">
<path id="Path_83" data-name="Path 83" d="M1017.81,560.461c-5.27,45.15-16.22,81.4-31.25,110.31-20,38.52-54.21,54.04-84.77,70.28a193.275,193.275,0,0,1-27.46,11.94c-55.61,19.3-117.85,14.18-166.74,3.99a657.282,657.282,0,0,0-104.09-13.16q-14.97-.675-29.97-.67c-15.42.02-293.07,5.29-360.67-131.57-16.69-33.76-28.13-75-32.24-125.27-11.63-142.12,52.29-235.46,134.74-296.47,155.97-115.41,369.76-110.57,523.43,7.88C941.15,276.621,1036.99,396.031,1017.81,560.461Z" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_84" data-name="Path 84" d="M986.56,670.771c-20,38.52-47.21,64.04-77.77,80.28a193.272,193.272,0,0,1-27.46,11.94c-55.61,19.3-117.85,14.18-166.74,3.99a657.3,657.3,0,0,0-104.09-13.16q-14.97-.675-29.97-.67-23.13.03-46.25,1.72c-100.17,7.36-253.82-6.43-321.42-143.29L382,283.981,444.95,445.6l20.09,51.59,55.37-75.98L549,381.981l130.2,149.27,36.8-81.27L970.78,657.9l14.21,11.59Z" transform="translate(-56 -106.019)" fill="#f2f2f2"/>
<path id="Path_85" data-name="Path 85" d="M302,282.962l26-57,36,83-31-60Z" opacity="0.1"/>
<path id="Path_86" data-name="Path 86" d="M610.5,753.821q-14.97-.675-29.97-.67L465.04,497.191Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<path id="Path_87" data-name="Path 87" d="M464.411,315.191,493,292.962l130,150-132-128Z" opacity="0.1"/>
<path id="Path_88" data-name="Path 88" d="M908.79,751.051a193.265,193.265,0,0,1-27.46,11.94L679.2,531.251Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<circle id="Ellipse_11" data-name="Ellipse 11" cx="3" cy="3" r="3" transform="translate(479 98.962)" fill="#f2f2f2"/>
<circle id="Ellipse_12" data-name="Ellipse 12" cx="3" cy="3" r="3" transform="translate(396 201.962)" fill="#f2f2f2"/>
<circle id="Ellipse_13" data-name="Ellipse 13" cx="2" cy="2" r="2" transform="translate(600 220.962)" fill="#f2f2f2"/>
<circle id="Ellipse_14" data-name="Ellipse 14" cx="2" cy="2" r="2" transform="translate(180 265.962)" fill="#f2f2f2"/>
<circle id="Ellipse_15" data-name="Ellipse 15" cx="2" cy="2" r="2" transform="translate(612 96.962)" fill="#f2f2f2"/>
<circle id="Ellipse_16" data-name="Ellipse 16" cx="2" cy="2" r="2" transform="translate(736 192.962)" fill="#f2f2f2"/>
<circle id="Ellipse_17" data-name="Ellipse 17" cx="2" cy="2" r="2" transform="translate(858 344.962)" fill="#f2f2f2"/>
<path id="Path_89" data-name="Path 89" d="M306,121.222h-2.76v-2.76h-1.48v2.76H299V122.7h2.76v2.759h1.48V122.7H306Z" fill="#f2f2f2"/>
<path id="Path_90" data-name="Path 90" d="M848,424.222h-2.76v-2.76h-1.48v2.76H841V425.7h2.76v2.759h1.48V425.7H848Z" fill="#f2f2f2"/>
<path id="Path_91" data-name="Path 91" d="M1144,719.981c0,16.569-243.557,74-544,74s-544-57.431-544-74,243.557,14,544,14S1144,703.413,1144,719.981Z" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_92" data-name="Path 92" d="M1144,719.981c0,16.569-243.557,74-544,74s-544-57.431-544-74,243.557,14,544,14S1144,703.413,1144,719.981Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<ellipse id="Ellipse_18" data-name="Ellipse 18" cx="544" cy="30" rx="544" ry="30" transform="translate(0 583.962)" fill="#3f3d56"/>
<path id="Path_93" data-name="Path 93" d="M624,677.981c0,33.137-14.775,24-33,24s-33,9.137-33-24,33-96,33-96S624,644.844,624,677.981Z" transform="translate(-56 -106.019)" fill="#ff6584"/>
<path id="Path_94" data-name="Path 94" d="M606,690.66c0,15.062-6.716,10.909-15,10.909s-15,4.153-15-10.909,15-43.636,15-43.636S606,675.6,606,690.66Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<rect id="Rectangle_97" data-name="Rectangle 97" width="92" height="18" rx="9" transform="translate(489 604.962)" fill="#2f2e41"/>
<rect id="Rectangle_98" data-name="Rectangle 98" width="92" height="18" rx="9" transform="translate(489 586.962)" fill="#2f2e41"/>
<path id="Path_95" data-name="Path 95" d="M193,596.547c0,55.343,34.719,100.126,77.626,100.126" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_96" data-name="Path 96" d="M270.626,696.673c0-55.965,38.745-101.251,86.626-101.251" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_97" data-name="Path 97" d="M221.125,601.564c0,52.57,22.14,95.109,49.5,95.109" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_98" data-name="Path 98" d="M270.626,696.673c0-71.511,44.783-129.377,100.126-129.377" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_99" data-name="Path 99" d="M254.3,697.379s11.009-.339,14.326-2.7,16.934-5.183,17.757-1.395,16.544,18.844,4.115,18.945-28.879-1.936-32.19-3.953S254.3,697.379,254.3,697.379Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_100" data-name="Path 100" d="M290.716,710.909c-12.429.1-28.879-1.936-32.19-3.953-2.522-1.536-3.527-7.048-3.863-9.591l-.368.014s.7,8.879,4.009,10.9,19.761,4.053,32.19,3.953c3.588-.029,4.827-1.305,4.759-3.2C294.755,710.174,293.386,710.887,290.716,710.909Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_101" data-name="Path 101" d="M777.429,633.081c0,38.029,23.857,68.8,53.341,68.8" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_102" data-name="Path 102" d="M830.769,701.882c0-38.456,26.623-69.575,59.525-69.575" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_103" data-name="Path 103" d="M796.755,636.528c0,36.124,15.213,65.354,34.014,65.354" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_104" data-name="Path 104" d="M830.769,701.882c0-49.139,30.773-88.9,68.8-88.9" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_105" data-name="Path 105" d="M819.548,702.367s7.565-.233,9.844-1.856,11.636-3.562,12.2-.958,11.368,12.949,2.828,13.018-19.844-1.33-22.119-2.716S819.548,702.367,819.548,702.367Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_106" data-name="Path 106" d="M844.574,711.664c-8.54.069-19.844-1.33-22.119-2.716-1.733-1.056-2.423-4.843-2.654-6.59l-.253.01s.479,6.1,2.755,7.487,13.579,2.785,22.119,2.716c2.465-.02,3.317-.9,3.27-2.2C847.349,711.159,846.409,711.649,844.574,711.664Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_107" data-name="Path 107" d="M949.813,724.718s11.36-1.729,14.5-4.591,16.89-7.488,18.217-3.667,19.494,17.447,6.633,19.107-30.153,1.609-33.835-.065S949.813,724.718,949.813,724.718Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_108" data-name="Path 108" d="M989.228,734.173c-12.86,1.659-30.153,1.609-33.835-.065-2.8-1.275-4.535-6.858-5.2-9.45l-.379.061s1.833,9.109,5.516,10.783,20.975,1.725,33.835.065c3.712-.479,4.836-1.956,4.529-3.906C993.319,732.907,991.991,733.817,989.228,734.173Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_109" data-name="Path 109" d="M670.26,723.9s9.587-1.459,12.237-3.875,14.255-6.32,15.374-3.095,16.452,14.725,5.6,16.125-25.448,1.358-28.555-.055S670.26,723.9,670.26,723.9Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_110" data-name="Path 110" d="M703.524,731.875c-10.853,1.4-25.448,1.358-28.555-.055-2.367-1.076-3.827-5.788-4.39-7.976l-.32.051s1.547,7.687,4.655,9.1,17.7,1.456,28.555.055c3.133-.4,4.081-1.651,3.822-3.3C706.977,730.807,705.856,731.575,703.524,731.875Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_111" data-name="Path 111" d="M178.389,719.109s7.463-1.136,9.527-3.016,11.1-4.92,11.969-2.409,12.808,11.463,4.358,12.553-19.811,1.057-22.23-.043S178.389,719.109,178.389,719.109Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_112" data-name="Path 112" d="M204.285,725.321c-8.449,1.09-19.811,1.057-22.23-.043-1.842-.838-2.979-4.506-3.417-6.209l-.249.04s1.2,5.984,3.624,7.085,13.781,1.133,22.23.043c2.439-.315,3.177-1.285,2.976-2.566C206.973,724.489,206.1,725.087,204.285,725.321Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_113" data-name="Path 113" d="M439.7,707.337c0,30.22-42.124,20.873-93.7,20.873s-93.074,9.347-93.074-20.873,42.118-36.793,93.694-36.793S439.7,677.117,439.7,707.337Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<path id="Path_114" data-name="Path 114" d="M439.7,699.9c0,30.22-42.124,20.873-93.7,20.873s-93.074,9.347-93.074-20.873S295.04,663.1,346.616,663.1,439.7,669.676,439.7,699.9Z" transform="translate(-56 -106.019)" fill="#3f3d56"/>
</g>
<g id="docusaurus_keytar" transform="translate(312.271 493.733)">
<path id="Path_40" data-name="Path 40" d="M99,52h91.791V89.153H99Z" transform="translate(5.904 -14.001)" fill="#fff" fill-rule="evenodd"/>
<path id="Path_41" data-name="Path 41" d="M24.855,163.927A21.828,21.828,0,0,1,5.947,153a21.829,21.829,0,0,0,18.908,32.782H46.71V163.927Z" transform="translate(-3 -4.634)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_42" data-name="Path 42" d="M121.861,61.1l76.514-4.782V45.39A21.854,21.854,0,0,0,176.52,23.535H78.173L75.441,18.8a3.154,3.154,0,0,0-5.464,0l-2.732,4.732L64.513,18.8a3.154,3.154,0,0,0-5.464,0l-2.732,4.732L53.586,18.8a3.154,3.154,0,0,0-5.464,0L45.39,23.535c-.024,0-.046,0-.071,0l-4.526-4.525a3.153,3.153,0,0,0-5.276,1.414l-1.5,5.577-5.674-1.521a3.154,3.154,0,0,0-3.863,3.864L26,34.023l-5.575,1.494a3.155,3.155,0,0,0-1.416,5.278l4.526,4.526c0,.023,0,.046,0,.07L18.8,48.122a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,59.05a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,69.977a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,80.9a3.154,3.154,0,0,0,0,5.464L23.535,89.1,18.8,91.832a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,102.76a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,113.687a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,124.615a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,135.542a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,146.469a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,157.4a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,168.324a3.154,3.154,0,0,0,0,5.464l4.732,2.732A21.854,21.854,0,0,0,45.39,198.375H176.52a21.854,21.854,0,0,0,21.855-21.855V89.1l-76.514-4.782a11.632,11.632,0,0,1,0-23.219" transform="translate(-1.681 -17.226)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_43" data-name="Path 43" d="M143,186.71h32.782V143H143Z" transform="translate(9.984 -5.561)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_44" data-name="Path 44" d="M196.71,159.855a5.438,5.438,0,0,0-.7.07c-.042-.164-.081-.329-.127-.493a5.457,5.457,0,1,0-5.4-9.372q-.181-.185-.366-.367a5.454,5.454,0,1,0-9.384-5.4c-.162-.046-.325-.084-.486-.126a5.467,5.467,0,1,0-10.788,0c-.162.042-.325.08-.486.126a5.457,5.457,0,1,0-9.384,5.4,21.843,21.843,0,1,0,36.421,21.02,5.452,5.452,0,1,0,.7-10.858" transform="translate(10.912 -6.025)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_45" data-name="Path 45" d="M153,124.855h32.782V103H153Z" transform="translate(10.912 -9.271)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_46" data-name="Path 46" d="M194.855,116.765a2.732,2.732,0,1,0,0-5.464,2.811,2.811,0,0,0-.349.035c-.022-.082-.04-.164-.063-.246a2.733,2.733,0,0,0-1.052-5.253,2.7,2.7,0,0,0-1.648.566q-.09-.093-.184-.184a2.7,2.7,0,0,0,.553-1.633,2.732,2.732,0,0,0-5.245-1.07,10.928,10.928,0,1,0,0,21.031,2.732,2.732,0,0,0,5.245-1.07,2.7,2.7,0,0,0-.553-1.633q.093-.09.184-.184a2.7,2.7,0,0,0,1.648.566,2.732,2.732,0,0,0,1.052-5.253c.023-.081.042-.164.063-.246a2.814,2.814,0,0,0,.349.035" transform="translate(12.767 -9.377)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_47" data-name="Path 47" d="M65.087,56.891a2.732,2.732,0,0,1-2.732-2.732,8.2,8.2,0,0,0-16.391,0,2.732,2.732,0,0,1-5.464,0,13.659,13.659,0,0,1,27.319,0,2.732,2.732,0,0,1-2.732,2.732" transform="translate(0.478 -15.068)" fill-rule="evenodd"/>
<path id="Path_48" data-name="Path 48" d="M103,191.347h65.565a21.854,21.854,0,0,0,21.855-21.855V93H124.855A21.854,21.854,0,0,0,103,114.855Z" transform="translate(6.275 -10.199)" fill="#ffff50" fill-rule="evenodd"/>
<path id="Path_49" data-name="Path 49" d="M173.216,129.787H118.535a1.093,1.093,0,1,1,0-2.185h54.681a1.093,1.093,0,0,1,0,2.185m0,21.855H118.535a1.093,1.093,0,1,1,0-2.186h54.681a1.093,1.093,0,0,1,0,2.186m0,21.855H118.535a1.093,1.093,0,1,1,0-2.185h54.681a1.093,1.093,0,0,1,0,2.185m0-54.434H118.535a1.093,1.093,0,1,1,0-2.185h54.681a1.093,1.093,0,0,1,0,2.185m0,21.652H118.535a1.093,1.093,0,1,1,0-2.186h54.681a1.093,1.093,0,0,1,0,2.186m0,21.855H118.535a1.093,1.093,0,1,1,0-2.186h54.681a1.093,1.093,0,0,1,0,2.186M189.585,61.611c-.013,0-.024-.007-.037-.005-3.377.115-4.974,3.492-6.384,6.472-1.471,3.114-2.608,5.139-4.473,5.078-2.064-.074-3.244-2.406-4.494-4.874-1.436-2.835-3.075-6.049-6.516-5.929-3.329.114-4.932,3.053-6.346,5.646-1.5,2.762-2.529,4.442-4.5,4.364-2.106-.076-3.225-1.972-4.52-4.167-1.444-2.443-3.112-5.191-6.487-5.1-3.272.113-4.879,2.606-6.3,4.808-1.5,2.328-2.552,3.746-4.551,3.662-2.156-.076-3.27-1.65-4.558-3.472-1.447-2.047-3.077-4.363-6.442-4.251-3.2.109-4.807,2.153-6.224,3.954-1.346,1.709-2.4,3.062-4.621,2.977a1.093,1.093,0,0,0-.079,2.186c3.3.11,4.967-1.967,6.417-3.81,1.286-1.635,2.4-3.045,4.582-3.12,2.1-.09,3.091,1.218,4.584,3.327,1.417,2,3.026,4.277,6.263,4.394,3.391.114,5.022-2.42,6.467-4.663,1.292-2,2.406-3.734,4.535-3.807,1.959-.073,3.026,1.475,4.529,4.022,1.417,2.4,3.023,5.121,6.324,5.241,3.415.118,5.064-2.863,6.5-5.5,1.245-2.282,2.419-4.437,4.5-4.509,1.959-.046,2.981,1.743,4.492,4.732,1.412,2.79,3.013,5.95,6.365,6.071l.185,0c3.348,0,4.937-3.36,6.343-6.331,1.245-2.634,2.423-5.114,4.444-5.216Z" transform="translate(7.109 -13.11)" fill-rule="evenodd"/>
<path id="Path_50" data-name="Path 50" d="M83,186.71h43.71V143H83Z" transform="translate(4.42 -5.561)" fill="#3ecc5f" fill-rule="evenodd"/>
<g id="Group_8" data-name="Group 8" transform="matrix(0.966, -0.259, 0.259, 0.966, 109.327, 91.085)">
<rect id="Rectangle_3" data-name="Rectangle 3" width="92.361" height="36.462" rx="2" transform="translate(0 0)" fill="#d8d8d8"/>
<g id="Group_2" data-name="Group 2" transform="translate(1.531 23.03)">
<rect id="Rectangle_4" data-name="Rectangle 4" width="5.336" height="5.336" rx="1" transform="translate(16.797 0)" fill="#4a4a4a"/>
<rect id="Rectangle_5" data-name="Rectangle 5" width="5.336" height="5.336" rx="1" transform="translate(23.12 0)" fill="#4a4a4a"/>
<rect id="Rectangle_6" data-name="Rectangle 6" width="5.336" height="5.336" rx="1" transform="translate(29.444 0)" fill="#4a4a4a"/>
<rect id="Rectangle_7" data-name="Rectangle 7" width="5.336" height="5.336" rx="1" transform="translate(35.768 0)" fill="#4a4a4a"/>
<rect id="Rectangle_8" data-name="Rectangle 8" width="5.336" height="5.336" rx="1" transform="translate(42.091 0)" fill="#4a4a4a"/>
<rect id="Rectangle_9" data-name="Rectangle 9" width="5.336" height="5.336" rx="1" transform="translate(48.415 0)" fill="#4a4a4a"/>
<rect id="Rectangle_10" data-name="Rectangle 10" width="5.336" height="5.336" rx="1" transform="translate(54.739 0)" fill="#4a4a4a"/>
<rect id="Rectangle_11" data-name="Rectangle 11" width="5.336" height="5.336" rx="1" transform="translate(61.063 0)" fill="#4a4a4a"/>
<rect id="Rectangle_12" data-name="Rectangle 12" width="5.336" height="5.336" rx="1" transform="translate(67.386 0)" fill="#4a4a4a"/>
<path id="Path_51" data-name="Path 51" d="M1.093,0H14.518a1.093,1.093,0,0,1,1.093,1.093V4.243a1.093,1.093,0,0,1-1.093,1.093H1.093A1.093,1.093,0,0,1,0,4.243V1.093A1.093,1.093,0,0,1,1.093,0ZM75,0H88.426a1.093,1.093,0,0,1,1.093,1.093V4.243a1.093,1.093,0,0,1-1.093,1.093H75a1.093,1.093,0,0,1-1.093-1.093V1.093A1.093,1.093,0,0,1,75,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_3" data-name="Group 3" transform="translate(1.531 10.261)">
<path id="Path_52" data-name="Path 52" d="M1.093,0H6.218A1.093,1.093,0,0,1,7.31,1.093V4.242A1.093,1.093,0,0,1,6.218,5.335H1.093A1.093,1.093,0,0,1,0,4.242V1.093A1.093,1.093,0,0,1,1.093,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_13" data-name="Rectangle 13" width="5.336" height="5.336" rx="1" transform="translate(8.299 0)" fill="#4a4a4a"/>
<rect id="Rectangle_14" data-name="Rectangle 14" width="5.336" height="5.336" rx="1" transform="translate(14.623 0)" fill="#4a4a4a"/>
<rect id="Rectangle_15" data-name="Rectangle 15" width="5.336" height="5.336" rx="1" transform="translate(20.947 0)" fill="#4a4a4a"/>
<rect id="Rectangle_16" data-name="Rectangle 16" width="5.336" height="5.336" rx="1" transform="translate(27.271 0)" fill="#4a4a4a"/>
<rect id="Rectangle_17" data-name="Rectangle 17" width="5.336" height="5.336" rx="1" transform="translate(33.594 0)" fill="#4a4a4a"/>
<rect id="Rectangle_18" data-name="Rectangle 18" width="5.336" height="5.336" rx="1" transform="translate(39.918 0)" fill="#4a4a4a"/>
<rect id="Rectangle_19" data-name="Rectangle 19" width="5.336" height="5.336" rx="1" transform="translate(46.242 0)" fill="#4a4a4a"/>
<rect id="Rectangle_20" data-name="Rectangle 20" width="5.336" height="5.336" rx="1" transform="translate(52.565 0)" fill="#4a4a4a"/>
<rect id="Rectangle_21" data-name="Rectangle 21" width="5.336" height="5.336" rx="1" transform="translate(58.888 0)" fill="#4a4a4a"/>
<rect id="Rectangle_22" data-name="Rectangle 22" width="5.336" height="5.336" rx="1" transform="translate(65.212 0)" fill="#4a4a4a"/>
<rect id="Rectangle_23" data-name="Rectangle 23" width="5.336" height="5.336" rx="1" transform="translate(71.536 0)" fill="#4a4a4a"/>
<rect id="Rectangle_24" data-name="Rectangle 24" width="5.336" height="5.336" rx="1" transform="translate(77.859 0)" fill="#4a4a4a"/>
<rect id="Rectangle_25" data-name="Rectangle 25" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
</g>
<g id="Group_4" data-name="Group 4" transform="translate(91.05 9.546) rotate(180)">
<path id="Path_53" data-name="Path 53" d="M1.093,0H6.219A1.093,1.093,0,0,1,7.312,1.093v3.15A1.093,1.093,0,0,1,6.219,5.336H1.093A1.093,1.093,0,0,1,0,4.243V1.093A1.093,1.093,0,0,1,1.093,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_26" data-name="Rectangle 26" width="5.336" height="5.336" rx="1" transform="translate(8.299 0)" fill="#4a4a4a"/>
<rect id="Rectangle_27" data-name="Rectangle 27" width="5.336" height="5.336" rx="1" transform="translate(14.623 0)" fill="#4a4a4a"/>
<rect id="Rectangle_28" data-name="Rectangle 28" width="5.336" height="5.336" rx="1" transform="translate(20.947 0)" fill="#4a4a4a"/>
<rect id="Rectangle_29" data-name="Rectangle 29" width="5.336" height="5.336" rx="1" transform="translate(27.271 0)" fill="#4a4a4a"/>
<rect id="Rectangle_30" data-name="Rectangle 30" width="5.336" height="5.336" rx="1" transform="translate(33.594 0)" fill="#4a4a4a"/>
<rect id="Rectangle_31" data-name="Rectangle 31" width="5.336" height="5.336" rx="1" transform="translate(39.918 0)" fill="#4a4a4a"/>
<rect id="Rectangle_32" data-name="Rectangle 32" width="5.336" height="5.336" rx="1" transform="translate(46.242 0)" fill="#4a4a4a"/>
<rect id="Rectangle_33" data-name="Rectangle 33" width="5.336" height="5.336" rx="1" transform="translate(52.565 0)" fill="#4a4a4a"/>
<rect id="Rectangle_34" data-name="Rectangle 34" width="5.336" height="5.336" rx="1" transform="translate(58.889 0)" fill="#4a4a4a"/>
<rect id="Rectangle_35" data-name="Rectangle 35" width="5.336" height="5.336" rx="1" transform="translate(65.213 0)" fill="#4a4a4a"/>
<rect id="Rectangle_36" data-name="Rectangle 36" width="5.336" height="5.336" rx="1" transform="translate(71.537 0)" fill="#4a4a4a"/>
<rect id="Rectangle_37" data-name="Rectangle 37" width="5.336" height="5.336" rx="1" transform="translate(77.86 0)" fill="#4a4a4a"/>
<rect id="Rectangle_38" data-name="Rectangle 38" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
<rect id="Rectangle_39" data-name="Rectangle 39" width="5.336" height="5.336" rx="1" transform="translate(8.299 0)" fill="#4a4a4a"/>
<rect id="Rectangle_40" data-name="Rectangle 40" width="5.336" height="5.336" rx="1" transform="translate(14.623 0)" fill="#4a4a4a"/>
<rect id="Rectangle_41" data-name="Rectangle 41" width="5.336" height="5.336" rx="1" transform="translate(20.947 0)" fill="#4a4a4a"/>
<rect id="Rectangle_42" data-name="Rectangle 42" width="5.336" height="5.336" rx="1" transform="translate(27.271 0)" fill="#4a4a4a"/>
<rect id="Rectangle_43" data-name="Rectangle 43" width="5.336" height="5.336" rx="1" transform="translate(33.594 0)" fill="#4a4a4a"/>
<rect id="Rectangle_44" data-name="Rectangle 44" width="5.336" height="5.336" rx="1" transform="translate(39.918 0)" fill="#4a4a4a"/>
<rect id="Rectangle_45" data-name="Rectangle 45" width="5.336" height="5.336" rx="1" transform="translate(46.242 0)" fill="#4a4a4a"/>
<rect id="Rectangle_46" data-name="Rectangle 46" width="5.336" height="5.336" rx="1" transform="translate(52.565 0)" fill="#4a4a4a"/>
<rect id="Rectangle_47" data-name="Rectangle 47" width="5.336" height="5.336" rx="1" transform="translate(58.889 0)" fill="#4a4a4a"/>
<rect id="Rectangle_48" data-name="Rectangle 48" width="5.336" height="5.336" rx="1" transform="translate(65.213 0)" fill="#4a4a4a"/>
<rect id="Rectangle_49" data-name="Rectangle 49" width="5.336" height="5.336" rx="1" transform="translate(71.537 0)" fill="#4a4a4a"/>
<rect id="Rectangle_50" data-name="Rectangle 50" width="5.336" height="5.336" rx="1" transform="translate(77.86 0)" fill="#4a4a4a"/>
<rect id="Rectangle_51" data-name="Rectangle 51" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
</g>
<g id="Group_6" data-name="Group 6" transform="translate(1.531 16.584)">
<path id="Path_54" data-name="Path 54" d="M1.093,0h7.3A1.093,1.093,0,0,1,9.485,1.093v3.15A1.093,1.093,0,0,1,8.392,5.336h-7.3A1.093,1.093,0,0,1,0,4.243V1.094A1.093,1.093,0,0,1,1.093,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<g id="Group_5" data-name="Group 5" transform="translate(10.671 0)">
<rect id="Rectangle_52" data-name="Rectangle 52" width="5.336" height="5.336" rx="1" fill="#4a4a4a"/>
<rect id="Rectangle_53" data-name="Rectangle 53" width="5.336" height="5.336" rx="1" transform="translate(6.324 0)" fill="#4a4a4a"/>
<rect id="Rectangle_54" data-name="Rectangle 54" width="5.336" height="5.336" rx="1" transform="translate(12.647 0)" fill="#4a4a4a"/>
<rect id="Rectangle_55" data-name="Rectangle 55" width="5.336" height="5.336" rx="1" transform="translate(18.971 0)" fill="#4a4a4a"/>
<rect id="Rectangle_56" data-name="Rectangle 56" width="5.336" height="5.336" rx="1" transform="translate(25.295 0)" fill="#4a4a4a"/>
<rect id="Rectangle_57" data-name="Rectangle 57" width="5.336" height="5.336" rx="1" transform="translate(31.619 0)" fill="#4a4a4a"/>
<rect id="Rectangle_58" data-name="Rectangle 58" width="5.336" height="5.336" rx="1" transform="translate(37.942 0)" fill="#4a4a4a"/>
<rect id="Rectangle_59" data-name="Rectangle 59" width="5.336" height="5.336" rx="1" transform="translate(44.265 0)" fill="#4a4a4a"/>
<rect id="Rectangle_60" data-name="Rectangle 60" width="5.336" height="5.336" rx="1" transform="translate(50.589 0)" fill="#4a4a4a"/>
<rect id="Rectangle_61" data-name="Rectangle 61" width="5.336" height="5.336" rx="1" transform="translate(56.912 0)" fill="#4a4a4a"/>
<rect id="Rectangle_62" data-name="Rectangle 62" width="5.336" height="5.336" rx="1" transform="translate(63.236 0)" fill="#4a4a4a"/>
</g>
<path id="Path_55" data-name="Path 55" d="M1.094,0H8A1.093,1.093,0,0,1,9.091,1.093v3.15A1.093,1.093,0,0,1,8,5.336H1.093A1.093,1.093,0,0,1,0,4.243V1.094A1.093,1.093,0,0,1,1.093,0Z" transform="translate(80.428 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_7" data-name="Group 7" transform="translate(1.531 29.627)">
<rect id="Rectangle_63" data-name="Rectangle 63" width="5.336" height="5.336" rx="1" transform="translate(0 0)" fill="#4a4a4a"/>
<rect id="Rectangle_64" data-name="Rectangle 64" width="5.336" height="5.336" rx="1" transform="translate(6.324 0)" fill="#4a4a4a"/>
<rect id="Rectangle_65" data-name="Rectangle 65" width="5.336" height="5.336" rx="1" transform="translate(12.647 0)" fill="#4a4a4a"/>
<rect id="Rectangle_66" data-name="Rectangle 66" width="5.336" height="5.336" rx="1" transform="translate(18.971 0)" fill="#4a4a4a"/>
<path id="Path_56" data-name="Path 56" d="M1.093,0H31.515a1.093,1.093,0,0,1,1.093,1.093V4.244a1.093,1.093,0,0,1-1.093,1.093H1.093A1.093,1.093,0,0,1,0,4.244V1.093A1.093,1.093,0,0,1,1.093,0ZM34.687,0h3.942a1.093,1.093,0,0,1,1.093,1.093V4.244a1.093,1.093,0,0,1-1.093,1.093H34.687a1.093,1.093,0,0,1-1.093-1.093V1.093A1.093,1.093,0,0,1,34.687,0Z" transform="translate(25.294 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_67" data-name="Rectangle 67" width="5.336" height="5.336" rx="1" transform="translate(66.003 0)" fill="#4a4a4a"/>
<rect id="Rectangle_68" data-name="Rectangle 68" width="5.336" height="5.336" rx="1" transform="translate(72.327 0)" fill="#4a4a4a"/>
<rect id="Rectangle_69" data-name="Rectangle 69" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
<path id="Path_57" data-name="Path 57" d="M5.336,0V1.18A1.093,1.093,0,0,1,4.243,2.273H1.093A1.093,1.093,0,0,1,0,1.18V0Z" transform="translate(83.59 2.273) rotate(180)" fill="#4a4a4a"/>
<path id="Path_58" data-name="Path 58" d="M5.336,0V1.18A1.093,1.093,0,0,1,4.243,2.273H1.093A1.093,1.093,0,0,1,0,1.18V0Z" transform="translate(78.255 3.063)" fill="#4a4a4a"/>
</g>
<rect id="Rectangle_70" data-name="Rectangle 70" width="88.927" height="2.371" rx="1.085" transform="translate(1.925 1.17)" fill="#4a4a4a"/>
<rect id="Rectangle_71" data-name="Rectangle 71" width="4.986" height="1.581" rx="0.723" transform="translate(4.1 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_72" data-name="Rectangle 72" width="4.986" height="1.581" rx="0.723" transform="translate(10.923 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_73" data-name="Rectangle 73" width="4.986" height="1.581" rx="0.723" transform="translate(16.173 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_74" data-name="Rectangle 74" width="4.986" height="1.581" rx="0.723" transform="translate(21.421 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_75" data-name="Rectangle 75" width="4.986" height="1.581" rx="0.723" transform="translate(26.671 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_76" data-name="Rectangle 76" width="4.986" height="1.581" rx="0.723" transform="translate(33.232 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_77" data-name="Rectangle 77" width="4.986" height="1.581" rx="0.723" transform="translate(38.48 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_78" data-name="Rectangle 78" width="4.986" height="1.581" rx="0.723" transform="translate(43.73 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_79" data-name="Rectangle 79" width="4.986" height="1.581" rx="0.723" transform="translate(48.978 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_80" data-name="Rectangle 80" width="4.986" height="1.581" rx="0.723" transform="translate(55.54 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_81" data-name="Rectangle 81" width="4.986" height="1.581" rx="0.723" transform="translate(60.788 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_82" data-name="Rectangle 82" width="4.986" height="1.581" rx="0.723" transform="translate(66.038 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_83" data-name="Rectangle 83" width="4.986" height="1.581" rx="0.723" transform="translate(72.599 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_84" data-name="Rectangle 84" width="4.986" height="1.581" rx="0.723" transform="translate(77.847 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_85" data-name="Rectangle 85" width="4.986" height="1.581" rx="0.723" transform="translate(83.097 1.566)" fill="#d8d8d8" opacity="0.136"/>
</g>
<path id="Path_59" data-name="Path 59" d="M146.71,159.855a5.439,5.439,0,0,0-.7.07c-.042-.164-.081-.329-.127-.493a5.457,5.457,0,1,0-5.4-9.372q-.181-.185-.366-.367a5.454,5.454,0,1,0-9.384-5.4c-.162-.046-.325-.084-.486-.126a5.467,5.467,0,1,0-10.788,0c-.162.042-.325.08-.486.126a5.457,5.457,0,1,0-9.384,5.4,21.843,21.843,0,1,0,36.421,21.02,5.452,5.452,0,1,0,.7-10.858" transform="translate(6.275 -6.025)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_60" data-name="Path 60" d="M83,124.855h43.71V103H83Z" transform="translate(4.42 -9.271)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_61" data-name="Path 61" d="M134.855,116.765a2.732,2.732,0,1,0,0-5.464,2.811,2.811,0,0,0-.349.035c-.022-.082-.04-.164-.063-.246a2.733,2.733,0,0,0-1.052-5.253,2.7,2.7,0,0,0-1.648.566q-.09-.093-.184-.184a2.7,2.7,0,0,0,.553-1.633,2.732,2.732,0,0,0-5.245-1.07,10.928,10.928,0,1,0,0,21.031,2.732,2.732,0,0,0,5.245-1.07,2.7,2.7,0,0,0-.553-1.633q.093-.09.184-.184a2.7,2.7,0,0,0,1.648.566,2.732,2.732,0,0,0,1.052-5.253c.023-.081.042-.164.063-.246a2.811,2.811,0,0,0,.349.035" transform="translate(7.202 -9.377)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_62" data-name="Path 62" d="M143.232,42.33a2.967,2.967,0,0,1-.535-.055,2.754,2.754,0,0,1-.514-.153,2.838,2.838,0,0,1-.471-.251,4.139,4.139,0,0,1-.415-.339,3.2,3.2,0,0,1-.338-.415A2.7,2.7,0,0,1,140.5,39.6a2.968,2.968,0,0,1,.055-.535,3.152,3.152,0,0,1,.152-.514,2.874,2.874,0,0,1,.252-.47,2.633,2.633,0,0,1,.753-.754,2.837,2.837,0,0,1,.471-.251,2.753,2.753,0,0,1,.514-.153,2.527,2.527,0,0,1,1.071,0,2.654,2.654,0,0,1,.983.4,4.139,4.139,0,0,1,.415.339,4.019,4.019,0,0,1,.339.415,2.786,2.786,0,0,1,.251.47,2.864,2.864,0,0,1,.208,1.049,2.77,2.77,0,0,1-.8,1.934,4.139,4.139,0,0,1-.415.339,2.722,2.722,0,0,1-1.519.459m21.855-1.366a2.789,2.789,0,0,1-1.935-.8,4.162,4.162,0,0,1-.338-.415,2.7,2.7,0,0,1-.459-1.519,2.789,2.789,0,0,1,.8-1.934,4.139,4.139,0,0,1,.415-.339,2.838,2.838,0,0,1,.471-.251,2.752,2.752,0,0,1,.514-.153,2.527,2.527,0,0,1,1.071,0,2.654,2.654,0,0,1,.983.4,4.139,4.139,0,0,1,.415.339,2.79,2.79,0,0,1,.8,1.934,3.069,3.069,0,0,1-.055.535,2.779,2.779,0,0,1-.153.514,3.885,3.885,0,0,1-.251.47,4.02,4.02,0,0,1-.339.415,4.138,4.138,0,0,1-.415.339,2.722,2.722,0,0,1-1.519.459" transform="translate(9.753 -15.532)" fill-rule="evenodd"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 31 KiB

+170
View File
@@ -0,0 +1,170 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1041.277" height="554.141" viewBox="0 0 1041.277 554.141">
<title>Powered by React</title>
<g id="Group_24" data-name="Group 24" transform="translate(-440 -263)">
<g id="Group_23" data-name="Group 23" transform="translate(439.989 262.965)">
<path id="Path_299" data-name="Path 299" d="M1040.82,611.12q-1.74,3.75-3.47,7.4-2.7,5.67-5.33,11.12c-.78,1.61-1.56,3.19-2.32,4.77-8.6,17.57-16.63,33.11-23.45,45.89A73.21,73.21,0,0,1,942.44,719l-151.65,1.65h-1.6l-13,.14-11.12.12-34.1.37h-1.38l-17.36.19h-.53l-107,1.16-95.51,1-11.11.12-69,.75H429l-44.75.48h-.48l-141.5,1.53-42.33.46a87.991,87.991,0,0,1-10.79-.54h0c-1.22-.14-2.44-.3-3.65-.49a87.38,87.38,0,0,1-51.29-27.54C116,678.37,102.75,655,93.85,629.64q-1.93-5.49-3.6-11.12C59.44,514.37,97,380,164.6,290.08q4.25-5.64,8.64-11l.07-.08c20.79-25.52,44.1-46.84,68.93-62,44-26.91,92.75-34.49,140.7-11.9,40.57,19.12,78.45,28.11,115.17,30.55,3.71.24,7.42.42,11.11.53,84.23,2.65,163.17-27.7,255.87-47.29,3.69-.78,7.39-1.55,11.12-2.28,66.13-13.16,139.49-20.1,226.73-5.51a189.089,189.089,0,0,1,26.76,6.4q5.77,1.86,11.12,4c41.64,16.94,64.35,48.24,74,87.46q1.37,5.46,2.37,11.11C1134.3,384.41,1084.19,518.23,1040.82,611.12Z" transform="translate(-79.34 -172.91)" fill="#f2f2f2"/>
<path id="Path_300" data-name="Path 300" d="M576.36,618.52a95.21,95.21,0,0,1-1.87,11.12h93.7V618.52Zm-78.25,62.81,11.11-.09V653.77c-3.81-.17-7.52-.34-11.11-.52ZM265.19,618.52v11.12h198.5V618.52ZM1114.87,279h-74V191.51q-5.35-2.17-11.12-4V279H776.21V186.58c-3.73.73-7.43,1.5-11.12,2.28V279H509.22V236.15c-3.69-.11-7.4-.29-11.11-.53V279H242.24V217c-24.83,15.16-48.14,36.48-68.93,62h-.07v.08q-4.4,5.4-8.64,11h8.64V618.52h-83q1.66,5.63,3.6,11.12h79.39v93.62a87,87,0,0,0,12.2,2.79c1.21.19,2.43.35,3.65.49h0a87.991,87.991,0,0,0,10.79.54l42.33-.46v-97H498.11v94.21l11.11-.12V629.64H765.09V721l11.12-.12V629.64H1029.7v4.77c.76-1.58,1.54-3.16,2.32-4.77q2.63-5.45,5.33-11.12,1.73-3.64,3.47-7.4v-321h76.42Q1116.23,284.43,1114.87,279ZM242.24,618.52V290.08H498.11V618.52Zm267,0V290.08H765.09V618.52Zm520.48,0H776.21V290.08H1029.7Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_301" data-name="Path 301" d="M863.09,533.65v13l-151.92,1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99L349.77,551.4h-.15l-44.65.42-.48.01-198.4,1.82v-15l46.65-28,93.6-.78,2-.01.66-.01,2-.03,44.94-.37,2.01-.01.64-.01,2-.01L315,509.3l.38-.01,35.55-.3h.29l277.4-2.34,6.79-.05h.68l5.18-.05,37.65-.31,2-.03,1.85-.02h.96l11.71-.09,2.32-.03,3.11-.02,9.75-.09,15.47-.13,2-.02,3.48-.02h.65l74.71-.64Z" fill="#65617d"/>
<path id="Path_302" data-name="Path 302" d="M863.09,533.65v13l-151.92,1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99L349.77,551.4h-.15l-44.65.42-.48.01-198.4,1.82v-15l46.65-28,93.6-.78,2-.01.66-.01,2-.03,44.94-.37,2.01-.01.64-.01,2-.01L315,509.3l.38-.01,35.55-.3h.29l277.4-2.34,6.79-.05h.68l5.18-.05,37.65-.31,2-.03,1.85-.02h.96l11.71-.09,2.32-.03,3.11-.02,9.75-.09,15.47-.13,2-.02,3.48-.02h.65l74.71-.64Z" opacity="0.2"/>
<path id="Path_303" data-name="Path 303" d="M375.44,656.57v24.49a6.13,6.13,0,0,1-3.5,5.54,6,6,0,0,1-2.5.6l-34.9.74a6,6,0,0,1-2.7-.57,6.12,6.12,0,0,1-3.57-5.57V656.57Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
<path id="Path_304" data-name="Path 304" d="M375.44,656.57v24.49a6.13,6.13,0,0,1-3.5,5.54,6,6,0,0,1-2.5.6l-34.9.74a6,6,0,0,1-2.7-.57,6.12,6.12,0,0,1-3.57-5.57V656.57Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_305" data-name="Path 305" d="M377.44,656.57v24.49a6.13,6.13,0,0,1-3.5,5.54,6,6,0,0,1-2.5.6l-34.9.74a6,6,0,0,1-2.7-.57,6.12,6.12,0,0,1-3.57-5.57V656.57Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
<rect id="Rectangle_137" data-name="Rectangle 137" width="47.17" height="31.5" transform="translate(680.92 483.65)" fill="#3f3d56"/>
<rect id="Rectangle_138" data-name="Rectangle 138" width="47.17" height="31.5" transform="translate(680.92 483.65)" opacity="0.1"/>
<rect id="Rectangle_139" data-name="Rectangle 139" width="47.17" height="31.5" transform="translate(678.92 483.65)" fill="#3f3d56"/>
<path id="Path_306" data-name="Path 306" d="M298.09,483.65v4.97l-47.17,1.26v-6.23Z" opacity="0.1"/>
<path id="Path_307" data-name="Path 307" d="M460.69,485.27v168.2a4,4,0,0,1-3.85,3.95l-191.65,5.1h-.05a4,4,0,0,1-3.95-3.95V485.27a4,4,0,0,1,3.95-3.95h191.6a4,4,0,0,1,3.95,3.95Z" transform="translate(-79.34 -172.91)" fill="#65617d"/>
<path id="Path_308" data-name="Path 308" d="M265.19,481.32v181.2h-.05a4,4,0,0,1-3.95-3.95V485.27a4,4,0,0,1,3.95-3.95Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_309" data-name="Path 309" d="M194.59,319.15h177.5V467.4l-177.5,4Z" fill="#39374d"/>
<path id="Path_310" data-name="Path 310" d="M726.09,483.65v6.41l-47.17-1.26v-5.15Z" opacity="0.1"/>
<path id="Path_311" data-name="Path 311" d="M867.69,485.27v173.3a4,4,0,0,1-4,3.95h0L672,657.42a4,4,0,0,1-3.85-3.95V485.27a4,4,0,0,1,3.95-3.95H863.7a4,4,0,0,1,3.99,3.95Z" transform="translate(-79.34 -172.91)" fill="#65617d"/>
<path id="Path_312" data-name="Path 312" d="M867.69,485.27v173.3a4,4,0,0,1-4,3.95h0V481.32h0a4,4,0,0,1,4,3.95Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_313" data-name="Path 313" d="M775.59,319.15H598.09V467.4l177.5,4Z" fill="#39374d"/>
<path id="Path_314" data-name="Path 314" d="M663.19,485.27v168.2a4,4,0,0,1-3.85,3.95l-191.65,5.1h0a4,4,0,0,1-4-3.95V485.27a4,4,0,0,1,3.95-3.95h191.6A4,4,0,0,1,663.19,485.27Z" transform="translate(-79.34 -172.91)" fill="#65617d"/>
<path id="Path_315" data-name="Path 315" d="M397.09,319.15h177.5V467.4l-177.5,4Z" fill="#4267b2"/>
<path id="Path_316" data-name="Path 316" d="M863.09,533.65v13l-151.92,1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99L349.77,551.4h-.15l-44.65.42-.48.01-198.4,1.82v-15l202.51-1.33h.48l40.99-.28h.19l283.08-1.87h.29l.17-.01h.47l4.79-.03h1.46l74.49-.5,4.4-.02.98-.01Z" opacity="0.1"/>
<circle id="Ellipse_111" data-name="Ellipse 111" cx="51.33" cy="51.33" r="51.33" transform="translate(435.93 246.82)" fill="#fbbebe"/>
<path id="Path_317" data-name="Path 317" d="M617.94,550.07s-99.5,12-90,0c3.44-4.34,4.39-17.2,4.2-31.85-.06-4.45-.22-9.06-.45-13.65-1.1-22-3.75-43.5-3.75-43.5s87-41,77-8.5c-4,13.13-2.69,31.57.35,48.88.89,5.05,1.92,10,3,14.7a344.66,344.66,0,0,0,9.65,33.92Z" transform="translate(-79.34 -172.91)" fill="#fbbebe"/>
<path id="Path_318" data-name="Path 318" d="M585.47,546c11.51-2.13,23.7-6,34.53-1.54,2.85,1.17,5.47,2.88,8.39,3.86s6.12,1.22,9.16,1.91c10.68,2.42,19.34,10.55,24.9,20s8.44,20.14,11.26,30.72l6.9,25.83c6,22.45,12,45.09,13.39,68.3a2437.506,2437.506,0,0,1-250.84,1.43c5.44-10.34,11-21.31,10.54-33s-7.19-23.22-4.76-34.74c1.55-7.34,6.57-13.39,9.64-20.22,8.75-19.52,1.94-45.79,17.32-60.65,6.92-6.68,17-9.21,26.63-8.89,12.28.41,24.85,4.24,37,6.11C555.09,547.48,569.79,548.88,585.47,546Z" transform="translate(-79.34 -172.91)" fill="#ff6584"/>
<path id="Path_319" data-name="Path 319" d="M716.37,657.17l-.1,1.43v.1l-.17,2.3-1.33,18.51-1.61,22.3-.46,6.28-1,13.44v.17l-107,1-175.59,1.9v.84h-.14v-1.12l.45-14.36.86-28.06.74-23.79.07-2.37a10.53,10.53,0,0,1,11.42-10.17c4.72.4,10.85.89,18.18,1.41l3,.22c42.33,2.94,120.56,6.74,199.5,2,1.66-.09,3.33-.19,5-.31,12.24-.77,24.47-1.76,36.58-3a10.53,10.53,0,0,1,11.6,11.23Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_320" data-name="Path 320" d="M429.08,725.44v-.84l175.62-1.91,107-1h.3v-.17l1-13.44.43-6,1.64-22.61,1.29-17.9v-.44a10.617,10.617,0,0,0-.11-2.47.3.3,0,0,0,0-.1,10.391,10.391,0,0,0-2-4.64,10.54,10.54,0,0,0-9.42-4c-12.11,1.24-24.34,2.23-36.58,3-1.67.12-3.34.22-5,.31-78.94,4.69-157.17.89-199.5-2l-3-.22c-7.33-.52-13.46-1-18.18-1.41a10.54,10.54,0,0,0-11.24,8.53,11,11,0,0,0-.18,1.64l-.68,22.16L429.54,710l-.44,14.36v1.12Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
<path id="Path_321" data-name="Path 321" d="M716.67,664.18l-1.23,15.33-1.83,22.85-.46,5.72-1,12.81-.06.64v.17h0l-.15,1.48.11-1.48h-.29l-107,1-175.65,1.9v-.28l.49-14.36,1-28.06.64-18.65A6.36,6.36,0,0,1,434.3,658a6.25,6.25,0,0,1,3.78-.9c2.1.17,4.68.37,7.69.59,4.89.36,10.92.78,17.94,1.22,13,.82,29.31,1.7,48,2.42,52,2,122.2,2.67,188.88-3.17,3-.26,6.1-.55,9.13-.84a6.26,6.26,0,0,1,3.48.66,5.159,5.159,0,0,1,.86.54,6.14,6.14,0,0,1,2,2.46,3.564,3.564,0,0,1,.25.61A6.279,6.279,0,0,1,716.67,664.18Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_322" data-name="Path 322" d="M377.44,677.87v3.19a6.13,6.13,0,0,1-3.5,5.54l-40.1.77a6.12,6.12,0,0,1-3.57-5.57v-3Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_323" data-name="Path 323" d="M298.59,515.57l-52.25,1V507.9l52.25-1Z" fill="#3f3d56"/>
<path id="Path_324" data-name="Path 324" d="M298.59,515.57l-52.25,1V507.9l52.25-1Z" opacity="0.1"/>
<path id="Path_325" data-name="Path 325" d="M300.59,515.57l-52.25,1V507.9l52.25-1Z" fill="#3f3d56"/>
<path id="Path_326" data-name="Path 326" d="M758.56,679.87v3.19a6.13,6.13,0,0,0,3.5,5.54l40.1.77a6.12,6.12,0,0,0,3.57-5.57v-3Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_327" data-name="Path 327" d="M678.72,517.57l52.25,1V509.9l-52.25-1Z" opacity="0.1"/>
<path id="Path_328" data-name="Path 328" d="M676.72,517.57l52.25,1V509.9l-52.25-1Z" fill="#3f3d56"/>
<path id="Path_329" data-name="Path 329" d="M534.13,486.79c.08,7-3.16,13.6-5.91,20.07a163.491,163.491,0,0,0-12.66,74.71c.73,11,2.58,22,.73,32.9s-8.43,21.77-19,24.9c17.53,10.45,41.26,9.35,57.76-2.66,8.79-6.4,15.34-15.33,21.75-24.11a97.86,97.86,0,0,1-13.31,44.75A103.43,103.43,0,0,0,637,616.53c4.31-5.81,8.06-12.19,9.72-19.23,3.09-13-1.22-26.51-4.51-39.5a266.055,266.055,0,0,1-6.17-33c-.43-3.56-.78-7.22.1-10.7,1-4.07,3.67-7.51,5.64-11.22,5.6-10.54,5.73-23.3,2.86-34.88s-8.49-22.26-14.06-32.81c-4.46-8.46-9.3-17.31-17.46-22.28-5.1-3.1-11-4.39-16.88-5.64l-25.37-5.43c-5.55-1.19-11.26-2.38-16.87-1.51-9.47,1.48-16.14,8.32-22,15.34-4.59,5.46-15.81,15.71-16.6,22.86-.72,6.59,5.1,17.63,6.09,24.58,1.3,9,2.22,6,7.3,11.52C532,478.05,534.07,482,534.13,486.79Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
</g>
<g id="docusaurus_keytar" transform="translate(670.271 615.768)">
<path id="Path_40" data-name="Path 40" d="M99,52h43.635V69.662H99Z" transform="translate(-49.132 -33.936)" fill="#fff" fill-rule="evenodd"/>
<path id="Path_41" data-name="Path 41" d="M13.389,158.195A10.377,10.377,0,0,1,4.4,153a10.377,10.377,0,0,0,8.988,15.584H23.779V158.195Z" transform="translate(-3 -82.47)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_42" data-name="Path 42" d="M66.967,38.083l36.373-2.273V30.615A10.389,10.389,0,0,0,92.95,20.226H46.2l-1.3-2.249a1.5,1.5,0,0,0-2.6,0L41,20.226l-1.3-2.249a1.5,1.5,0,0,0-2.6,0l-1.3,2.249-1.3-2.249a1.5,1.5,0,0,0-2.6,0l-1.3,2.249-.034,0-2.152-2.151a1.5,1.5,0,0,0-2.508.672L25.21,21.4l-2.7-.723a1.5,1.5,0,0,0-1.836,1.837l.722,2.7-2.65.71a1.5,1.5,0,0,0-.673,2.509l2.152,2.152c0,.011,0,.022,0,.033l-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6L20.226,41l-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3A10.389,10.389,0,0,0,30.615,103.34H92.95A10.389,10.389,0,0,0,103.34,92.95V51.393L66.967,49.12a5.53,5.53,0,0,1,0-11.038" transform="translate(-9.836 -17.226)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_43" data-name="Path 43" d="M143,163.779h15.584V143H143Z" transform="translate(-70.275 -77.665)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_44" data-name="Path 44" d="M173.779,148.389a2.582,2.582,0,0,0-.332.033c-.02-.078-.038-.156-.06-.234a2.594,2.594,0,1,0-2.567-4.455q-.086-.088-.174-.175a2.593,2.593,0,1,0-4.461-2.569c-.077-.022-.154-.04-.231-.06a2.6,2.6,0,1,0-5.128,0c-.077.02-.154.038-.231.06a2.594,2.594,0,1,0-4.461,2.569,10.384,10.384,0,1,0,17.314,9.992,2.592,2.592,0,1,0,.332-5.161" transform="translate(-75.08 -75.262)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_45" data-name="Path 45" d="M153,113.389h15.584V103H153Z" transform="translate(-75.08 -58.444)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_46" data-name="Path 46" d="M183.389,108.944a1.3,1.3,0,1,0,0-2.6,1.336,1.336,0,0,0-.166.017c-.01-.039-.019-.078-.03-.117a1.3,1.3,0,0,0-.5-2.5,1.285,1.285,0,0,0-.783.269q-.043-.044-.087-.087a1.285,1.285,0,0,0,.263-.776,1.3,1.3,0,0,0-2.493-.509,5.195,5.195,0,1,0,0,10,1.3,1.3,0,0,0,2.493-.509,1.285,1.285,0,0,0-.263-.776q.044-.043.087-.087a1.285,1.285,0,0,0,.783.269,1.3,1.3,0,0,0,.5-2.5c.011-.038.02-.078.03-.117a1.337,1.337,0,0,0,.166.017" transform="translate(-84.691 -57.894)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_47" data-name="Path 47" d="M52.188,48.292a1.3,1.3,0,0,1-1.3-1.3,3.9,3.9,0,0,0-7.792,0,1.3,1.3,0,1,1-2.6,0,6.493,6.493,0,0,1,12.987,0,1.3,1.3,0,0,1-1.3,1.3" transform="translate(-21.02 -28.41)" fill-rule="evenodd"/>
<path id="Path_48" data-name="Path 48" d="M103,139.752h31.168a10.389,10.389,0,0,0,10.389-10.389V93H113.389A10.389,10.389,0,0,0,103,103.389Z" transform="translate(-51.054 -53.638)" fill="#ffff50" fill-rule="evenodd"/>
<path id="Path_49" data-name="Path 49" d="M141.1,94.017H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.389H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.389H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0-25.877H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.293H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.389H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m7.782-47.993c-.006,0-.011,0-.018,0-1.605.055-2.365,1.66-3.035,3.077-.7,1.48-1.24,2.443-2.126,2.414-.981-.035-1.542-1.144-2.137-2.317-.683-1.347-1.462-2.876-3.1-2.819-1.582.054-2.344,1.451-3.017,2.684-.715,1.313-1.2,2.112-2.141,2.075-1-.036-1.533-.938-2.149-1.981-.686-1.162-1.479-2.467-3.084-2.423-1.555.053-2.319,1.239-2.994,2.286-.713,1.106-1.213,1.781-2.164,1.741-1.025-.036-1.554-.784-2.167-1.65-.688-.973-1.463-2.074-3.062-2.021a3.815,3.815,0,0,0-2.959,1.879c-.64.812-1.14,1.456-2.2,1.415a.52.52,0,0,0-.037,1.039,3.588,3.588,0,0,0,3.05-1.811c.611-.777,1.139-1.448,2.178-1.483,1-.043,1.47.579,2.179,1.582.674.953,1.438,2.033,2.977,2.089,1.612.054,2.387-1.151,3.074-2.217.614-.953,1.144-1.775,2.156-1.81.931-.035,1.438.7,2.153,1.912.674,1.141,1.437,2.434,3.006,2.491,1.623.056,2.407-1.361,3.09-2.616.592-1.085,1.15-2.109,2.14-2.143.931-.022,1.417.829,2.135,2.249.671,1.326,1.432,2.828,3.026,2.886l.088,0c1.592,0,2.347-1.6,3.015-3.01.592-1.252,1.152-2.431,2.113-2.479Z" transform="translate(-55.378 -38.552)" fill-rule="evenodd"/>
<path id="Path_50" data-name="Path 50" d="M83,163.779h20.779V143H83Z" transform="translate(-41.443 -77.665)" fill="#3ecc5f" fill-rule="evenodd"/>
<g id="Group_8" data-name="Group 8" transform="matrix(0.966, -0.259, 0.259, 0.966, 51.971, 43.3)">
<rect id="Rectangle_3" data-name="Rectangle 3" width="43.906" height="17.333" rx="2" transform="translate(0 0)" fill="#d8d8d8"/>
<g id="Group_2" data-name="Group 2" transform="translate(0.728 10.948)">
<rect id="Rectangle_4" data-name="Rectangle 4" width="2.537" height="2.537" rx="1" transform="translate(7.985 0)" fill="#4a4a4a"/>
<rect id="Rectangle_5" data-name="Rectangle 5" width="2.537" height="2.537" rx="1" transform="translate(10.991 0)" fill="#4a4a4a"/>
<rect id="Rectangle_6" data-name="Rectangle 6" width="2.537" height="2.537" rx="1" transform="translate(13.997 0)" fill="#4a4a4a"/>
<rect id="Rectangle_7" data-name="Rectangle 7" width="2.537" height="2.537" rx="1" transform="translate(17.003 0)" fill="#4a4a4a"/>
<rect id="Rectangle_8" data-name="Rectangle 8" width="2.537" height="2.537" rx="1" transform="translate(20.009 0)" fill="#4a4a4a"/>
<rect id="Rectangle_9" data-name="Rectangle 9" width="2.537" height="2.537" rx="1" transform="translate(23.015 0)" fill="#4a4a4a"/>
<rect id="Rectangle_10" data-name="Rectangle 10" width="2.537" height="2.537" rx="1" transform="translate(26.021 0)" fill="#4a4a4a"/>
<rect id="Rectangle_11" data-name="Rectangle 11" width="2.537" height="2.537" rx="1" transform="translate(29.028 0)" fill="#4a4a4a"/>
<rect id="Rectangle_12" data-name="Rectangle 12" width="2.537" height="2.537" rx="1" transform="translate(32.034 0)" fill="#4a4a4a"/>
<path id="Path_51" data-name="Path 51" d="M.519,0H6.9A.519.519,0,0,1,7.421.52v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.519A.519.519,0,0,1,.519,0ZM35.653,0h6.383a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H35.652a.519.519,0,0,1-.519-.519V.519A.519.519,0,0,1,35.652,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_3" data-name="Group 3" transform="translate(0.728 4.878)">
<path id="Path_52" data-name="Path 52" d="M.519,0H2.956a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.519A.519.519,0,0,1,.519,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_13" data-name="Rectangle 13" width="2.537" height="2.537" rx="1" transform="translate(3.945 0)" fill="#4a4a4a"/>
<rect id="Rectangle_14" data-name="Rectangle 14" width="2.537" height="2.537" rx="1" transform="translate(6.951 0)" fill="#4a4a4a"/>
<rect id="Rectangle_15" data-name="Rectangle 15" width="2.537" height="2.537" rx="1" transform="translate(9.958 0)" fill="#4a4a4a"/>
<rect id="Rectangle_16" data-name="Rectangle 16" width="2.537" height="2.537" rx="1" transform="translate(12.964 0)" fill="#4a4a4a"/>
<rect id="Rectangle_17" data-name="Rectangle 17" width="2.537" height="2.537" rx="1" transform="translate(15.97 0)" fill="#4a4a4a"/>
<rect id="Rectangle_18" data-name="Rectangle 18" width="2.537" height="2.537" rx="1" transform="translate(18.976 0)" fill="#4a4a4a"/>
<rect id="Rectangle_19" data-name="Rectangle 19" width="2.537" height="2.537" rx="1" transform="translate(21.982 0)" fill="#4a4a4a"/>
<rect id="Rectangle_20" data-name="Rectangle 20" width="2.537" height="2.537" rx="1" transform="translate(24.988 0)" fill="#4a4a4a"/>
<rect id="Rectangle_21" data-name="Rectangle 21" width="2.537" height="2.537" rx="1" transform="translate(27.994 0)" fill="#4a4a4a"/>
<rect id="Rectangle_22" data-name="Rectangle 22" width="2.537" height="2.537" rx="1" transform="translate(31 0)" fill="#4a4a4a"/>
<rect id="Rectangle_23" data-name="Rectangle 23" width="2.537" height="2.537" rx="1" transform="translate(34.006 0)" fill="#4a4a4a"/>
<rect id="Rectangle_24" data-name="Rectangle 24" width="2.537" height="2.537" rx="1" transform="translate(37.012 0)" fill="#4a4a4a"/>
<rect id="Rectangle_25" data-name="Rectangle 25" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
</g>
<g id="Group_4" data-name="Group 4" transform="translate(43.283 4.538) rotate(180)">
<path id="Path_53" data-name="Path 53" d="M.519,0H2.956a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.519A.519.519,0,0,1,.519,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_26" data-name="Rectangle 26" width="2.537" height="2.537" rx="1" transform="translate(3.945 0)" fill="#4a4a4a"/>
<rect id="Rectangle_27" data-name="Rectangle 27" width="2.537" height="2.537" rx="1" transform="translate(6.951 0)" fill="#4a4a4a"/>
<rect id="Rectangle_28" data-name="Rectangle 28" width="2.537" height="2.537" rx="1" transform="translate(9.958 0)" fill="#4a4a4a"/>
<rect id="Rectangle_29" data-name="Rectangle 29" width="2.537" height="2.537" rx="1" transform="translate(12.964 0)" fill="#4a4a4a"/>
<rect id="Rectangle_30" data-name="Rectangle 30" width="2.537" height="2.537" rx="1" transform="translate(15.97 0)" fill="#4a4a4a"/>
<rect id="Rectangle_31" data-name="Rectangle 31" width="2.537" height="2.537" rx="1" transform="translate(18.976 0)" fill="#4a4a4a"/>
<rect id="Rectangle_32" data-name="Rectangle 32" width="2.537" height="2.537" rx="1" transform="translate(21.982 0)" fill="#4a4a4a"/>
<rect id="Rectangle_33" data-name="Rectangle 33" width="2.537" height="2.537" rx="1" transform="translate(24.988 0)" fill="#4a4a4a"/>
<rect id="Rectangle_34" data-name="Rectangle 34" width="2.537" height="2.537" rx="1" transform="translate(27.994 0)" fill="#4a4a4a"/>
<rect id="Rectangle_35" data-name="Rectangle 35" width="2.537" height="2.537" rx="1" transform="translate(31.001 0)" fill="#4a4a4a"/>
<rect id="Rectangle_36" data-name="Rectangle 36" width="2.537" height="2.537" rx="1" transform="translate(34.007 0)" fill="#4a4a4a"/>
<rect id="Rectangle_37" data-name="Rectangle 37" width="2.537" height="2.537" rx="1" transform="translate(37.013 0)" fill="#4a4a4a"/>
<rect id="Rectangle_38" data-name="Rectangle 38" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
<rect id="Rectangle_39" data-name="Rectangle 39" width="2.537" height="2.537" rx="1" transform="translate(3.945 0)" fill="#4a4a4a"/>
<rect id="Rectangle_40" data-name="Rectangle 40" width="2.537" height="2.537" rx="1" transform="translate(6.951 0)" fill="#4a4a4a"/>
<rect id="Rectangle_41" data-name="Rectangle 41" width="2.537" height="2.537" rx="1" transform="translate(9.958 0)" fill="#4a4a4a"/>
<rect id="Rectangle_42" data-name="Rectangle 42" width="2.537" height="2.537" rx="1" transform="translate(12.964 0)" fill="#4a4a4a"/>
<rect id="Rectangle_43" data-name="Rectangle 43" width="2.537" height="2.537" rx="1" transform="translate(15.97 0)" fill="#4a4a4a"/>
<rect id="Rectangle_44" data-name="Rectangle 44" width="2.537" height="2.537" rx="1" transform="translate(18.976 0)" fill="#4a4a4a"/>
<rect id="Rectangle_45" data-name="Rectangle 45" width="2.537" height="2.537" rx="1" transform="translate(21.982 0)" fill="#4a4a4a"/>
<rect id="Rectangle_46" data-name="Rectangle 46" width="2.537" height="2.537" rx="1" transform="translate(24.988 0)" fill="#4a4a4a"/>
<rect id="Rectangle_47" data-name="Rectangle 47" width="2.537" height="2.537" rx="1" transform="translate(27.994 0)" fill="#4a4a4a"/>
<rect id="Rectangle_48" data-name="Rectangle 48" width="2.537" height="2.537" rx="1" transform="translate(31.001 0)" fill="#4a4a4a"/>
<rect id="Rectangle_49" data-name="Rectangle 49" width="2.537" height="2.537" rx="1" transform="translate(34.007 0)" fill="#4a4a4a"/>
<rect id="Rectangle_50" data-name="Rectangle 50" width="2.537" height="2.537" rx="1" transform="translate(37.013 0)" fill="#4a4a4a"/>
<rect id="Rectangle_51" data-name="Rectangle 51" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
</g>
<g id="Group_6" data-name="Group 6" transform="translate(0.728 7.883)">
<path id="Path_54" data-name="Path 54" d="M.519,0h3.47a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.52A.519.519,0,0,1,.519,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<g id="Group_5" data-name="Group 5" transform="translate(5.073 0)">
<rect id="Rectangle_52" data-name="Rectangle 52" width="2.537" height="2.537" rx="1" transform="translate(0 0)" fill="#4a4a4a"/>
<rect id="Rectangle_53" data-name="Rectangle 53" width="2.537" height="2.537" rx="1" transform="translate(3.006 0)" fill="#4a4a4a"/>
<rect id="Rectangle_54" data-name="Rectangle 54" width="2.537" height="2.537" rx="1" transform="translate(6.012 0)" fill="#4a4a4a"/>
<rect id="Rectangle_55" data-name="Rectangle 55" width="2.537" height="2.537" rx="1" transform="translate(9.018 0)" fill="#4a4a4a"/>
<rect id="Rectangle_56" data-name="Rectangle 56" width="2.537" height="2.537" rx="1" transform="translate(12.025 0)" fill="#4a4a4a"/>
<rect id="Rectangle_57" data-name="Rectangle 57" width="2.537" height="2.537" rx="1" transform="translate(15.031 0)" fill="#4a4a4a"/>
<rect id="Rectangle_58" data-name="Rectangle 58" width="2.537" height="2.537" rx="1" transform="translate(18.037 0)" fill="#4a4a4a"/>
<rect id="Rectangle_59" data-name="Rectangle 59" width="2.537" height="2.537" rx="1" transform="translate(21.042 0)" fill="#4a4a4a"/>
<rect id="Rectangle_60" data-name="Rectangle 60" width="2.537" height="2.537" rx="1" transform="translate(24.049 0)" fill="#4a4a4a"/>
<rect id="Rectangle_61" data-name="Rectangle 61" width="2.537" height="2.537" rx="1" transform="translate(27.055 0)" fill="#4a4a4a"/>
<rect id="Rectangle_62" data-name="Rectangle 62" width="2.537" height="2.537" rx="1" transform="translate(30.061 0)" fill="#4a4a4a"/>
</g>
<path id="Path_55" data-name="Path 55" d="M.52,0H3.8a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.52A.519.519,0,0,1,.519,0Z" transform="translate(38.234 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_7" data-name="Group 7" transform="translate(0.728 14.084)">
<rect id="Rectangle_63" data-name="Rectangle 63" width="2.537" height="2.537" rx="1" transform="translate(0 0)" fill="#4a4a4a"/>
<rect id="Rectangle_64" data-name="Rectangle 64" width="2.537" height="2.537" rx="1" transform="translate(3.006 0)" fill="#4a4a4a"/>
<rect id="Rectangle_65" data-name="Rectangle 65" width="2.537" height="2.537" rx="1" transform="translate(6.012 0)" fill="#4a4a4a"/>
<rect id="Rectangle_66" data-name="Rectangle 66" width="2.537" height="2.537" rx="1" transform="translate(9.018 0)" fill="#4a4a4a"/>
<path id="Path_56" data-name="Path 56" d="M.519,0H14.981A.519.519,0,0,1,15.5.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.018V.519A.519.519,0,0,1,.519,0Zm15.97,0h1.874a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H16.489a.519.519,0,0,1-.519-.519V.519A.519.519,0,0,1,16.489,0Z" transform="translate(12.024 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_67" data-name="Rectangle 67" width="2.537" height="2.537" rx="1" transform="translate(31.376 0)" fill="#4a4a4a"/>
<rect id="Rectangle_68" data-name="Rectangle 68" width="2.537" height="2.537" rx="1" transform="translate(34.382 0)" fill="#4a4a4a"/>
<rect id="Rectangle_69" data-name="Rectangle 69" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
<path id="Path_57" data-name="Path 57" d="M2.537,0V.561a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,.561V0Z" transform="translate(39.736 1.08) rotate(180)" fill="#4a4a4a"/>
<path id="Path_58" data-name="Path 58" d="M2.537,0V.561a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,.561V0Z" transform="translate(37.2 1.456)" fill="#4a4a4a"/>
</g>
<rect id="Rectangle_70" data-name="Rectangle 70" width="42.273" height="1.127" rx="0.564" transform="translate(0.915 0.556)" fill="#4a4a4a"/>
<rect id="Rectangle_71" data-name="Rectangle 71" width="2.37" height="0.752" rx="0.376" transform="translate(1.949 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_72" data-name="Rectangle 72" width="2.37" height="0.752" rx="0.376" transform="translate(5.193 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_73" data-name="Rectangle 73" width="2.37" height="0.752" rx="0.376" transform="translate(7.688 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_74" data-name="Rectangle 74" width="2.37" height="0.752" rx="0.376" transform="translate(10.183 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_75" data-name="Rectangle 75" width="2.37" height="0.752" rx="0.376" transform="translate(12.679 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_76" data-name="Rectangle 76" width="2.37" height="0.752" rx="0.376" transform="translate(15.797 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_77" data-name="Rectangle 77" width="2.37" height="0.752" rx="0.376" transform="translate(18.292 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_78" data-name="Rectangle 78" width="2.37" height="0.752" rx="0.376" transform="translate(20.788 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_79" data-name="Rectangle 79" width="2.37" height="0.752" rx="0.376" transform="translate(23.283 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_80" data-name="Rectangle 80" width="2.37" height="0.752" rx="0.376" transform="translate(26.402 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_81" data-name="Rectangle 81" width="2.37" height="0.752" rx="0.376" transform="translate(28.897 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_82" data-name="Rectangle 82" width="2.37" height="0.752" rx="0.376" transform="translate(31.393 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_83" data-name="Rectangle 83" width="2.37" height="0.752" rx="0.376" transform="translate(34.512 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_84" data-name="Rectangle 84" width="2.37" height="0.752" rx="0.376" transform="translate(37.007 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_85" data-name="Rectangle 85" width="2.37" height="0.752" rx="0.376" transform="translate(39.502 0.744)" fill="#d8d8d8" opacity="0.136"/>
</g>
<path id="Path_59" data-name="Path 59" d="M123.779,148.389a2.583,2.583,0,0,0-.332.033c-.02-.078-.038-.156-.06-.234a2.594,2.594,0,1,0-2.567-4.455q-.086-.088-.174-.175a2.593,2.593,0,1,0-4.461-2.569c-.077-.022-.154-.04-.231-.06a2.6,2.6,0,1,0-5.128,0c-.077.02-.154.038-.231.06a2.594,2.594,0,1,0-4.461,2.569,10.384,10.384,0,1,0,17.314,9.992,2.592,2.592,0,1,0,.332-5.161" transform="translate(-51.054 -75.262)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_60" data-name="Path 60" d="M83,113.389h20.779V103H83Z" transform="translate(-41.443 -58.444)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_61" data-name="Path 61" d="M123.389,108.944a1.3,1.3,0,1,0,0-2.6,1.338,1.338,0,0,0-.166.017c-.01-.039-.019-.078-.03-.117a1.3,1.3,0,0,0-.5-2.5,1.285,1.285,0,0,0-.783.269q-.043-.044-.087-.087a1.285,1.285,0,0,0,.263-.776,1.3,1.3,0,0,0-2.493-.509,5.195,5.195,0,1,0,0,10,1.3,1.3,0,0,0,2.493-.509,1.285,1.285,0,0,0-.263-.776q.044-.043.087-.087a1.285,1.285,0,0,0,.783.269,1.3,1.3,0,0,0,.5-2.5c.011-.038.02-.078.03-.117a1.335,1.335,0,0,0,.166.017" transform="translate(-55.859 -57.894)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_62" data-name="Path 62" d="M141.8,38.745a1.41,1.41,0,0,1-.255-.026,1.309,1.309,0,0,1-.244-.073,1.349,1.349,0,0,1-.224-.119,1.967,1.967,0,0,1-.2-.161,1.52,1.52,0,0,1-.161-.2,1.282,1.282,0,0,1-.218-.722,1.41,1.41,0,0,1,.026-.255,1.5,1.5,0,0,1,.072-.244,1.364,1.364,0,0,1,.12-.223,1.252,1.252,0,0,1,.358-.358,1.349,1.349,0,0,1,.224-.119,1.309,1.309,0,0,1,.244-.073,1.2,1.2,0,0,1,.509,0,1.262,1.262,0,0,1,.468.192,1.968,1.968,0,0,1,.2.161,1.908,1.908,0,0,1,.161.2,1.322,1.322,0,0,1,.12.223,1.361,1.361,0,0,1,.1.5,1.317,1.317,0,0,1-.379.919,1.968,1.968,0,0,1-.2.161,1.346,1.346,0,0,1-.223.119,1.332,1.332,0,0,1-.5.1m10.389-.649a1.326,1.326,0,0,1-.92-.379,1.979,1.979,0,0,1-.161-.2,1.282,1.282,0,0,1-.218-.722,1.326,1.326,0,0,1,.379-.919,1.967,1.967,0,0,1,.2-.161,1.351,1.351,0,0,1,.224-.119,1.308,1.308,0,0,1,.244-.073,1.2,1.2,0,0,1,.509,0,1.262,1.262,0,0,1,.468.192,1.967,1.967,0,0,1,.2.161,1.326,1.326,0,0,1,.379.919,1.461,1.461,0,0,1-.026.255,1.323,1.323,0,0,1-.073.244,1.847,1.847,0,0,1-.119.223,1.911,1.911,0,0,1-.161.2,1.967,1.967,0,0,1-.2.161,1.294,1.294,0,0,1-.722.218" transform="translate(-69.074 -26.006)" fill-rule="evenodd"/>
</g>
<g id="React-icon" transform="translate(906.3 541.56)">
<path id="Path_330" data-name="Path 330" d="M263.668,117.179c0-5.827-7.3-11.35-18.487-14.775,2.582-11.4,1.434-20.477-3.622-23.382a7.861,7.861,0,0,0-4.016-1v4a4.152,4.152,0,0,1,2.044.466c2.439,1.4,3.5,6.724,2.672,13.574-.2,1.685-.52,3.461-.914,5.272a86.9,86.9,0,0,0-11.386-1.954,87.469,87.469,0,0,0-7.459-8.965c5.845-5.433,11.332-8.41,15.062-8.41V78h0c-4.931,0-11.386,3.514-17.913,9.611-6.527-6.061-12.982-9.539-17.913-9.539v4c3.712,0,9.216,2.959,15.062,8.356a84.687,84.687,0,0,0-7.405,8.947,83.732,83.732,0,0,0-11.4,1.972c-.412-1.793-.717-3.532-.932-5.2-.843-6.85.2-12.175,2.618-13.592a3.991,3.991,0,0,1,2.062-.466v-4h0a8,8,0,0,0-4.052,1c-5.039,2.9-6.168,11.96-3.568,23.328-11.153,3.443-18.415,8.947-18.415,14.757,0,5.828,7.3,11.35,18.487,14.775-2.582,11.4-1.434,20.477,3.622,23.382a7.882,7.882,0,0,0,4.034,1c4.931,0,11.386-3.514,17.913-9.611,6.527,6.061,12.982,9.539,17.913,9.539a8,8,0,0,0,4.052-1c5.039-2.9,6.168-11.96,3.568-23.328C256.406,128.511,263.668,122.988,263.668,117.179Zm-23.346-11.96c-.663,2.313-1.488,4.7-2.421,7.083-.735-1.434-1.506-2.869-2.349-4.3-.825-1.434-1.7-2.833-2.582-4.2C235.517,104.179,237.974,104.645,240.323,105.219Zm-8.212,19.1c-1.4,2.421-2.833,4.716-4.321,6.85-2.672.233-5.379.359-8.1.359-2.708,0-5.415-.126-8.069-.341q-2.232-3.2-4.339-6.814-2.044-3.523-3.73-7.136c1.112-2.4,2.367-4.805,3.712-7.154,1.4-2.421,2.833-4.716,4.321-6.85,2.672-.233,5.379-.359,8.1-.359,2.708,0,5.415.126,8.069.341q2.232,3.2,4.339,6.814,2.044,3.523,3.73,7.136C234.692,119.564,233.455,121.966,232.11,124.315Zm5.792-2.331c.968,2.4,1.793,4.805,2.474,7.136-2.349.574-4.823,1.058-7.387,1.434.879-1.381,1.757-2.8,2.582-4.25C236.4,124.871,237.167,123.419,237.9,121.984ZM219.72,141.116a73.921,73.921,0,0,1-4.985-5.738c1.614.072,3.263.126,4.931.126,1.685,0,3.353-.036,4.985-.126A69.993,69.993,0,0,1,219.72,141.116ZM206.38,130.555c-2.546-.377-5-.843-7.352-1.417.663-2.313,1.488-4.7,2.421-7.083.735,1.434,1.506,2.869,2.349,4.3S205.5,129.192,206.38,130.555ZM219.63,93.241a73.924,73.924,0,0,1,4.985,5.738c-1.614-.072-3.263-.126-4.931-.126-1.686,0-3.353.036-4.985.126A69.993,69.993,0,0,1,219.63,93.241ZM206.362,103.8c-.879,1.381-1.757,2.8-2.582,4.25-.825,1.434-1.6,2.869-2.331,4.3-.968-2.4-1.793-4.805-2.474-7.136C201.323,104.663,203.8,104.179,206.362,103.8Zm-16.227,22.449c-6.348-2.708-10.454-6.258-10.454-9.073s4.106-6.383,10.454-9.073c1.542-.663,3.228-1.255,4.967-1.811a86.122,86.122,0,0,0,4.034,10.92,84.9,84.9,0,0,0-3.981,10.866C193.38,127.525,191.694,126.915,190.134,126.252Zm9.647,25.623c-2.439-1.4-3.5-6.724-2.672-13.574.2-1.686.52-3.461.914-5.272a86.9,86.9,0,0,0,11.386,1.954,87.465,87.465,0,0,0,7.459,8.965c-5.845,5.433-11.332,8.41-15.062,8.41A4.279,4.279,0,0,1,199.781,151.875Zm42.532-13.663c.843,6.85-.2,12.175-2.618,13.592a3.99,3.99,0,0,1-2.062.466c-3.712,0-9.216-2.959-15.062-8.356a84.689,84.689,0,0,0,7.405-8.947,83.731,83.731,0,0,0,11.4-1.972A50.194,50.194,0,0,1,242.313,138.212Zm6.9-11.96c-1.542.663-3.228,1.255-4.967,1.811a86.12,86.12,0,0,0-4.034-10.92,84.9,84.9,0,0,0,3.981-10.866c1.775.556,3.461,1.165,5.039,1.829,6.348,2.708,10.454,6.258,10.454,9.073C259.67,119.994,255.564,123.562,249.216,126.252Z" fill="#61dafb"/>
<path id="Path_331" data-name="Path 331" d="M320.8,78.4Z" transform="translate(-119.082 -0.328)" fill="#61dafb"/>
<circle id="Ellipse_112" data-name="Ellipse 112" cx="8.194" cy="8.194" r="8.194" transform="translate(211.472 108.984)" fill="#61dafb"/>
<path id="Path_332" data-name="Path 332" d="M520.5,78.1Z" transform="translate(-282.975 -0.082)" fill="#61dafb"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 35 KiB

+40
View File
@@ -0,0 +1,40 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1129" height="663" viewBox="0 0 1129 663">
<title>Focus on What Matters</title>
<circle cx="321" cy="321" r="321" fill="#f2f2f2" />
<ellipse cx="559" cy="635.49998" rx="514" ry="27.50002" fill="#3f3d56" />
<ellipse cx="558" cy="627" rx="460" ry="22" opacity="0.2" />
<rect x="131" y="152.5" width="840" height="50" fill="#3f3d56" />
<path d="M166.5,727.3299A21.67009,21.67009,0,0,0,188.1701,749H984.8299A21.67009,21.67009,0,0,0,1006.5,727.3299V296h-840Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
<path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
<path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" opacity="0.2" />
<circle cx="181" cy="147.5" r="13" fill="#3f3d56" />
<circle cx="217" cy="147.5" r="13" fill="#3f3d56" />
<circle cx="253" cy="147.5" r="13" fill="#3f3d56" />
<rect x="168" y="213.5" width="337" height="386" rx="5.33505" fill="#606060" />
<rect x="603" y="272.5" width="284" height="22" rx="5.47638" fill="#2e8555" />
<rect x="537" y="352.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="537" y="396.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="537" y="440.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="537" y="484.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="865" y="552.5" width="88" height="26" rx="7.02756" fill="#3ecc5f" />
<path d="M1088.60287,624.61594a30.11371,30.11371,0,0,0,3.98291-15.266c0-13.79652-8.54358-24.98081-19.08256-24.98081s-19.08256,11.18429-19.08256,24.98081a30.11411,30.11411,0,0,0,3.98291,15.266,31.248,31.248,0,0,0,0,30.53213,31.248,31.248,0,0,0,0,30.53208,31.248,31.248,0,0,0,0,30.53208,30.11408,30.11408,0,0,0-3.98291,15.266c0,13.79652,8.54353,24.98081,19.08256,24.98081s19.08256-11.18429,19.08256-24.98081a30.11368,30.11368,0,0,0-3.98291-15.266,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53213Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
<ellipse cx="1038.00321" cy="460.31783" rx="19.08256" ry="24.9808" fill="#3f3d56" />
<ellipse cx="1038.00321" cy="429.78574" rx="19.08256" ry="24.9808" fill="#3f3d56" />
<path d="M1144.93871,339.34489a91.61081,91.61081,0,0,0,7.10658-10.46092l-50.141-8.23491,54.22885.4033a91.566,91.566,0,0,0,1.74556-72.42605l-72.75449,37.74139,67.09658-49.32086a91.41255,91.41255,0,1,0-150.971,102.29805,91.45842,91.45842,0,0,0-10.42451,16.66946l65.0866,33.81447-69.40046-23.292a91.46011,91.46011,0,0,0,14.73837,85.83669,91.40575,91.40575,0,1,0,143.68892,0,91.41808,91.41808,0,0,0,0-113.02862Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M981.6885,395.8592a91.01343,91.01343,0,0,0,19.56129,56.51431,91.40575,91.40575,0,1,0,143.68892,0C1157.18982,436.82067,981.6885,385.60008,981.6885,395.8592Z" transform="translate(-35.5 -118.5)" opacity="0.1" />
<path d="M365.62,461.43628H477.094v45.12043H365.62Z" transform="translate(-35.5 -118.5)" fill="#fff" fill-rule="evenodd" />
<path d="M264.76252,608.74122a26.50931,26.50931,0,0,1-22.96231-13.27072,26.50976,26.50976,0,0,0,22.96231,39.81215H291.304V608.74122Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M384.17242,468.57061l92.92155-5.80726V449.49263a26.54091,26.54091,0,0,0-26.54143-26.54143H331.1161l-3.31768-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622-3.31767-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622L301.257,417.205a3.83043,3.83043,0,0,0-6.63536,0L291.304,422.9512c-.02919,0-.05573.004-.08625.004l-5.49674-5.49541a3.8293,3.8293,0,0,0-6.4071,1.71723l-1.81676,6.77338L270.607,424.1031a3.82993,3.82993,0,0,0-4.6912,4.69253l1.84463,6.89148-6.77072,1.81411a3.8315,3.8315,0,0,0-1.71988,6.40975l5.49673,5.49673c0,.02787-.004.05574-.004.08493l-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74621,3.31768L259.0163,466.081a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768L259.0163,558.976a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768A26.54091,26.54091,0,0,0,291.304,635.28265H450.55254A26.5409,26.5409,0,0,0,477.094,608.74122V502.5755l-92.92155-5.80727a14.12639,14.12639,0,0,1,0-28.19762" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M424.01111,635.28265h39.81214V582.19979H424.01111Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M490.36468,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15393-.59852A6.62668,6.62668,0,1,0,482.80568,590.21q-.2203-.22491-.44457-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39414-.10218-.59056-.15262a6.63957,6.63957,0,1,0-13.10086,0c-.1964.05042-.39414.09687-.59056.15262a6.62767,6.62767,0,1,0-11.39688,6.56369,26.52754,26.52754,0,1,0,44.23127,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M437.28182,555.65836H477.094V529.11693H437.28182Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M490.36468,545.70532a3.31768,3.31768,0,0,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M317.84538,466.081a3.31768,3.31768,0,0,1-3.31767-3.31768,9.953,9.953,0,1,0-19.90608,0,3.31768,3.31768,0,1,1-6.63535,0,16.58839,16.58839,0,1,1,33.17678,0,3.31768,3.31768,0,0,1-3.31768,3.31768" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
<path d="M370.92825,635.28265h79.62429A26.5409,26.5409,0,0,0,477.094,608.74122v-92.895H397.46968a26.54091,26.54091,0,0,0-26.54143,26.54143Z" transform="translate(-35.5 -118.5)" fill="#ffff50" fill-rule="evenodd" />
<path d="M457.21444,556.98543H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0-66.10674H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.29459H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414M477.094,474.19076c-.01592,0-.0292-.008-.04512-.00663-4.10064.13934-6.04083,4.24132-7.75274,7.86024-1.78623,3.78215-3.16771,6.24122-5.43171,6.16691-2.50685-.09024-3.94007-2.92222-5.45825-5.91874-1.74377-3.44243-3.73438-7.34667-7.91333-7.20069-4.04227.138-5.98907,3.70784-7.70631,6.857-1.82738,3.35484-3.07084,5.39455-5.46887,5.30033-2.55727-.09289-3.91619-2.39536-5.48877-5.06013-1.75306-2.96733-3.77951-6.30359-7.8775-6.18946-3.97326.13669-5.92537,3.16507-7.64791,5.83912-1.82207,2.82666-3.09872,4.5492-5.52725,4.447-2.61832-.09289-3.9706-2.00388-5.53522-4.21611-1.757-2.4856-3.737-5.299-7.82308-5.16231-3.88567.13271-5.83779,2.61434-7.559,4.80135-1.635,2.07555-2.9116,3.71846-5.61218,3.615a1.32793,1.32793,0,1,0-.09555,2.65414c4.00377.134,6.03154-2.38873,7.79257-4.6275,1.562-1.9853,2.91027-3.69855,5.56441-3.78879,2.55594-.10882,3.75429,1.47968,5.56707,4.04093,1.7212,2.43385,3.67465,5.19416,7.60545,5.33616,4.11789.138,6.09921-2.93946,7.8536-5.66261,1.56861-2.43385,2.92221-4.53461,5.50734-4.62352,2.37944-.08892,3.67466,1.79154,5.50072,4.885,1.72121,2.91557,3.67069,6.21865,7.67977,6.36463,4.14709.14332,6.14965-3.47693,7.89475-6.68181,1.51155-2.77092,2.93814-5.38791,5.46621-5.4755,2.37944-.05573,3.62025,2.11668,5.45558,5.74622,1.71459,3.388,3.65875,7.22591,7.73019,7.37321l.22429.004c4.06614,0,5.99571-4.08074,7.70364-7.68905,1.51154-3.19825,2.94211-6.21069,5.3972-6.33411Z" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
<path d="M344.38682,635.28265h53.08286V582.19979H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M424.01111,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15394-.59852A6.62667,6.62667,0,1,0,416.45211,590.21q-.2203-.22491-.44458-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39413-.10218-.59054-.15262a6.63957,6.63957,0,1,0-13.10084,0c-.19641.05042-.39414.09687-.59055.15262a6.62767,6.62767,0,1,0-11.39689,6.56369,26.52755,26.52755,0,1,0,44.2313,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M344.38682,555.65836h53.08286V529.11693H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M410.74039,545.70532a3.31768,3.31768,0,1,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M424.01111,447.8338a3.60349,3.60349,0,0,1-.65028-.06636,3.34415,3.34415,0,0,1-.62372-.18579,3.44679,3.44679,0,0,1-.572-.30522,5.02708,5.02708,0,0,1-.50429-.4114,3.88726,3.88726,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.60248,3.60248,0,0,1,.06636-.65027,3.82638,3.82638,0,0,1,.18447-.62373,3.48858,3.48858,0,0,1,.30656-.57064,3.197,3.197,0,0,1,.91436-.91568,3.44685,3.44685,0,0,1,.572-.30523,3.344,3.344,0,0,1,.62372-.18578,3.06907,3.06907,0,0,1,1.30053,0,3.22332,3.22332,0,0,1,1.19436.491,5.02835,5.02835,0,0,1,.50429.41139,4.8801,4.8801,0,0,1,.41139.50429,3.38246,3.38246,0,0,1,.30522.57064,3.47806,3.47806,0,0,1,.25215,1.274A3.36394,3.36394,0,0,1,426.36,446.865a5.02708,5.02708,0,0,1-.50429.4114,3.3057,3.3057,0,0,1-1.84463.55737m26.54143-1.65884a3.38754,3.38754,0,0,1-2.35024-.96877,5.04185,5.04185,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.38659,3.38659,0,0,1,.96744-2.34892,5.02559,5.02559,0,0,1,.50429-.41139,3.44685,3.44685,0,0,1,.572-.30523,3.3432,3.3432,0,0,1,.62373-.18579,3.06952,3.06952,0,0,1,1.30052,0,3.22356,3.22356,0,0,1,1.19436.491,5.02559,5.02559,0,0,1,.50429.41139,3.38792,3.38792,0,0,1,.96876,2.34892,3.72635,3.72635,0,0,1-.06636.65026,3.37387,3.37387,0,0,1-.18579.62373,4.71469,4.71469,0,0,1-.30522.57064,4.8801,4.8801,0,0,1-.41139.50429,5.02559,5.02559,0,0,1-.50429.41139,3.30547,3.30547,0,0,1-1.84463.55737" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
</svg>

After

Width:  |  Height:  |  Size: 12 KiB

Some files were not shown because too many files have changed in this diff Show More