mirror of https://github.com/docusealco/docuseal
parent
8e141778c3
commit
39b832d47a
@ -0,0 +1,165 @@
|
||||
# DocuSeal Local Development Setup
|
||||
|
||||
This guide will help you set up DocuSeal locally for development and testing purposes.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Before you begin, make sure you have the following installed on your system:
|
||||
|
||||
### Required Software
|
||||
- **Ruby 3.4.2** - Use your preferred Ruby version manager (rbenv, rvm, asdf, etc.)
|
||||
- **Node.js 18** - Required for frontend assets compilation
|
||||
- **Yarn** - Package manager for Node.js dependencies
|
||||
- **PostgreSQL** (optional) - For production-like database setup
|
||||
- **Redis** - For background job processing (Sidekiq)
|
||||
|
||||
### macOS Dependencies
|
||||
- **Homebrew** - For installing system dependencies
|
||||
- **VIPS** - For image processing
|
||||
- **LibreOffice** (optional) - For document conversion if you encounter upload errors
|
||||
|
||||
## Installation Steps
|
||||
|
||||
### 1. Clone the Repository
|
||||
|
||||
```bash
|
||||
git clone https://github.com/CareerPlug/docuseal.git
|
||||
cd docuseal
|
||||
```
|
||||
|
||||
### 2. Install Ruby Dependencies
|
||||
|
||||
Make sure you're using Ruby 3.4.2:
|
||||
|
||||
```bash
|
||||
# If using rbenv
|
||||
rbenv install 3.4.2
|
||||
rbenv local 3.4.2
|
||||
|
||||
# If using rvm
|
||||
rvm install 3.4.2
|
||||
rvm use 3.4.2
|
||||
|
||||
# If using asdf
|
||||
asdf install ruby 3.4.2
|
||||
asdf local ruby 3.4.2
|
||||
```
|
||||
|
||||
Install Ruby gems:
|
||||
|
||||
```bash
|
||||
bundle install
|
||||
```
|
||||
|
||||
### 3. Install System Dependencies
|
||||
|
||||
#### macOS
|
||||
```bash
|
||||
# Install VIPS for image processing
|
||||
brew install vips
|
||||
|
||||
# Install LibreOffice (optional, for document conversion)
|
||||
brew install --cask libreoffice
|
||||
```
|
||||
|
||||
### 4. Setup Database
|
||||
|
||||
The application uses SQLite by default for development. Create and migrate the database:
|
||||
|
||||
```bash
|
||||
rails db:create db:migrate
|
||||
```
|
||||
|
||||
If you prefer to use PostgreSQL for a more production-like setup:
|
||||
|
||||
1. Install PostgreSQL
|
||||
2. Create a database
|
||||
3. Update `config/database.yml` to use PostgreSQL for development
|
||||
4. Run the migration commands
|
||||
|
||||
### 5. Install Node.js Dependencies
|
||||
|
||||
Make sure you're using Node.js 18:
|
||||
|
||||
```bash
|
||||
# Check your Node version
|
||||
node --version
|
||||
|
||||
# If you need to switch to Node 18, use your preferred version manager
|
||||
# Example with nvm:
|
||||
nvm install 18
|
||||
nvm use 18
|
||||
|
||||
# Install dependencies
|
||||
yarn install
|
||||
```
|
||||
|
||||
### 6. Start the Development Servers
|
||||
|
||||
In separate terminal windows:
|
||||
|
||||
```bash
|
||||
# Terminal 1: Rails server
|
||||
PORT=3001 bundle exec rails s -p 3001
|
||||
|
||||
# Terminal 2: Webpack dev server
|
||||
bundle exec ./bin/shakapacker-dev-server
|
||||
```
|
||||
|
||||
### 7. Access the Application
|
||||
|
||||
Open your browser and navigate to:
|
||||
- **DocuSeal**: http://localhost:3001
|
||||
|
||||
## Initial Setup
|
||||
|
||||
### 1. Create Admin Account
|
||||
|
||||
1. Go to http://localhost:3001
|
||||
2. You'll be prompted to create the first admin account
|
||||
3. Fill in the required information to set up your admin user
|
||||
|
||||
### 2. Upload a Document
|
||||
|
||||
1. Log in with your admin account
|
||||
2. Click "New Form" or "Upload Document"
|
||||
3. Upload a PDF document to test the system
|
||||
4. If you encounter upload errors, make sure LibreOffice is installed
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Common Issues
|
||||
|
||||
#### Node.js Version Issues
|
||||
If you get errors during `yarn install`, ensure you're using Node.js 18:
|
||||
```bash
|
||||
node --version # Should show v18.x.x
|
||||
```
|
||||
|
||||
#### Image Processing Errors
|
||||
If you encounter VIPS-related errors:
|
||||
```bash
|
||||
# macOS
|
||||
brew install vips
|
||||
```
|
||||
|
||||
#### Document Upload Issues
|
||||
If document uploads fail, install LibreOffice:
|
||||
```bash
|
||||
# macOS
|
||||
brew install --cask libreoffice
|
||||
```
|
||||
|
||||
#### Database Issues
|
||||
If you encounter database connection issues:
|
||||
```bash
|
||||
# Reset the database
|
||||
rails db:drop db:create db:migrate
|
||||
```
|
||||
|
||||
## Notes
|
||||
This is a standalone DocuSeal instance, this is to more easily make customizations to the fork itself without needing to integrate with another application.
|
||||
- The application runs on port 3001 by default
|
||||
- All data is stored locally in SQLite database for development
|
||||
- File uploads are stored in the `attachments/` directory
|
||||
- This setup is for local development only.
|
||||
Loading…
Reference in new issue