Docsyde is a SaaS application that allows users to create, edit, and sign documents online. Built with modern web technologies, it provides a simple and intuitive interface for document management.
- Frontend: React, Next.js, TailwindCSS
- Backend: Node.js (Express)
- Database: PostgreSQL (via Prisma ORM)
- Authentication: Firebase Auth
- Hosting: Vercel (frontend) + Railway (backend)
- User authentication (email/password)
- Document creation and editing
- Draggable text blocks
- Document signing
- Comments system (basic implementation)
docsyde/
├── client/ # Frontend Next.js application
│ ├── src/
│ │ ├── app/ # Next.js app router pages
│ │ ├── components/ # React components
│ │ ├── lib/ # Utilities and configurations
│ │ └── styles/ # Global styles
│ └── public/ # Static assets
│
└── server/ # Backend Express application
├── src/
│ └── index.ts # Main server file
└── prisma/
└── schema.prisma # Database schema
- Node.js (v18 or later)
- PostgreSQL database
- Firebase project
- Vercel account (for frontend deployment)
- Railway account (for backend deployment)
NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_storage_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
NEXT_PUBLIC_API_URL=http://localhost:3001
DATABASE_URL=your_postgresql_url
FIREBASE_PROJECT_ID=your_project_id
PORT=3001
- Clone the repository:
git clone https://github.com/yourusername/docsyde.git
cd docsyde- Install frontend dependencies:
cd client
npm install- Install backend dependencies:
cd ../server
npm install- Set up the database:
npx prisma generate
npx prisma db push- Start the development servers:
Frontend:
cd client
npm run devBackend:
cd server
npm run devThe frontend will be available at http://localhost:3000 and the backend at http://localhost:3001.
- Push your code to GitHub
- Connect your repository to Vercel
- Configure environment variables
- Deploy
- Push your code to GitHub
- Create a new project on Railway
- Connect your repository
- Add PostgreSQL plugin
- Configure environment variables
- Deploy
MIT