diff --git a/README.md b/README.md
index d7f3da3f3..e0fc69d2f 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,6 @@
-
+
-
-
The Open Source DocuSign Alternative.
@@ -18,14 +14,19 @@
Issues
·
Roadmap
+ ·
+ Upcoming Launches
-
+
+
+
+
> 🦺 Documenso 1.0 is deployed to our Staging Environment.
@@ -51,12 +52,20 @@
## About this project
-Signing documents digitally is fast and easy and should be the best practice for every document signed worldwide. This is technically quite easy today, but it also introduces a new party to every signature: The signing tool providers. While this is not a problem in itself, it should make us think about how we want these providers of trust to work. Documenso aims to be the world's most trusted document-signing tool. This trust is built by empowering you to self-host Documenso and review how it works under the hood. Join us in creating the next generation of open trust infrastructure.
+Signing documents digitally should be fast and easy and should be the best practice for every document signed worldwide.
+
+This is technically quite easy today, but it also introduces a new party to every signature: The signing tool providers. While this is not a problem in itself, it should make us think about how we want these providers of trust to work.
+
+Documenso aims to be the world's most trusted document-signing tool. This trust is built by empowering you to self-host Documenso and review how it works under the hood.
+
+Join us in creating the next generation of open trust infrastructure.
## Recognition
-
-
+
+
+
+
## Community and Next Steps 🎯
@@ -101,7 +110,7 @@ Contact us if you are interested in our Enterprise plan for large organizations
### Requirements
-To run Documenso locally you need
+To run Documenso locally you will need
- Node.js
- Postgres SQL Database
@@ -119,12 +128,16 @@ Want to get up and running quickly? Follow these steps:
git clone https://github.com/documenso/documenso
```
-2. Set up your `.env` file using the recommendations in the `.env.example` file.
+2. Set up your `.env` file using the recommendations in the `.env.example` file. Alternatively just run `cp .env.example .env` to get started with our handpicked defaults.
+
+
3. Run `npm run dx` in the root directory
- This will spin up a postgres database and inbucket mailserver in a docker container.
4. Run `npm run dev` in the root directory
+
+
5. Want it even faster? Just use
```sh
@@ -154,28 +167,27 @@ git clone https://github.com/documenso/documenso
2. Run `npm i` in root directory
-3. Generate your `.env` from the `.env.example`
+3. Create your `.env` from the `.env.example`. You can use `cp .env.example .env` to get started with our handpicked defaults.
-4. Set DATABASE_URL value in .env file
+4. Set the following environement variables.
+ - NEXTAUTH_URL
+ - NEXTAUTH_SECRET
+ - NEXT_PUBLIC_WEBAPP_URL
+ - NEXT_PUBLIC_MARKETING_URL
+ - NEXT_PRIVATE_DATABASE_URL
+ - NEXT_PRIVATE_DIRECT_DATABASE_URL
+ - NEXT_PRIVATE_SMTP_FROM_NAME
+ - NEXT_PRIVATE_SMTP_FROM_ADDRESS
- - You can use the provided test database url (may be wiped at any point)
- - Or setup a local postgres sql instance (recommended)
+5. Create the database schema by running `npm run prisma:migrate-dev -w @documenso/prisma`
-5. Create the database scheme by running `db:migrate-dev`
+6. Run `npm run dev` root directory to start
-6. 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` variables in your .env
-
-7. Run `npm run dev` root directory to start
-
-8. Register a new user at http://localhost:3000/signup
+7. 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: Seed the database using `npm run prisma:seed -w @documenso/prisma` to create a test user and document
- Optional: Create your own signing certificate
- To generate your own using these steps and a Linux Terminal or Windows Subsystem for Linux (WSL) see **[Create your own signing certificate](./SIGNING.md)**.
@@ -185,25 +197,20 @@ git clone https://github.com/documenso/documenso
[](https://gitpod.io/#https://github.com/documenso/documenso)
+### Run in DevContainer
+
+We support DevContainers for VSCode. [Click here to get started.](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/documenso/documenso)
+
## Docker
-> We are still working on the publishing of docker images, in the meantime you can follow the steps below to create a production ready docker image.
-
-Want to create a production ready docker image? Follow these steps:
-
-1. cd into `docker` directory
-2. Make `build.sh` executable by running `chmod +x build.sh`
-3. Run `./build.sh` to start building the docker image.
-4. Publish the image to your docker registry of choice (or) if you prefer running the image from local, run the below command
-
-```
-docker run -d --restart=unless-stopped -p 3000:3000 -v documenso:/app/data --name documenso documenso:latest
-```
+🚧 Docker containers and images are current in progress. We are actively working on bringing a simple docker build and publish pipeline for Documenso.
## Self Hosting
We support a variety of deployment methods, and are actively working on adding more. Stay tuned for updates!
+> Please note the below deployment methods are for v0.9, we will update these to v1.0 once it has been released.
+
### Railway
[](https://railway.app/template/DjrRRX)
diff --git a/docker/compose-services.yml b/docker/compose-services.yml
new file mode 100644
index 000000000..67c193dbc
--- /dev/null
+++ b/docker/compose-services.yml
@@ -0,0 +1,19 @@
+name: documenso-services
+services:
+ database:
+ image: postgres:15
+ container_name: database
+ environment:
+ - POSTGRES_USER=documenso
+ - POSTGRES_PASSWORD=password
+ - POSTGRES_DB=documenso
+ ports:
+ - 54320:5432
+
+ inbucket:
+ image: inbucket/inbucket
+ container_name: mailserver
+ ports:
+ - 9000:9000
+ - 2500:2500
+ - 1100:1100
diff --git a/package.json b/package.json
index 6de670d99..56f7964a9 100644
--- a/package.json
+++ b/package.json
@@ -8,7 +8,11 @@
"format": "prettier --write \"**/*.{js,jsx,cjs,mjs,ts,tsx,cts,mts,mdx}\"",
"prepare": "husky install",
"commitlint": "commitlint --edit",
- "clean": "turbo run clean && rimraf node_modules"
+ "clean": "turbo run clean && rimraf node_modules",
+ "d": "npm run dx && npm run dev",
+ "dx": "npm i && npm run dx:up && npm run prisma:migrate-dev -w @documesno/prisma",
+ "dx:up": "docker compose up -f docker/compose-services.yml -d",
+ "dx:down": "docker compose down -f docker/compose-services.yml"
},
"engines": {
"npm": ">=8.6.0",