# SaaS Work
SaaS Work is a Software as a Service (SaaS) platform designed using Vue.js and Tailwind CSS, aiming to provide GDPR-compliant AI chatbots for organizations. The platform features a detailed and professional hero page, a role-based user system, and a sophisticated subscription model integrated with Stripe for payment processing.
## Overview
SaaS Work comprises a dual-architecture system:
1. **Frontend**: Built with React.js, utilizing Vite as the dev server, shadcn-ui component library, and Tailwind CSS for styling. The frontend also employs `react-router-dom` for client-side routing. It is organized into various components and pages within the `client/` directory and runs on port 5173.
2. **Backend**: Powered by an Express-based server, the backend implements REST API endpoints, manages user authentication and data transactions via MongoDB using Mongoose, and is encapsulated within the `server/` directory. This server runs on port 3000.
The frontend and backend are concurrently run using `npm run start` for a seamless development experience.
## Features
- **User Authentication**: Secure user registration and login with JWT-based authentication.
- **Role-Based Access Control**: Differentiated access for users, organization managers, and super admins.
- **Organization Management**: Only SaaS admins can add new organizations. Users join an existing organization.
- **Subscription Management**: Stripe integration for managing subscriptions, including viewing, suspending, and billing history.
- **Real-Time Active Users Display**: Real-time tracking of active users on the platform.
- **AI Chatbots**: Customizable AI chatbots with support for multiple conversation threads, document uploads, and image analysis.
- **Dynamic Model Selection**: Integration with OpenAI and other AI providers for up-to-date model offerings.
- **Security & GDPR Compliance**: Adherence to GDPR guidelines in data handling, authentication, and subscription management.
## Getting started
### Requirements
Ensure you have the following installed on your computer:
- Node.js (v14.x or higher)
- npm (v6.x or higher)
- MongoDB
### Quickstart
1. **Clone the Repository**:
```sh
git clone https://github.com/your-repo/saas-work.git
cd saas-work-
Install Dependencies:
npm install
-
Set Up Environment Variables: Create a
.envfile in bothclient/andserver/folders by copying the provided.env.examplefiles and filling in the necessary values. -
Start the Project:
npm run start
This will start both the frontend on
http://localhost:5173and backend onhttp://localhost:3000.
The project is proprietary. All rights reserved, Copyright (c) 2024.
This README.md file provides a comprehensive yet succinct overview of the SaaS Work project, detailing its architecture, features, and setup instructions.