{"id":19555438,"url":"https://github.com/sagargaud01/saas-crm-solution","last_synced_at":"2026-02-02T23:45:56.847Z","repository":{"id":247330990,"uuid":"822531398","full_name":"SAGARGAUD01/SaaS-CRM-Solution","owner":"SAGARGAUD01","description":"Technical Case","archived":false,"fork":false,"pushed_at":"2024-07-11T08:52:37.000Z","size":150,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-08T21:16:46.946Z","etag":null,"topics":["assessment-project","flowchart","saas"],"latest_commit_sha":null,"homepage":"https://github.com/SAGARGAUD01/SaaS-CRM-Solution","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SAGARGAUD01.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-01T10:20:23.000Z","updated_at":"2024-07-11T08:52:40.000Z","dependencies_parsed_at":"2024-11-11T04:44:18.042Z","dependency_job_id":null,"html_url":"https://github.com/SAGARGAUD01/SaaS-CRM-Solution","commit_stats":null,"previous_names":["sagargaud01/saas-crm-solution"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAGARGAUD01%2FSaaS-CRM-Solution","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAGARGAUD01%2FSaaS-CRM-Solution/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAGARGAUD01%2FSaaS-CRM-Solution/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SAGARGAUD01%2FSaaS-CRM-Solution/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SAGARGAUD01","download_url":"https://codeload.github.com/SAGARGAUD01/SaaS-CRM-Solution/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240814837,"owners_count":19861955,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assessment-project","flowchart","saas"],"created_at":"2024-11-11T04:33:58.243Z","updated_at":"2026-02-02T23:45:56.771Z","avatar_url":"https://github.com/SAGARGAUD01.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# SaaS CRM Solution\n\n## Overview\n\nThis project is a SaaS CRM solution that provides a comprehensive suite of tools to manage client interactions and streamline operations. The key features include viewing upcoming bookings, tracking users via tagged links, writing session notes, accessing analytical data, and handling payments. \n\n# About me:\n\n\u003ca href=\"https://www.linkedin.com/in/sagargaud332/\" target=\"_blank\"\u003e\u003cimg alt=\"\" src=\"https://img.shields.io/badge/LinkedIn-000?logo=linkedin\u0026logoColor=0A66C2\u0026style=for-the-badge\" style=\"vertical-align:center\" /\u003e\u003c/a\u003e\n\n## Features\n\n1. **Viewing Upcoming Bookings**: Allows users to see their upcoming appointments and manage their schedules.\n2. **Tracking Users via Tagged Links**: Monitors the number of users arriving via specific links.\n3. **Writing Session Notes**: Enables users to document notes for each session.\n4. **Accessing Analytical Data**: Provides insights such as session frequency and monthly turnover.\n5. **Handling Payments**: Manages payment collection and deposits into client accounts.\n\n## Table of Contents\n\n- [Tech Stack](#tech-stack)\n- [Project Structure](#project-structure)\n- [Setup and Installation](#setup-and-installation)\n- [Development Workflow](#development-workflow)\n- [API Documentation](#api-documentation)\n- [Testing](#testing)\n\n## Tech Stack\n\n**Frontend**:\n- React.js\n- HTML, CSS\n- Axios (for API calls)\n\n**Backend**:\n- Node.js\n- Express.js\n- MongoDB\n- Mongoose (ORM)\n\n**Payment Gateway**:\n- Stripe API\n\n**Analytics and Tracking**:\n- Google Analytics\n- Firebase\n\n**DevOps**:\n- Docker\n- Kubernetes\n- GitHub Actions (CI/CD)\n\n**Testing**:\n- Jest\n- Cypress\n\n## Project Structure\n\n```\nroot\n│\n├── backend\n│   ├── controllers\n│   ├── models\n│   ├── routes\n│   ├── services\n│   └── index.js\n│\n├── frontend\n│   ├── src\n│   │   ├── components\n│   │   ├── pages\n│   │   ├── services\n│   │   └── App.js\n│   └── public\n│\n├── .gitignore\n├── docker-compose.yml\n├── README.md\n└── package.json\n```\n\n## Setup and Installation\n\n### Prerequisites\n\n- Node.js (v14 or higher)\n- MongoDB\n- Docker\n- Docker Compose\n\n### Installation\n\n1. **Clone the repository**:\n   ```sh\n   git clone https://github.com/your-repo/saas-crm.git\n   cd saas-crm\n   ```\n\n2. **Install dependencies**:\n   - For backend:\n     ```sh\n     cd backend\n     npm install\n     ```\n   - For frontend:\n     ```sh\n     cd frontend\n     npm install\n     ```\n\n3. **Configure environment variables**:\n   - Create a `.env` file in the `backend` directory and add the following:\n     ```env\n     PORT=5000\n     MONGO_URI=your_mongodb_uri\n     JWT_SECRET=your_jwt_secret\n     STRIPE_SECRET_KEY=your_stripe_secret_key\n     ```\n\n4. **Run the application**:\n   - Using Docker Compose:\n     ```sh\n     docker-compose up\n     ```\n   - Without Docker:\n     - Start the backend:\n       ```sh\n       cd backend\n       npm start\n       ```\n     - Start the frontend:\n       ```sh\n       cd frontend\n       npm start\n       ```\n\n## Development Workflow\n\n### Frontend Development\n\n1. **Component Structure**:\n   - Login Component: Handles user authentication.\n   - Navbar Component: Navigation bar for accessing different pages.\n   - Bookings Component: Main component for displaying bookings.\n   - Booking Card Component: Displays individual booking details.\n   - Error Handling Component: Displays errors if any occur.\n\n2. **API Integration**:\n   - Use Axios to fetch data from the backend.\n   - Handle API responses and errors.\n\n### Backend Development\n\n1. **Setting Up Server**:\n   - Initialize a Node.js server with Express.\n   - Configure middleware for authentication and error handling.\n\n2. **Controllers and Services**:\n   - Create controllers for handling requests.\n   - Implement business logic in service layers.\n\n3. **Database Schema**:\n   - Design schemas using Mongoose for MongoDB.\n   - Implement CRUD operations.\n\n### API Documentation\n\n#### Booking API\n\n- **Get Upcoming Bookings**:\n  - **Endpoint**: `/api/bookings`\n  - **Method**: GET\n  - **Description**: Fetches a list of upcoming bookings.\n  - **Response**:\n    ```json\n    {\n      \"bookings\": [\n        {\n          \"id\": \"1\",\n          \"user\": \"Sagar Gaud\",\n          \"service\": \"Consultation\",\n          \"date\": \"2024-07-01T10:00:00Z\",\n          \"status\": \"Confirmed\"\n        },\n        ...\n      ]\n    }\n    ```\n\n## Testing\n\n### Unit Tests\n\n- Use Jest for unit testing frontend and backend components.\n- Write tests for individual components and services.\n\n### Integration Tests\n\n- Use Cypress for end-to-end testing.\n- Test the integration between frontend and backend.\n\n### Running Tests\n\n- **Frontend**:\n  ```sh\n  cd frontend\n  npm test\n  ```\n- **Backend**:\n  ```sh\n  cd backend\n  npm test\n  ```\n\n  # Zenstreet (Technical Case)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsagargaud01%2Fsaas-crm-solution","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsagargaud01%2Fsaas-crm-solution","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsagargaud01%2Fsaas-crm-solution/lists"}