The DocuSign Open Source Alternative.
Learn more »
Slack
·
Website
·
Issues
·
Roadmap
npm i in root directory
- Rename .env.example to .env
- Set DATABASE_URL value in .env file
- You can use the provided test database url (may be wiped at any point)
- Or setup a local postgres sql instance (recommened)
- Create the database scheme by running db-migrate:dev
- Setup your mail provider
- Set SENDGRID_API_KEY value in .env file
- You need a SendGrid account, which you can create [here](https://signup.sendgrid.com/).
- Documenso uses [Nodemailer](https://nodemailer.com/about/) so you can easily use your own SMTP server by setting the SMTP\_\* varibles in your .env
- Run npm run dev root directory to start
- Register a new user at http://localhost:3000/signup
---
- Optional: Seed the database using npm run db-seed to create a test user and document
- Optional: Upload and sign apps\web\ressources\example.pdf manually to test your setup
- Optional: Create your own signing certificate
- A demo certificate is provided in /app/web/ressources/certificate.p12
- To generate you own using these steps and a linux Terminal or Windows Linux Subsystem see **Create your own signging certificate**.
## Updating
- If you pull the newest version from main, using git pull, it may be neccessary to regenerate your database client
- You can do this by running the generate command in /packages/prisma:
```sh
npx prisma generate
```
- This is not neccessary on first clone
# Creating your own signging certificate
For the digital signature of you documents you need a signign certificate in .p12 formate (public and private key). You can buy one (not recommended for dev) or use the steps to create a self-signed one:
1. Generate a private key using the OpenSSL command. You can run the following command to generate a 2048-bit RSA key:\
openssl genrsa -out private.key 2048
2. Generate a self-signed certificate using the private key. You can run the following command to generate a self-signed certificate:\
openssl req -new -x509 -key private.key -out certificate.crt -days 365 \
This will prompt you to enter some information, such as the Common Name (CN) for the certificate. Make sure you enter the correct information. The -days parameter sets the number of days for which the certificate is valid.
3. Combine the private key and the self-signed certificate to create the p12 certificate. You can run the following command to do this: \
openssl pkcs12 -export -out certificate.p12 -inkey private.key -in certificate.crt
4. You will be prompted to enter a password for the p12 file. Choose a strong password and remember it, as you will need it to use the certificate (**can be empty for dev certificates**)
5. Place the certificate /apps/web/ressource/certificate.p12
# Deploying - Coming Soon™
- Docker support
- One-Click-Deploy on Render.com Deploy