Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(api): Create default workspace on user's creation #182

Merged
merged 1 commit into from
Apr 14, 2024

Conversation

rajdip-b
Copy link
Member

@rajdip-b rajdip-b commented Apr 14, 2024

User description

Description

Creates a default workspace when a user is created. Default workspaces have these features:

  • They have a isDefault flag set to true
  • Owners are not allowed to leave the workspace or transfer its ownership

Fixes #157


Type

enhancement


Description

  • Introduced functionality to create a default workspace when a new user is created.
  • Refactored user creation logic in AuthService and updated CreateUserDto to support optional fields.
  • Added a new function for workspace creation with default workspace support and detailed logging.
  • Enhanced user and workspace services to handle default workspaces, including preventing their deletion and ownership transfer.
  • Updated e2e tests to cover new functionality and added cleanup utilities.
  • Implemented a database migration to add an isDefault column to the Workspace table.
  • Simplified docker-compose test configuration by removing the version specification.

Changes walkthrough

Relevant files
Enhancement
9 files
auth.service.ts
Refactor User Creation Logic in AuthService                           

apps/api/src/auth/service/auth.service.ts

  • Refactored user creation logic by removing the createUser method and
    using the createUser function directly.
  • +8/-20   
    create-user.ts
    Implement Default Workspace Creation on New User Signup   

    apps/api/src/common/create-user.ts

  • Added functionality to create a default workspace when a new user is
    created.
  • Enhanced logging to include user and workspace creation details.
  • +26/-3   
    create-workspace.ts
    Add Functionality to Create Default Workspaces                     

    apps/api/src/common/create-workspace.ts

  • Introduced a new function to create workspaces with the ability to
    mark them as default.
  • Added detailed logging for workspace creation.
  • +95/-0   
    create.user.ts
    Update CreateUserDto to Support Optional Fields                   

    apps/api/src/user/dto/create.user/create.user.ts

  • Made name, profilePictureUrl, isActive, isOnboardingFinished, and
    isAdmin fields optional in CreateUserDto.
  • +5/-5     
    user.service.ts
    Enhance User Deletion to Remove Default Workspace               

    apps/api/src/user/service/user.service.ts

  • Added logic to delete a user's default workspace upon account
    deletion.
  • Enhanced logging to include user deletion details.
  • +10/-0   
    create.workspace.ts
    Update CreateWorkspace DTO to Support Optional Fields       

    apps/api/src/workspace/dto/create.workspace/create.workspace.ts

  • Made description and approvalEnabled fields optional in
    CreateWorkspace DTO.
  • +2/-2     
    workspace.service.ts
    Refactor Workspace Creation and Protect Default Workspaces

    apps/api/src/workspace/service/workspace.service.ts

  • Refactored workspace creation to use the createWorkspace function.
  • Added checks to prevent ownership transfer and deletion of default
    workspaces.
  • +17/-79 
    migration.sql
    Database Migration to Add isDefault Column to Workspace   

    apps/api/src/prisma/migrations/20240413155927_add_default_workspace/migration.sql

  • Added a migration to include an isDefault column in the Workspace
    table.
  • +2/-0     
    schema.prisma
    Update Prisma Schema to Include isDefault in Workspace Model

    apps/api/src/prisma/schema.prisma

  • Updated the Prisma schema to include an isDefault field in the
    Workspace model.
  • +1/-0     
    Tests
    2 files
    user.e2e.spec.ts
    Refactor User E2E Tests and Add Default Workspace Creation Test

    apps/api/src/user/user.e2e.spec.ts

  • Refactored user creation in tests to use the UserService.
  • Added cleanup utility to manage test data.
  • Implemented a test to verify default workspace creation for new users.

  • +70/-20 
    workspace.e2e.spec.ts
    Add E2E Tests for Default Workspace Restrictions                 

    apps/api/src/workspace/workspace.e2e.spec.ts

  • Added tests to ensure default workspaces cannot be deleted or have
    their ownership transferred.
  • +129/-37
    Configuration changes
    1 files
    docker-compose-test.yml
    Simplify docker-compose Test Configuration                             

    docker-compose-test.yml

  • Removed version specification from the docker-compose test
    configuration.
  • +0/-3     

    PR-Agent usage:
    Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

    Copy link

    Quality Gate Passed Quality Gate passed

    Issues
    0 New issues
    0 Accepted issues

    Measures
    0 Security Hotspots
    No data about Coverage
    0.0% Duplication on New Code

    See analysis details on SonarCloud

    @codiumai-pr-agent-free codiumai-pr-agent-free bot added the type: enhancement New feature or request label Apr 14, 2024
    Copy link
    Contributor

    PR Description updated to latest commit (a94535b)

    Copy link
    Contributor

    PR Review

    ⏱️ Estimated effort to review [1-5]

    4, because the PR introduces significant changes across multiple files, including backend logic for user and workspace management, database schema updates, and comprehensive test coverage. The complexity of the changes and the importance of ensuring no regressions in user creation and workspace management workflows justify a thorough review.

    🧪 Relevant tests

    Yes

    🔍 Possible issues

    Missing Validation: The createWorkspace function might not validate the CreateWorkspace DTO fully, potentially leading to issues with incomplete or invalid workspace creation requests.

    Error Handling: The error handling in the new user and workspace creation flows could be improved. Specifically, there's no clear rollback mechanism or transaction handling if part of the process fails (e.g., user is created but default workspace creation fails).

    Performance Concerns: The deletion logic in UserService.deleteUserById method deletes default workspaces before deleting the user. This could lead to performance issues or inconsistencies if the workspace deletion fails but the user deletion proceeds.

    🔒 Security concerns

    No


    ✨ Review tool usage guide:

    Overview:
    The review tool scans the PR code changes, and generates a PR review which includes several types of feedbacks, such as possible PR issues, security threats and relevant test in the PR. More feedbacks can be added by configuring the tool.

    The tool can be triggered automatically every time a new PR is opened, or can be invoked manually by commenting on any PR.

    • When commenting, to edit configurations related to the review tool (pr_reviewer section), use the following template:
    /review --pr_reviewer.some_config1=... --pr_reviewer.some_config2=...
    
    [pr_reviewer]
    some_config1=...
    some_config2=...
    

    See the review usage page for a comprehensive guide on using this tool.

    Copy link
    Contributor

    PR Code Suggestions

    CategorySuggestions                                                                                                                                                       
    Enhancement
    Add a check for workspace name uniqueness in the workspace creation process.

    Consider implementing a check for the uniqueness of the workspace name within the
    createWorkspace function. This ensures that each workspace has a unique name, preventing
    potential conflicts or confusion.

    apps/api/src/workspace/service/workspace.service.ts [55]

    +// Ensure the workspace name is unique
    +const existingWorkspace = await this.prisma.workspace.findUnique({
    +  where: {
    +    name: dto.name,
    +  },
    +});
    +if (existingWorkspace) {
    +  throw new ConflictException('A workspace with this name already exists');
    +}
     return await createWorkspace(user, dto, this.prisma)
     
    Add more assertions for the properties of the default workspace in tests.

    To ensure the integrity of your tests, consider adding assertions to check the properties
    of the workspace created by default for a new user. This will help verify that the
    workspace is set up correctly and has the expected default values.

    apps/api/src/workspace/workspace.e2e.spec.ts [108-112]

     expect(createUserResponse.defaultWorkspace).toBeDefined()
     expect(createUserResponse.defaultWorkspace.name).toEqual('My Workspace')
     expect(createUserResponse.defaultWorkspace.isDefault).toEqual(true)
    +// Additional assertions for default workspace properties
    +expect(createUserResponse.defaultWorkspace.approvalEnabled).toEqual(false)
    +expect(createUserResponse.defaultWorkspace.isFreeTier).toEqual(true)
     
    Add error logging for workspace creation failures.

    Use the Logger instance for error logging as well, especially in critical operations like
    user and workspace creation, to ensure all errors are properly logged for debugging and
    monitoring.

    apps/api/src/common/create-user.ts [30-34]

    -const workspace = await createWorkspace(
    -    user,
    -    { name: 'My Workspace' },
    -    prisma,
    -    true
    -)
    +let workspace;
    +try {
    +    workspace = await createWorkspace(
    +        user,
    +        { name: 'My Workspace' },
    +        prisma,
    +        true
    +    )
    +} catch (error) {
    +    logger.error(`Failed to create default workspace for user ${user.id}: ${error.message}`);
    +    throw error; // Rethrow the error after logging
    +}
     
    Maintainability
    Refactor the check for default workspace into a private method to reduce code duplication.

    To improve the maintainability and readability of the code, consider refactoring the
    repeated logic for checking if a workspace is the default workspace and throwing a
    BadRequestException into a private method within the WorkspaceService.

    apps/api/src/workspace/service/workspace.service.ts [233-235]

    -if (workspace.isDefault) {
    -  throw new BadRequestException(
    -    `You cannot delete the default workspace ${workspace.name} (${workspace.id})`
    -  );
    +this.ensureNotDefaultWorkspace(workspace);
    +
    +// Inside WorkspaceService class
    +private ensureNotDefaultWorkspace(workspace: Workspace) {
    +  if (workspace.isDefault) {
    +    throw new BadRequestException(
    +      `Operation not allowed on the default workspace ${workspace.name} (${workspace.id})`
    +    );
    +  }
     }
     
    Reliability
    Add error handling around the workspace creation transaction for improved reliability.

    For better error handling and user feedback, consider adding a try-catch block around the
    workspace creation transaction. This way, you can catch any errors that occur during the
    creation process and return a more user-friendly error message.

    apps/api/src/common/create-workspace.ts [70-73]

    -const result = await prisma.$transaction([
    -  createNewWorkspace,
    -  assignOwnership
    -])
    +let result;
    +try {
    +  result = await prisma.$transaction([
    +    createNewWorkspace,
    +    assignOwnership
    +  ]);
    +} catch (error) {
    +  logger.error(`Failed to create workspace: ${error.message}`);
    +  throw new InternalServerErrorException('Failed to create workspace');
    +}
     
    Best practice
    Implement a comprehensive cleanup function for tests to ensure a clean state.

    To improve the cleanup process in your tests, consider implementing a more comprehensive
    cleanup function that not only deletes users but also associated workspaces and other
    related entities. This ensures a clean state for each test run and prevents potential
    interference between tests.

    apps/api/src/user/user.e2e.spec.ts [40]

    -await cleanUp(prisma)
    +// Improved cleanup function that handles users, workspaces, and other entities
    +async function enhancedCleanUp(prisma: PrismaService) {
    +  await prisma.workspace.deleteMany({});
    +  await prisma.user.deleteMany({});
    +  // Add other necessary cleanup steps here
    +}
    +await enhancedCleanUp(prisma)
     
    Wrap user and workspace creation in a transaction for data consistency.

    Consider wrapping the user and workspace creation logic inside a transaction. This ensures
    that if either operation fails, the database remains in a consistent state without partial
    updates.

    apps/api/src/common/create-user.ts [18-35]

    -const user = await prisma.user.create({
    -    data: {
    -        email: dto.email,
    -        name: dto.name,
    -        isOnboardingFinished: dto.isOnboardingFinished ?? false
    -    }
    +const result = await prisma.$transaction(async (prisma) => {
    +    const user = await prisma.user.create({
    +        data: {
    +            email: dto.email,
    +            name: dto.name,
    +            isOnboardingFinished: dto.isOnboardingFinished ?? false
    +        }
    +    })
    +    const workspace = await createWorkspace(
    +        user,
    +        { name: 'My Workspace' },
    +        prisma,
    +        true
    +    )
    +    return { user, workspace };
     })
    -const workspace = await createWorkspace(
    -    user,
    -    { name: 'My Workspace' },
    -    prisma,
    -    true
    -)
     
    Add error handling for user and workspace deletion operations.

    Ensure to handle potential exceptions when deleting a user or their workspace, especially
    since these operations can fail due to foreign key constraints or other database rules.

    apps/api/src/user/service/user.service.ts [111-123]

    -await this.prisma.workspace.deleteMany({
    -    where: {
    -        ownerId: userId,
    -        isDefault: true
    -    }
    -})
    -await this.prisma.user.delete({
    -    where: {
    -        id: userId
    -    }
    -})
    +try {
    +    await this.prisma.workspace.deleteMany({
    +        where: {
    +            ownerId: userId,
    +            isDefault: true
    +        }
    +    })
    +    await this.prisma.user.delete({
    +        where: {
    +            id: userId
    +        }
    +    })
    +} catch (error) {
    +    this.log.error(`Failed to delete user ${userId}: ${error.message}`);
    +    throw new Error(`Deletion failed for user ${userId}`);
    +}
     
    Validate user creation input data to ensure data integrity.

    Validate the input data before creating a new user to prevent invalid data from being
    inserted into the database.

    apps/api/src/auth/service/auth.service.ts [160-166]

    +// Assume validateCreateUserInput is a function that validates the input data
    +const isValid = validateCreateUserInput({ email, name, profilePictureUrl });
    +if (!isValid) {
    +    throw new Error('Invalid input data');
    +}
     user = await createUser(
         {
             email,
             name,
             profilePictureUrl
         },
         this.prisma
     )
     
    Performance
    Add an index to the isDefault column for better query performance.

    Consider adding an index to the isDefault column in the Workspace table to improve query
    performance, especially if you frequently query for default workspaces.

    apps/api/src/prisma/schema.prisma [421]

    -isDefault       Boolean  @default(false)
    +isDefault       Boolean  @default(false) @index
     

    ✨ Improve tool usage guide:

    Overview:
    The improve tool scans the PR code changes, and automatically generates suggestions for improving the PR code. The tool can be triggered automatically every time a new PR is opened, or can be invoked manually by commenting on a PR.

    • When commenting, to edit configurations related to the improve tool (pr_code_suggestions section), use the following template:
    /improve --pr_code_suggestions.some_config1=... --pr_code_suggestions.some_config2=...
    
    [pr_code_suggestions]
    some_config1=...
    some_config2=...
    

    See the improve usage page for a comprehensive guide on using this tool.

    Copy link

    codecov bot commented Apr 14, 2024

    Codecov Report

    All modified and coverable lines are covered by tests ✅

    Project coverage is 93.15%. Comparing base (7bb3d21) to head (a94535b).
    Report is 45 commits behind head on develop.

    Additional details and impacted files
    @@             Coverage Diff              @@
    ##           develop     #182       +/-   ##
    ============================================
    + Coverage    62.20%   93.15%   +30.94%     
    ============================================
      Files           76       97       +21     
      Lines         1503     2148      +645     
      Branches       260      401      +141     
    ============================================
    + Hits           935     2001     +1066     
    + Misses         568      147      -421     
    Flag Coverage Δ
    api-e2e-tests 93.15% <100.00%> (+30.94%) ⬆️

    Flags with carried forward coverage won't be shown. Click here to find out more.

    ☔ View full report in Codecov by Sentry.
    📢 Have feedback on the report? Share it here.

    @rajdip-b rajdip-b merged commit 3dc0c4c into develop Apr 14, 2024
    9 checks passed
    @rajdip-b rajdip-b deleted the feat/default-workspace branch May 6, 2024 19:39
    rajdip-b pushed a commit that referenced this pull request May 12, 2024
    ## [1.3.0](v1.2.0...v1.3.0) (2024-05-12)
    
    ### 🚀 Features
    
    * Add approval support ([#158](#158)) ([e09ae60](e09ae60))
    * **api:** Add configuration live update support ([#181](#181)) ([f7d6684](f7d6684))
    * **api:** Add feature to export data of a workspace ([#152](#152)) ([46833aa](46833aa))
    * **api:** Add Integration support ([#203](#203)) ([f1ae87e](f1ae87e))
    * **api:** Add note to [secure] and variable ([#151](#151)) ([2e62351](2e62351))
    * **api:** Add OAuth redirection and polished authentication ([#212](#212)) ([d2968bc](d2968bc))
    * **api:** Add support for storing and managing variables ([#149](#149)) ([963a8ae](963a8ae))
    * **api:** Added GitLab OAuth ([#188](#188)) ([4d3bbe4](4d3bbe4))
    * **api:** Added validation for reason field ([#190](#190)) ([90b8ff2](90b8ff2))
    * **api:** Create default workspace on user's creation ([#182](#182)) ([3dc0c4c](3dc0c4c))
    * **api:** Reading `port` Dynamically ([#170](#170)) ([fd46e3e](fd46e3e))
    * **auth:** Add Google OAuth ([#156](#156)) ([cf387ea](cf387ea))
    * **web:** Added waitlist ([#168](#168)) ([1084c77](1084c77))
    * **web:** Landing revamp ([#165](#165)) ([0bc723b](0bc723b))
    
    ### 🐛 Bug Fixes
    
    * **web:** alignment issue in “Collaboration made easy” section ([#178](#178)) ([df5ca75](df5ca75))
    * **workspace:** delete duplicate tailwind config ([99d922a](99d922a))
    
    ### 📚 Documentation
    
    * add contributor list ([f37569a](f37569a))
    * Add integration docs ([#204](#204)) ([406ddb7](406ddb7))
    * Added integration docs to gitbook summary ([ab37530](ab37530))
    * **api:** Add swagger docs of API key controller ([#167](#167)) ([2910476](2910476))
    * **api:** Add swagger docs of User Controller ([#166](#166)) ([fd59522](fd59522))
    * fix typo in environment-variables.md ([#163](#163)) ([48294c9](48294c9))
    * Remove supabase from docs ([#169](#169)) ([eddbce8](eddbce8))
    * **setup:** replace NX with Turbo in setup instructions ([#175](#175)) ([af8a460](af8a460))
    * Update README.md ([b59f16b](b59f16b))
    * Update running-the-api.md ([177dbbf](177dbbf))
    * Update running-the-api.md ([#193](#193)) ([3d5bcac](3d5bcac))
    
    ### 🔧 Miscellaneous Chores
    
    * Added lockfile ([60a3b9b](60a3b9b))
    * Added lockfile ([6bb512c](6bb512c))
    * **api:** Added type inference and runtime validation to `process.env` ([#200](#200)) ([249e07d](249e07d))
    * **api:** Fixed prisma script env errors ([#209](#209)) ([8762354](8762354))
    * **API:** Refactor authority check functions in API ([#189](#189)) ([e9d710d](e9d710d))
    * **api:** Refactor user e2e tests ([b38d45a](b38d45a))
    * **ci:** Disabled api stage release ([97877c4](97877c4))
    * **ci:** Update stage deployment config ([868a6a1](868a6a1))
    * **codecov:** update api-e2e project coverage ([1e90d7e](1e90d7e))
    * **dockerfile:** Fixed web dockerfile ([6134bb2](6134bb2))
    * **docker:** Optimized web Dockerfile to reduct image size ([#173](#173)) ([444286a](444286a))
    * **release:** Downgraded package version ([c173fee](c173fee))
    * **release:** Fix failing release ([#213](#213)) ([40f64f3](40f64f3))
    * **release:** Install pnpm ([1081bea](1081bea))
    * **release:** Updated release commit ([b8958e7](b8958e7))
    * **release:** Updated release commit ([e270eb8](e270eb8))
    * Update deprecated husky Install command ([#202](#202)) ([e61102c](e61102c))
    * Upgrade @million/lint from 0.0.66 to 0.0.73 ([#172](#172)) ([dd43ed9](dd43ed9))
    * **web:** Updated fly memory config ([4debc66](4debc66))
    
    ### 🔨 Code Refactoring
    
    * **api:** Made events central to workspace ([#159](#159)) ([9bc00ae](9bc00ae))
    * **api:** Migrated to cookie based authentication ([#206](#206)) ([ad6911f](ad6911f))
    * **monorepo:** Migrate from nx to turbo ([#153](#153)) ([88b4b00](88b4b00))
    @rajdip-b
    Copy link
    Member Author

    🎉 This PR is included in version 1.3.0 🎉

    The release is available on GitHub release

    Your semantic-release bot 📦🚀

    csehatt741 pushed a commit to csehatt741/keyshade that referenced this pull request Feb 15, 2025
    ## 1.0.0 (2025-02-15)
    
    ### ⚠ BREAKING CHANGES
    
    * **api:** Refactor environment, [secure] and variable functionality
    * **api:** update workspace role mechanism and added functionality to create custom roles
    
    ### 🚀 Features
    
    * add api-keys module ([abb2863](https://github.com/csehatt741/keyshade/commit/abb28632c069bd01e95fbcc8081a5d2eed786b8f))
    * Add approval support ([#158](https://github.com/csehatt741/keyshade/issues/158)) ([e09ae60](https://github.com/csehatt741/keyshade/commit/e09ae60f48c2339c2000af2f45b3e07db2780f41))
    * add example for health and email auth ([b834d25](https://github.com/csehatt741/keyshade/commit/b834d254a8d9bc506021b8ab07b6e94c80997b9f))
    * add project module ([c96df17](https://github.com/csehatt741/keyshade/commit/c96df17b94f96578903f3de68394458af8e8a9f2))
    * add project, environment module ([fd5c4d7](https://github.com/csehatt741/keyshade/commit/fd5c4d744467395c0b360916ed85bd6cf88c698e))
    * Add RBAC ([b4cb14f](https://github.com/csehatt741/keyshade/commit/b4cb14f7fbb29c1c53e562c654a4ab5495d69e9f))
    * add [secure] module ([cd79172](https://github.com/csehatt741/keyshade/commit/cd79172ca33aa5c6c72b7859acdeaa2bb5b10970))
    * add swagger ([b15dbb0](https://github.com/csehatt741/keyshade/commit/b15dbb05b3d2dae83d7250437dfa82077fd31ae4))
    * added the auto assign workflow yaml file ([eadca0c](https://github.com/csehatt741/keyshade/commit/eadca0c0a2012344ef9030fade217e9cf57b7783))
    * added the auto assign workflow yaml file ([5e1d0f1](https://github.com/csehatt741/keyshade/commit/5e1d0f153cda371a415c27e92ac558b770058b3e))
    * **api:**  Add icon and remove description field from workspace ([#435](https://github.com/csehatt741/keyshade/issues/435)) ([a99c0db](https://github.com/csehatt741/keyshade/commit/a99c0db079f18bd76437c4bf23e08095b0635c41))
    * **api-client:** Added API Client package ([#346](https://github.com/csehatt741/keyshade/issues/346)) ([6734e1e](https://github.com/csehatt741/keyshade/commit/6734e1e2490915406a82c2e5a6bd88944b0fb664))
    * **api-client:** Added workspace controller ([#427](https://github.com/csehatt741/keyshade/issues/427)) ([2f4edec](https://github.com/csehatt741/keyshade/commit/2f4edecd0837f7658892a37902c62f05ab96c884))
    * **api-client:** Added workspace role controller ([#430](https://github.com/csehatt741/keyshade/issues/430)) ([b03ce8e](https://github.com/csehatt741/keyshade/commit/b03ce8ee346ee054b2460093ee5542551c175f60))
    * **api-client:** Added workspace-membership and related tests ([#452](https://github.com/csehatt741/keyshade/issues/452)) ([6a1c091](https://github.com/csehatt741/keyshade/commit/6a1c091ceabe012eabd247eee04fd9a67717ffec))
    * **api-client:** Create controller for Event module ([#399](https://github.com/csehatt741/keyshade/issues/399)) ([122df35](https://github.com/csehatt741/keyshade/commit/122df351b551e88f0d854f6750faaef94f92e3de))
    * **api-client:** Create controller for Integration module ([#397](https://github.com/csehatt741/keyshade/issues/397)) ([697d38b](https://github.com/csehatt741/keyshade/commit/697d38bbd32d7c025c233fd1724a31d34e56e50c))
    * **api-client:** Create controller for Project module ([#370](https://github.com/csehatt741/keyshade/issues/370)) ([fa25866](https://github.com/csehatt741/keyshade/commit/fa25866cef5497620ab0af9ddc55d320c05050fe))
    * **api-client:** Create controller for Secret module ([#396](https://github.com/csehatt741/keyshade/issues/396)) ([7e929c0](https://github.com/csehatt741/keyshade/commit/7e929c08a2e97d5518efef7c7671aa52068702ca))
    * **api-client:** Create controller for User module ([#484](https://github.com/csehatt741/keyshade/issues/484)) ([f9d8e83](https://github.com/csehatt741/keyshade/commit/f9d8e83f14a0f697828a4d11db869f24a9314359))
    * **api-client:** Create controller for Variable module ([#395](https://github.com/csehatt741/keyshade/issues/395)) ([3e114d9](https://github.com/csehatt741/keyshade/commit/3e114d9407e9a7243b1a24514e07a0b8ac939223))
    * **api-client:** Get all workspace invitation ([#619](https://github.com/csehatt741/keyshade/issues/619)) ([8a23850](https://github.com/csehatt741/keyshade/commit/8a238505c8fd0c4c46c7fa6caf710e35c699ac42))
    * **api-client:** Synced with latest API ([27f4309](https://github.com/csehatt741/keyshade/commit/27f4309817b7736d273e9c3532af00e3ed73d943))
    * **api, schema:** Add preview field in API Key ([#680](https://github.com/csehatt741/keyshade/issues/680)) ([06d8c44](https://github.com/csehatt741/keyshade/commit/06d8c44c4e06d823cdb2a41cd482aace9cba8ec2))
    * **api,cli,api-client,schema:** Enhance permissions to allow filtering by environments through project roles ([#599](https://github.com/csehatt741/keyshade/issues/599)) ([030b539](https://github.com/csehatt741/keyshade/commit/030b53992d0f9901b6f0655f775e17178b788343))
    * **api:** Add `ADMIN` authority for API keys ([#609](https://github.com/csehatt741/keyshade/issues/609)) ([fb6aba7](https://github.com/csehatt741/keyshade/commit/fb6aba7148a7980d65657aa265dfb479a275bdb4))
    * **api:** Add `minio-client` provider ([#237](https://github.com/csehatt741/keyshade/issues/237)) ([cd71c5a](https://github.com/csehatt741/keyshade/commit/cd71c5aae15711ab7309069cf6416d0b25eed9e7))
    * **api:** Add `requireRestart` parameter ([#286](https://github.com/csehatt741/keyshade/issues/286)) ([fb447a1](https://github.com/csehatt741/keyshade/commit/fb447a1852a95dcacfdb0aa896fd1521430fa095))
    * **api:** Add configuration live update support ([#181](https://github.com/csehatt741/keyshade/issues/181)) ([f7d6684](https://github.com/csehatt741/keyshade/commit/f7d668449bfe84286ef973eb1751a2b6c377f2ba))
    * **api:** Add email template for inviting user to workspace ([#480](https://github.com/csehatt741/keyshade/issues/480)) ([f5ddf7a](https://github.com/csehatt741/keyshade/commit/f5ddf7a6b869868abcffba0ba71fb6d23851fbd1))
    * **api:** Add email template for sending OTP to the user ([#582](https://github.com/csehatt741/keyshade/issues/582)) ([cb6bbcb](https://github.com/csehatt741/keyshade/commit/cb6bbcbac97427286e3e149c211438ca77c7438e))
    * **api:** Add endpoint to fetch all workspace invitations for a user ([#586](https://github.com/csehatt741/keyshade/issues/586)) ([d45417a](https://github.com/csehatt741/keyshade/commit/d45417a21cb33705e927175b4e52aeb6d310b290))
    * **api:** add event ([#115](https://github.com/csehatt741/keyshade/issues/115)) ([19e6603](https://github.com/csehatt741/keyshade/commit/19e6603341fb7d4d0f752d1c3b3c02695f25ab25))
    * **api:** Add feature to export data of a workspace ([#152](https://github.com/csehatt741/keyshade/issues/152)) ([46833aa](https://github.com/csehatt741/keyshade/commit/46833aa8bd4362cfdf08817d2faaf2a8e8bdeb99))
    * **api:** Add feature to fork projects ([#239](https://github.com/csehatt741/keyshade/issues/239)) ([3bab653](https://github.com/csehatt741/keyshade/commit/3bab653eb801fa561cd9f3c7c375ba32dda00c36))
    * **api:** Add global search in workspace ([c49962b](https://github.com/csehatt741/keyshade/commit/c49962bf1f4441e95dbcbf1e10520f66c60496bb))
    * **api:** Add Integration support ([#203](https://github.com/csehatt741/keyshade/issues/203)) ([f1ae87e](https://github.com/csehatt741/keyshade/commit/f1ae87ecca47e74ab4897f6e5d1c2457abd18a51))
    * **api:** Add logout endpoint to clear token cookie ([#581](https://github.com/csehatt741/keyshade/issues/581)) ([27f81ba](https://github.com/csehatt741/keyshade/commit/27f81ba11ebee87713e1193b97a2ce64ef64d40c))
    * **api:** Add max page size ([#377](https://github.com/csehatt741/keyshade/issues/377)) ([ed18eb0](https://github.com/csehatt741/keyshade/commit/ed18eb0c846430f2263035431c851520f0cf6421))
    * **api:** Add note to [secure] and variable ([#151](https://github.com/csehatt741/keyshade/issues/151)) ([2e62351](https://github.com/csehatt741/keyshade/commit/2e6235104c6cfeb29889a3c9beee81b893b9a26d))
    * **api:** Add OAuth redirection and polished authentication ([#212](https://github.com/csehatt741/keyshade/issues/212)) ([d2968bc](https://github.com/csehatt741/keyshade/commit/d2968bc3122338599031f3671bbcd3a17b0b5129))
    * **api:** Add pagination metadata to Environment module ([#382](https://github.com/csehatt741/keyshade/issues/382)) ([9baa344](https://github.com/csehatt741/keyshade/commit/9baa344e662e8034ab184f9db2218b8d8b279c61))
    * **api:** Add pagination metadata to Event module ([#394](https://github.com/csehatt741/keyshade/issues/394)) ([60010b4](https://github.com/csehatt741/keyshade/commit/60010b434a15082b90b9b858e0dd9c09748661fb))
    * **api:** Add pagination metadata to Integration module ([#391](https://github.com/csehatt741/keyshade/issues/391)) ([0372e36](https://github.com/csehatt741/keyshade/commit/0372e3629d4d96df7d7263215f866ad8a3e70bc0))
    * **api:** Add pagination metadata to Project module ([#393](https://github.com/csehatt741/keyshade/issues/393)) ([bc274fd](https://github.com/csehatt741/keyshade/commit/bc274fdc241395c022fd6f209c0e951ab4c7694f))
    * **api:** Add pagination metadata to Secret module ([#389](https://github.com/csehatt741/keyshade/issues/389)) ([c4cc667](https://github.com/csehatt741/keyshade/commit/c4cc6676f566c6216ba2e196834aea164c682e51))
    * **api:** Add pagination metadata to Variable module ([#390](https://github.com/csehatt741/keyshade/issues/390)) ([be6aabf](https://github.com/csehatt741/keyshade/commit/be6aabfe218b039d65b62aa01518240487bb5836))
    * **api:** Add pagination metadata to Workspace module  ([#387](https://github.com/csehatt741/keyshade/issues/387)) ([a08c924](https://github.com/csehatt741/keyshade/commit/a08c924dbc52ea45e793d639170333f8824eae2c))
    * **api:** Add pagination metadata to Workspace Role module ([#388](https://github.com/csehatt741/keyshade/issues/388)) ([d8e8f49](https://github.com/csehatt741/keyshade/commit/d8e8f491d966cb794057536922c7469ed4f8f448))
    * **api:** Add prod env schema in env file ([#436](https://github.com/csehatt741/keyshade/issues/436)) ([21c3004](https://github.com/csehatt741/keyshade/commit/21c30045ce4c013c8ef15e828c3561ad0abfa897))
    * **api:** Add resend otp implementation ([#445](https://github.com/csehatt741/keyshade/issues/445)) ([4dc6aa1](https://github.com/csehatt741/keyshade/commit/4dc6aa169c51869bdda4cd0706b513f9af9716ed))
    * **api:** Add Sentry Integeration ([#133](https://github.com/csehatt741/keyshade/issues/133)) ([5ae2c92](https://github.com/csehatt741/keyshade/commit/5ae2c92648dffb5f957ac3fb17812bfb504ded4d))
    * **api:** Add slack integration ([#531](https://github.com/csehatt741/keyshade/issues/531)) ([fe124d8](https://github.com/csehatt741/keyshade/commit/fe124d817c9ff63e699c560ee97930ec52082b21))
    * **api:** Add slug in entities ([#415](https://github.com/csehatt741/keyshade/issues/415)) ([89e2fcc](https://github.com/csehatt741/keyshade/commit/89e2fccc390771c925ea9d1c4ede8270ec6e5a80))
    * **api:** Add support for storing and managing variables ([#149](https://github.com/csehatt741/keyshade/issues/149)) ([963a8ae](https://github.com/csehatt741/keyshade/commit/963a8ae529ddee8716b6a688e272dd635cfeaafd))
    * **api:** add user module ([ebfb2ec](https://github.com/csehatt741/keyshade/commit/ebfb2ec1fd17609fadbe63d56bd169ea21c893cf))
    * **api:** add workspace module ([504f0db](https://github.com/csehatt741/keyshade/commit/504f0db3d4363333251daa813843cc90dccdc067))
    * **api:** Add workspace removal notification email template ([#476](https://github.com/csehatt741/keyshade/issues/476)) ([40b754f](https://github.com/csehatt741/keyshade/commit/40b754f7d3acd8f49e9e9a070fc744c501c3136e))
    * **api:** Added feedback form module ([#210](https://github.com/csehatt741/keyshade/issues/210)) ([ae1efd8](https://github.com/csehatt741/keyshade/commit/ae1efd8a9a3437ed8d3955e6091f4f50d0596f39))
    * **api:** Added GitLab OAuth ([#188](https://github.com/csehatt741/keyshade/issues/188)) ([4d3bbe4](https://github.com/csehatt741/keyshade/commit/4d3bbe482e84025201e4a02b7da3ded4972fcd9a))
    * **api:** Added Project Level Access  ([#221](https://github.com/csehatt741/keyshade/issues/221)) ([564f5ed](https://github.com/csehatt741/keyshade/commit/564f5ed52672dc1e7c47c67c60af9cb142594a8a))
    * **api:** Added support for changing email of users ([#233](https://github.com/csehatt741/keyshade/issues/233)) ([5ea9a10](https://github.com/csehatt741/keyshade/commit/5ea9a10d1972cf6865faa0c051ed9de595eb6d47))
    * **api:** Added validation for reason field ([#190](https://github.com/csehatt741/keyshade/issues/190)) ([90b8ff2](https://github.com/csehatt741/keyshade/commit/90b8ff20fa47799bf7267ba45a3deae70f234d9e))
    * **api:** Create a paginate method ([#379](https://github.com/csehatt741/keyshade/issues/379)) ([09576f1](https://github.com/csehatt741/keyshade/commit/09576f130900ea8d89454332bef9353bfe09a0b2))
    * **api:** Create default workspace on user's creation ([#182](https://github.com/csehatt741/keyshade/issues/182)) ([3dc0c4c](https://github.com/csehatt741/keyshade/commit/3dc0c4c95b6dd0a484806fdf0757754ce58a7200))
    * **api:** Create endpoint for fetching all revisions of a [secure] ([#303](https://github.com/csehatt741/keyshade/issues/303)) ([de2b602](https://github.com/csehatt741/keyshade/commit/de2b602dcd5bdab104d910b12761a6ec778103b8))
    * **api:** Create endpoint for fetching all revisions of a variable ([#304](https://github.com/csehatt741/keyshade/issues/304)) ([9abddc1](https://github.com/csehatt741/keyshade/commit/9abddc11691146045e727078b3b963f8b9c2e990))
    * **api:** Fetch total count of environments, [secure]s and variables in project ([#434](https://github.com/csehatt741/keyshade/issues/434)) ([0c9e50a](https://github.com/csehatt741/keyshade/commit/0c9e50aaca91f236aab35570d6d3f4247409593a))
    * **api:** Included default workspace details in getSelf function ([#414](https://github.com/csehatt741/keyshade/issues/414)) ([e67bbd6](https://github.com/csehatt741/keyshade/commit/e67bbd6d37f01732bbfe65e17b71b2ba8202200b))
    * **api:** Reading `port` Dynamically ([#170](https://github.com/csehatt741/keyshade/issues/170)) ([fd46e3e](https://github.com/csehatt741/keyshade/commit/fd46e3e2d37bf90572d2c9c7ec0b042e644878e0))
    * **api:** Replace `projectId` with `name` and `slug` in workspace-role response.  ([#432](https://github.com/csehatt741/keyshade/issues/432)) ([af06071](https://github.com/csehatt741/keyshade/commit/af0607143aa59397c0d794bce722a8a65b1f359a))
    * **api:** Secret rotation ([#652](https://github.com/csehatt741/keyshade/issues/652)) ([ad9a808](https://github.com/csehatt741/keyshade/commit/ad9a808ac6819c34b67ee77a1c86cb87b962d411))
    * **api:** update workspace role mechanism and added functionality to create custom roles ([6144aea](https://github.com/csehatt741/keyshade/commit/6144aea23ea66cdc1fa7e29080e349d299154933))
    * **api:** Updated API key ([fbac312](https://github.com/csehatt741/keyshade/commit/fbac3120b4aa063119f3b09a2b61996fefb17143))
    * **api:** updated functionality of API key ([#114](https://github.com/csehatt741/keyshade/issues/114)) ([308fbf4](https://github.com/csehatt741/keyshade/commit/308fbf4c566bd00bac5e969a51b0d38ba89772d1))
    * **api:** Workspace-membership invitationAccepted included ([#665](https://github.com/csehatt741/keyshade/issues/665)) ([3877249](https://github.com/csehatt741/keyshade/commit/38772498be229c8d83c8a99c395dded9e0a6ef7f))
    * **auth:** Add Google OAuth ([#156](https://github.com/csehatt741/keyshade/issues/156)) ([cf387ea](https://github.com/csehatt741/keyshade/commit/cf387eade9fd72d6894bb5375d791bc722040f00))
    * AutoCreate Admin On Startup ([#101](https://github.com/csehatt741/keyshade/issues/101)) ([32fac3e](https://github.com/csehatt741/keyshade/commit/32fac3e669a6dd6353ed862a8cb367d184038968))
    * **cli:** Add CLI command to check version flag using `--version` or `-v` ([#650](https://github.com/csehatt741/keyshade/issues/650)) ([31b5efe](https://github.com/csehatt741/keyshade/commit/31b5efe10e1b5d32377b9a303d2177300b24add1))
    * **cli:** Add functionality to operate on Environments ([#324](https://github.com/csehatt741/keyshade/issues/324)) ([4c6f3f8](https://github.com/csehatt741/keyshade/commit/4c6f3f8ba20363f598bb85a76a9c1ebb7e849bce))
    * **cli:** Add functionality to operate on Secrets ([#504](https://github.com/csehatt741/keyshade/issues/504)) ([1b4bf2f](https://github.com/csehatt741/keyshade/commit/1b4bf2f6b89fa981e2a008f9b7e508b578c55a95))
    * **cli:** Add functionality to operate on Variables ([#514](https://github.com/csehatt741/keyshade/issues/514)) ([32d93e6](https://github.com/csehatt741/keyshade/commit/32d93e6146a87175674107319d918157dbcec6d3))
    * **cli:** Add functionality to operate on Workspace Membership ([#589](https://github.com/csehatt741/keyshade/issues/589)) ([0fde62b](https://github.com/csehatt741/keyshade/commit/0fde62b1925d6365483ce23339ac5a5c687aaa55))
    * **cli:** Add import sub commmand for project. ([#594](https://github.com/csehatt741/keyshade/issues/594)) ([9896f27](https://github.com/csehatt741/keyshade/commit/9896f2751f87c52aa143d1fc9430cbefd51faf1d))
    * **cli:** Add List-invitation command ([#633](https://github.com/csehatt741/keyshade/issues/633)) ([874f8c2](https://github.com/csehatt741/keyshade/commit/874f8c2a5b8149ba2fc15b1ab9f4ff922315c997))
    * **cli:** Add project command ([#451](https://github.com/csehatt741/keyshade/issues/451)) ([70448e1](https://github.com/csehatt741/keyshade/commit/70448e1fe9899994fca9b202e6a4ed355af45235))
    * **cli:** Add workspace operations ([#441](https://github.com/csehatt741/keyshade/issues/441)) ([ed38d22](https://github.com/csehatt741/keyshade/commit/ed38d2227020a08972658771d211fe2316f41367))
    * **cli:** Added CLI ([#289](https://github.com/csehatt741/keyshade/issues/289)) ([1143d95](https://github.com/csehatt741/keyshade/commit/1143d9547705808230b3cbcf81a3ff2a8604eaa2))
    * **cli:** Added keyshade command to cli ([cf260ae](https://github.com/csehatt741/keyshade/commit/cf260aebe7a99ff4dcd8874cb6e5c96434773da7))
    * **cli:** Api health probe ([#645](https://github.com/csehatt741/keyshade/issues/645)) ([dd854f4](https://github.com/csehatt741/keyshade/commit/dd854f46e2d7d48dd2ee3060622059baf339efd4))
    * **cli:** Create basic README.md ([a1b74e9](https://github.com/csehatt741/keyshade/commit/a1b74e9247b86540bf8026583fe5055e067f4b29))
    * **cli:** implement commands to get, list, update, and delete, workspace roles ([#469](https://github.com/csehatt741/keyshade/issues/469)) ([957ea8d](https://github.com/csehatt741/keyshade/commit/957ea8df4b3e34ece06c3a9c3a15e7aed3b58bfd))
    * **cli:** Implemented pagination support ([#453](https://github.com/csehatt741/keyshade/issues/453)) ([feb1806](https://github.com/csehatt741/keyshade/commit/feb1806e30ee609e06bb0254040414b775f55606))
    * **cli:** Improved the DX for list profile ([#334](https://github.com/csehatt741/keyshade/issues/334)) ([6bff496](https://github.com/csehatt741/keyshade/commit/6bff4964493f9919b221a5dc6fcc578bc47b2832))
    * **cli:** Log publicKey, privacyKey, & accessLevel after project creation ([#623](https://github.com/csehatt741/keyshade/issues/623)) ([5d5b329](https://github.com/csehatt741/keyshade/commit/5d5b3297b1fa4cb9ffeccf7c12e7c496347d90a2))
    * **cli:** Quit on decryption failure ([#381](https://github.com/csehatt741/keyshade/issues/381)) ([1349d15](https://github.com/csehatt741/keyshade/commit/1349d15b3879527876d41001bdb5d85c22d417ff))
    * **cli:** Secret scan ([#438](https://github.com/csehatt741/keyshade/issues/438)) ([85cb8ab](https://github.com/csehatt741/keyshade/commit/85cb8ab3e7e8f302c793408bddd24abf6e3b4b6a))
    * **cli:** Store `metrics_enabled` key in profile config ([#536](https://github.com/csehatt741/keyshade/issues/536)) ([9283b22](https://github.com/csehatt741/keyshade/commit/9283b22e4387a50ebf3e48ce64a3d6862bb0cc8b))
    * **cli:** Supports to specify environment(s) and its optional description ([#634](https://github.com/csehatt741/keyshade/issues/634)) ([62083b1](https://github.com/csehatt741/keyshade/commit/62083b12f4daa023348eb610de53e15a3c6fbb2d))
    * **cli:** Update environment command outputs ([f4af874](https://github.com/csehatt741/keyshade/commit/f4af874e4811a5c11bd93ad1645564b24513b5ad))
    * **cli:** update README with feature and installation ([#644](https://github.com/csehatt741/keyshade/issues/644)) ([a4d2a6a](https://github.com/csehatt741/keyshade/commit/a4d2a6a4c7d429c1de0acc15016b5db3ee49561b))
    * create user endpoint ([53913f5](https://github.com/csehatt741/keyshade/commit/53913f545aee2a87571cd9798cd4979b8b47cb4d))
    * dockerize api ([ce8ee23](https://github.com/csehatt741/keyshade/commit/ce8ee23769f0bbbf5b2517278f8d2ea1e58661c1))
    * dockerize api ([dfbc58e](https://github.com/csehatt741/keyshade/commit/dfbc58eaaa15f0529d00e1441c0f56d46a9c8ce0))
    * dockerize api ([63f0a27](https://github.com/csehatt741/keyshade/commit/63f0a2752885b39d13e596b35f70318f36004dc5))
    * dockerize api ([265cec0](https://github.com/csehatt741/keyshade/commit/265cec0f58a9efa5001528ac7e9f4f71be20f190))
    * dockerize api ([ed595c7](https://github.com/csehatt741/keyshade/commit/ed595c79e5739f6d15cd80a6f18d081587d55b34))
    * dockerize api ([6b756e8](https://github.com/csehatt741/keyshade/commit/6b756e8c70388057823e3ef05ae72a059da84e9c))
    * finish environment module ([aaf6783](https://github.com/csehatt741/keyshade/commit/aaf67834298bd6b4836686c4342dc75cce63d1cf))
    * husky configured ([77bba02](https://github.com/csehatt741/keyshade/commit/77bba023c52c871b9a54499cdbc72b67c5438e4f))
    * implemented auth, ui for most, and fixed cors ([#217](https://github.com/csehatt741/keyshade/issues/217)) ([feace86](https://github.com/csehatt741/keyshade/commit/feace865d60442fea96b5074e16d0d0f48792aa9))
    * invalidate older OTPs ([8ca222a](https://github.com/csehatt741/keyshade/commit/8ca222aedd6e4532a498a8b70d837095cfd53a68))
    * landing page ([e1ec4d1](https://github.com/csehatt741/keyshade/commit/e1ec4d171e184d381efb0768d9a3deadb92d5dba))
    * **nx-cloud:** setup nx workspace ([#108](https://github.com/csehatt741/keyshade/issues/108)) ([cb61d45](https://github.com/csehatt741/keyshade/commit/cb61d458519ff7b06c87e2a9ac99d2109e934895))
    * **oauth:** add github oauth ([5b930a1](https://github.com/csehatt741/keyshade/commit/5b930a19dd98b77616b8023c30f2c8c18eec8b8b))
    * **oauth:** get 'name' and 'avatar' of the user ([20e8dbf](https://github.com/csehatt741/keyshade/commit/20e8dbf081aa8948f71fb7cf999125cb175f4bc2))
    * **package, api, cli:** Add api-key schemas and types; Fix schema inconsistencies; Minor fix for CLI build errors  ([#557](https://github.com/csehatt741/keyshade/issues/557)) ([126d024](https://github.com/csehatt741/keyshade/commit/126d0242b2d975c8e5a7a4eed185f090019b31fa))
    * **platform:** Add a new [secure] and added loader on project screen ([#603](https://github.com/csehatt741/keyshade/issues/603)) ([c3a08cc](https://github.com/csehatt741/keyshade/commit/c3a08ccb9f653671b7200b9e0429257a5e517f72))
    * **platform:** Add CopySVG icon to the Slug component and update imports ([#677](https://github.com/csehatt741/keyshade/issues/677)) ([2ad93ba](https://github.com/csehatt741/keyshade/commit/2ad93baa24e256aafdbeed9d0ee9b268d4781aa4))
    * **platform:** Add Google OAuth ([#689](https://github.com/csehatt741/keyshade/issues/689)) ([ad3a3d2](https://github.com/csehatt741/keyshade/commit/ad3a3d2d94a77fcd5c0d1b3b48564a298d510f4a))
    * **platform:** Add loading skeleton in the [secure]s page ([#423](https://github.com/csehatt741/keyshade/issues/423)) ([a97681e](https://github.com/csehatt741/keyshade/commit/a97681edab4ffb670b4479e3a8d2d2879c75f992))
    * **platform:** Add new access level SVGs and integrate into ProjectCard component ([#678](https://github.com/csehatt741/keyshade/issues/678)) ([cc3ef77](https://github.com/csehatt741/keyshade/commit/cc3ef77b93054e44fc5de01e12ef9d0d707a0a14))
    * **platform:** Add new design for slug ([#675](https://github.com/csehatt741/keyshade/issues/675)) ([2b8985c](https://github.com/csehatt741/keyshade/commit/2b8985c4725dbf062dc66acf560f8433ce5d87dc))
    * **platform:** Add new variables to a project ([#593](https://github.com/csehatt741/keyshade/issues/593)) ([d6c6252](https://github.com/csehatt741/keyshade/commit/d6c6252f471e839b36ee2adeb674b08f99035941))
    * **platform:** Add roles tab in sidebar ([#749](https://github.com/csehatt741/keyshade/issues/749)) ([bbe4366](https://github.com/csehatt741/keyshade/commit/bbe4366c3131ea2991cbde32454b39e02c45c4c9))
    * **platform:** Add SVGs to projectTabs ([#673](https://github.com/csehatt741/keyshade/issues/673)) ([37bfddf](https://github.com/csehatt741/keyshade/commit/37bfddfc993aa76b4688ac1b8693d0bad25809a4))
    * **platform:** Add warning sonner toast for invalid otp ([#335](https://github.com/csehatt741/keyshade/issues/335)) ([21513f5](https://github.com/csehatt741/keyshade/commit/21513f5be6d36b308cd5926e7ad1b475f96cb668))
    * **platform:** Add workspace slug for projects in url ([#683](https://github.com/csehatt741/keyshade/issues/683)) ([8bdd47f](https://github.com/csehatt741/keyshade/commit/8bdd47fb71e902fcaf2558356be0b35bb79c7151))
    * **platform:** Added screen for CREATE NEW PROJECT ([#540](https://github.com/csehatt741/keyshade/issues/540)) ([b644633](https://github.com/csehatt741/keyshade/commit/b64463384d71e7eb246645bbfb6c2a3159baeb50))
    * **platform:** Added the feature for deleting a [secure] ([#674](https://github.com/csehatt741/keyshade/issues/674)) ([37e7960](https://github.com/csehatt741/keyshade/commit/37e796080fe426b69333b134db4031ba2849e401))
    * **platform:** Clearing email field after waitlisting the user email ([#481](https://github.com/csehatt741/keyshade/issues/481)) ([256d659](https://github.com/csehatt741/keyshade/commit/256d65974babd17d525ce2a41a5e17136e6ac12e))
    * **platform:** Create ui link for resend otp ([#489](https://github.com/csehatt741/keyshade/issues/489)) ([46eb5c5](https://github.com/csehatt741/keyshade/commit/46eb5c5aeee76f60015e65174e9cb9ea97f5e771))
    * **platform:** Delete variable from a project ([#600](https://github.com/csehatt741/keyshade/issues/600)) ([e64a738](https://github.com/csehatt741/keyshade/commit/e64a7388451da7a675700d076b9d2554a3ac2435))
    * **platform:** Edit existing variables in a project ([#602](https://github.com/csehatt741/keyshade/issues/602)) ([bb48f6c](https://github.com/csehatt741/keyshade/commit/bb48f6c6a1534040a0e6ad9099ff436e7cc83b80))
    * **platform:** Edit [secure] in project ([#684](https://github.com/csehatt741/keyshade/issues/684)) ([1e34030](https://github.com/csehatt741/keyshade/commit/1e340302bc34ec061683a4af1ee0da178f59aef0))
    * **platform:** Implement delete project ([#671](https://github.com/csehatt741/keyshade/issues/671)) ([d243c89](https://github.com/csehatt741/keyshade/commit/d243c89be2358f104ad893b5c955d814835aa8e8))
    * **platform:** Improved UI of [secure] listing ([#655](https://github.com/csehatt741/keyshade/issues/655)) ([b19de47](https://github.com/csehatt741/keyshade/commit/b19de47bdbe5c098fd2c256d4d9b65989498786c))
    * **platform:** Operate on environments ([#670](https://github.com/csehatt741/keyshade/issues/670)) ([f45c5fa](https://github.com/csehatt741/keyshade/commit/f45c5fa81728832f6ff74c5c26d52e00e32fb546))
    * **platform:** Restructure workspace settings and user settings ([#682](https://github.com/csehatt741/keyshade/issues/682)) ([cd0013a](https://github.com/csehatt741/keyshade/commit/cd0013ade20f224bf9db24ef7431810c142be6b3))
    * **platform:** Show all the existing variables inside a project ([#591](https://github.com/csehatt741/keyshade/issues/591)) ([5276bb8](https://github.com/csehatt741/keyshade/commit/5276bb8bcd104ffdfd979ebdbd46eb155979e521))
    * **platform:** Update table ui and change variable to accordion ([#676](https://github.com/csehatt741/keyshade/issues/676)) ([71e9ae9](https://github.com/csehatt741/keyshade/commit/71e9ae91b6067a18f144eea3e06f06a97fb73457))
    * **platform:** Updated the empty state of dashboard ([#522](https://github.com/csehatt741/keyshade/issues/522)) ([28739d9](https://github.com/csehatt741/keyshade/commit/28739d96c1f5857de0be3a9c6f1d800559d04754))
    * **platform:** View [secure]s ([#313](https://github.com/csehatt741/keyshade/issues/313)) ([97c4541](https://github.com/csehatt741/keyshade/commit/97c45414d4a3e456170369c07d4f936f06189c7a))
    * **platform:** Workspace integrate ([#241](https://github.com/csehatt741/keyshade/issues/241)) ([6107e7d](https://github.com/csehatt741/keyshade/commit/6107e7dd14c1e167a1a12f1c4b189e73f01dde88))
    * **platfrom:** add delete method in api client ([#225](https://github.com/csehatt741/keyshade/issues/225)) ([55cf09f](https://github.com/csehatt741/keyshade/commit/55cf09f7d9c977b7ab5e1a832ea82fd94b7f9984))
    * **platofrm:** Added online/offline status detection in the platform ([#585](https://github.com/csehatt741/keyshade/issues/585)) ([89aa84f](https://github.com/csehatt741/keyshade/commit/89aa84f151eed76ec9ec4c9c224be5d39c2e3b0c))
    * **postman:** add example for get_self and update_self ([e015acf](https://github.com/csehatt741/keyshade/commit/e015acfdca0f694898f27d49ffd447b70faee215))
    * **project:** Edit project feature ([#685](https://github.com/csehatt741/keyshade/issues/685)) ([a906920](https://github.com/csehatt741/keyshade/commit/a9069200d02cb7555ce5265b462d3cffe3a65f0a))
    * Remove project IDs from workspace role export data and update tests ([#448](https://github.com/csehatt741/keyshade/issues/448)) ([8fdb328](https://github.com/csehatt741/keyshade/commit/8fdb3286876eaddd1f1a32cd18762827a736589a))
    * responsive landing ([97bbb0c](https://github.com/csehatt741/keyshade/commit/97bbb0cb42c3b89fd1c9aede9e4d87a215aab7cf))
    * **schema, api-client:** Migrate auth types to @keyshade/schema ([#532](https://github.com/csehatt741/keyshade/issues/532)) ([d880098](https://github.com/csehatt741/keyshade/commit/d8800989185709fd75f6b7a100de248faaf32156))
    * **schema, api-client:** Migrate event schemas and types to @keyshade/schema ([#546](https://github.com/csehatt741/keyshade/issues/546)) ([a3267de](https://github.com/csehatt741/keyshade/commit/a3267dec679d6a76735443ee9332860a0a69196a))
    * **schema, api-client:** Migrate integration schemas and types to @keyshade/schema ([#547](https://github.com/csehatt741/keyshade/issues/547)) ([08868c3](https://github.com/csehatt741/keyshade/commit/08868c3026f7952c8ac6016809e5f7275ec57c07))
    * **schema, api-client:** Migrate project schemas and environment schemas along with their types to @keyshade/schema ([#538](https://github.com/csehatt741/keyshade/issues/538)) ([c468af0](https://github.com/csehatt741/keyshade/commit/c468af00b8b64a10daed5848ce3b200974b1adc3))
    * **schema, api-client:** Migrate [secure] types and schemas to @keyshade/schema ([#539](https://github.com/csehatt741/keyshade/issues/539)) ([bc3100b](https://github.com/csehatt741/keyshade/commit/bc3100b37fb32394d2dba9578993f18e5ba171b4))
    * **schema, api-client:** Migrate user types and schemas to @keyshade/schema ([#535](https://github.com/csehatt741/keyshade/issues/535)) ([c24695e](https://github.com/csehatt741/keyshade/commit/c24695e44ad65405075381628dfcc5f7b4fe0340))
    * **schema, api-client:** Migrate variable schemas and types to @keyshade/schema ([#545](https://github.com/csehatt741/keyshade/issues/545)) ([0ee8f9a](https://github.com/csehatt741/keyshade/commit/0ee8f9a1f8ff1bfc04e9ff7a0eccd0309627159a))
    * **schema, api-client:** Migrate workspace-membership schemas and types to @keyshade/schema ([#569](https://github.com/csehatt741/keyshade/issues/569)) ([4398969](https://github.com/csehatt741/keyshade/commit/4398969a48d4f6863ca872dcc7230048e14b45ac))
    * **schema, api-client:** Migrate workspace-role schemas and types to @keyshade/schema ([#568](https://github.com/csehatt741/keyshade/issues/568)) ([9efbf2d](https://github.com/csehatt741/keyshade/commit/9efbf2d6347670cb2ad1a670384e4b458475ca4c))
    * **schema:** Add User type inference from UserSchema ([#574](https://github.com/csehatt741/keyshade/issues/574)) ([84c1db5](https://github.com/csehatt741/keyshade/commit/84c1db55bf3e20af15221929aea7ac6dff4178b3))
    * **schema:** Add workspace invitation schema ([#612](https://github.com/csehatt741/keyshade/issues/612)) ([1a5721b](https://github.com/csehatt741/keyshade/commit/1a5721b7fa129c56e9487982ffe92daeb3121715))
    * **schema:** Added a schema package ([01ea232](https://github.com/csehatt741/keyshade/commit/01ea232a9d1bc51a0b0cae3fd6edd378b88a5755))
    * Update details in listing [secure]s ([#686](https://github.com/csehatt741/keyshade/issues/686)) ([84aa5f4](https://github.com/csehatt741/keyshade/commit/84aa5f46083826ce9f84752f5abae0a61da7f90e))
    * Variables listing revamp ([#735](https://github.com/csehatt741/keyshade/issues/735)) ([38b42fa](https://github.com/csehatt741/keyshade/commit/38b42fadb791871f48dfbd3527e9b81cdbb36d1c))
    * **web:** Add and link privacy and tnc page ([#226](https://github.com/csehatt741/keyshade/issues/226)) ([ec81eb9](https://github.com/csehatt741/keyshade/commit/ec81eb919d9370ff3772ed2732f30a0f9ac74be8))
    * **web:** Add Google Analytics integration ([#649](https://github.com/csehatt741/keyshade/issues/649)) ([397d6da](https://github.com/csehatt741/keyshade/commit/397d6da505fd08e0b82852e89cad17a3afa5424c))
    * **web:** Add Pricing Page ([#243](https://github.com/csehatt741/keyshade/issues/243)) ([2c7f1d6](https://github.com/csehatt741/keyshade/commit/2c7f1d6171ac0563a13279676ddaf3d098855fee))
    * **web:** Added waitlist ([#168](https://github.com/csehatt741/keyshade/issues/168)) ([1084c77](https://github.com/csehatt741/keyshade/commit/1084c772199382ee56cb3c515032ae1cc05d211b))
    * **web:** Configured extra check for waitlisted users already in the list and created toast message for them ([#492](https://github.com/csehatt741/keyshade/issues/492)) ([2ddd0ef](https://github.com/csehatt741/keyshade/commit/2ddd0ef59cd1f178059a815d156c73ff6662bd41))
    * **web:** Landing revamp ([#165](https://github.com/csehatt741/keyshade/issues/165)) ([0bc723b](https://github.com/csehatt741/keyshade/commit/0bc723b5c71f7db0c2ab6e99a6ffe5e49cfd0e3d))
    * **web:** show the toast only when email add successfully ([#490](https://github.com/csehatt741/keyshade/issues/490)) ([783c411](https://github.com/csehatt741/keyshade/commit/783c4119ebddce6b1e934b1e25ae3e667a0519d6))
    * **web:** Update about and careers page ([e167f53](https://github.com/csehatt741/keyshade/commit/e167f537bca0218eb071b42e31d963e9852e2885))
    * **workflows:** Tag user on attempt's reply body ([9d01698](https://github.com/csehatt741/keyshade/commit/9d0169881d9ba7a0d84cee6d4de0e5e9c7c1e6ad))
    
    ### 🐛 Bug Fixes
    
    * Added lockfile ([856eb3c](https://github.com/csehatt741/keyshade/commit/856eb3c1446752b3312854e3b63b60cff223140c))
    * **api-client:** Fixed broken export ([096df2c](https://github.com/csehatt741/keyshade/commit/096df2c4971570d093885f9be2392b14c65c4e7f))
    * **api,api-client:** Add environmentSlug in multiple places across the [secure] module ([#509](https://github.com/csehatt741/keyshade/issues/509)) ([ee58f07](https://github.com/csehatt741/keyshade/commit/ee58f071e30c24f12cd657c11e24e01f8a648a93))
    * **api,api-client:** Add environmentSlug in multiple places across the variable module ([#468](https://github.com/csehatt741/keyshade/issues/468)) ([d970aff](https://github.com/csehatt741/keyshade/commit/d970aff1e08a3e4b2bd9bce671c75bafd536a686))
    * **api:** Add NotFound exception on passing an invalid roleId while inviting user in workspace ([#408](https://github.com/csehatt741/keyshade/issues/408)) ([ab441db](https://github.com/csehatt741/keyshade/commit/ab441dbd3f60f2deae36465653c7665296c453d7))
    * **api:** addressed logical errors ([fc14179](https://github.com/csehatt741/keyshade/commit/fc14179b2186711a79c4e6fc025fac2b82588fbc))
    * **api:** Convert email to lowercase ([#694](https://github.com/csehatt741/keyshade/issues/694)) ([b41db33](https://github.com/csehatt741/keyshade/commit/b41db33045091a47afcda0278884caeaffebfccc))
    * **api:** Empty name `""` accepted as a valid name while creating environments ([#583](https://github.com/csehatt741/keyshade/issues/583)) ([a33f4b5](https://github.com/csehatt741/keyshade/commit/a33f4b546db772362e1979845e3e0f0f3f6c175c))
    * **api:** Enable global project access ([#580](https://github.com/csehatt741/keyshade/issues/580)) ([b3a0309](https://github.com/csehatt741/keyshade/commit/b3a0309e3eb902d722672a42837da05874851971))
    * **api:** Error messages fixed in api-key service ([#418](https://github.com/csehatt741/keyshade/issues/418)) ([edfbce0](https://github.com/csehatt741/keyshade/commit/edfbce068dc0c3d23a92ce3a9d69c06f8457b7d8))
    * **api:** Github OAuth redirect not working ([#692](https://github.com/csehatt741/keyshade/issues/692)) ([3495f8a](https://github.com/csehatt741/keyshade/commit/3495f8ad425018e49bb1d85ada76e13594709b99))
    * **api:** Incorrect oauth redirect url ([58d96e5](https://github.com/csehatt741/keyshade/commit/58d96e524a6676fe61cd15b5cfe64deff74e6e45))
    * **api:** Only user's default workspace returns isDefault: true ([#647](https://github.com/csehatt741/keyshade/issues/647)) ([870b4dc](https://github.com/csehatt741/keyshade/commit/870b4dc7b68f57fbd09a51099f701a57fb0c998d))
    * **api:** Project hard sync existing entities deleted ([#660](https://github.com/csehatt741/keyshade/issues/660)) ([3632217](https://github.com/csehatt741/keyshade/commit/36322175290723089b8bd9a1a479925efd00f6f1))
    * **api:** removed api-keys.types.ts ([2b5b1f8](https://github.com/csehatt741/keyshade/commit/2b5b1f8b5ff4b8e13e2b4cfa918e6f6a9a7c2086))
    * **api:** Replace the id with slug in the global-search service ([#455](https://github.com/csehatt741/keyshade/issues/455)) ([74804b1](https://github.com/csehatt741/keyshade/commit/74804b13f33e95af8b69e38fbf4afc9d1f179ebc))
    * **api:** Secrets with empty names ([#738](https://github.com/csehatt741/keyshade/issues/738)) ([5e9c57f](https://github.com/csehatt741/keyshade/commit/5e9c57fce1122289d2ee3cea1b9baae4f1c8ed11))
    * **api:** Update build command ([0ddfa59](https://github.com/csehatt741/keyshade/commit/0ddfa5964b2b64286d055692e3005236a18ec8a6))
    * **api:** Update CORS settings ([4597eea](https://github.com/csehatt741/keyshade/commit/4597eea04998619f95d96a591f1e8206be5fa64b))
    * **api:** update role based access ([5e3456c](https://github.com/csehatt741/keyshade/commit/5e3456cf40ae8a9befa7dba8a9a59be6b95cefb1))
    * **cli:** Add keywords for improved package discoverability ([#641](https://github.com/csehatt741/keyshade/issues/641)) ([57ce10b](https://github.com/csehatt741/keyshade/commit/57ce10bff848b6efe596b50fc18bf0d357e61aab))
    * **cli:** Added parent directory check ([#359](https://github.com/csehatt741/keyshade/issues/359)) ([538ea7f](https://github.com/csehatt741/keyshade/commit/538ea7f2654e4f3ea06fde9fe653342ca769ce44))
    * **cli:** Check for .keyshade dir if profile isn't found ([#636](https://github.com/csehatt741/keyshade/issues/636)) ([a69665d](https://github.com/csehatt741/keyshade/commit/a69665d38b38d0f4db6aaa5cb9f0ad81d883d05b))
    * **cli:** Create project --store-private-key option default value removed ([#638](https://github.com/csehatt741/keyshade/issues/638)) ([20f16c6](https://github.com/csehatt741/keyshade/commit/20f16c64cbffe51b411458c294147a1fd0d83354))
    * **cli:** Fixed binary path in package.json ([e531af0](https://github.com/csehatt741/keyshade/commit/e531af0923e99fd79a39004017cabfc1fc1c4abd))
    * **cli:** Fixed binary path in package.json ([81d674d](https://github.com/csehatt741/keyshade/commit/81d674dd1bd332cd70effac25beb3ee7bd939a57))
    * **cli:** Fixed missing module ([f7a091f](https://github.com/csehatt741/keyshade/commit/f7a091ff21ddef89d12b0208bba5e38e1549ffe6))
    * **cli:** Incorrect message on listing projects ([#624](https://github.com/csehatt741/keyshade/issues/624)) ([eeffa42](https://github.com/csehatt741/keyshade/commit/eeffa428b0d5c429d5e1dc0353ca210c547b2fa5))
    * **cli:** Module errors ([d3432c5](https://github.com/csehatt741/keyshade/commit/d3432c5b5f35b695f44309ef3c03bf0a0d9168c2))
    * **cli:** Module errors ([a639065](https://github.com/csehatt741/keyshade/commit/a6390658abef8d4f50c24be66a8b10e9827e51da))
    * **cli:** Module errors ([a7742b1](https://github.com/csehatt741/keyshade/commit/a7742b19bf80e03b299419032f197de7f73d112a))
    * **cli:** Module errors ([e96300e](https://github.com/csehatt741/keyshade/commit/e96300e8cf4d3d80e6b556a6bcb247b3c73dcb87))
    * **cli:** Profile name now can use - and _ and updated error message ([#639](https://github.com/csehatt741/keyshade/issues/639)) ([00dd66a](https://github.com/csehatt741/keyshade/commit/00dd66a7b712d1a2a73b69b5fd016f46a3b9f3e9))
    * **cli:** Prompt users for all values if no option set and show default values ([#640](https://github.com/csehatt741/keyshade/issues/640)) ([fe862ab](https://github.com/csehatt741/keyshade/commit/fe862abe46b64d880124b81318c39c15254dd658))
    * **cli:** Removed unnecessary console log in [secure]s ([#515](https://github.com/csehatt741/keyshade/issues/515)) ([9403cc4](https://github.com/csehatt741/keyshade/commit/9403cc4a0147528815244fa425534c70156d5dad))
    * **cli:** Version flag causing errors ([#679](https://github.com/csehatt741/keyshade/issues/679)) ([65bb70b](https://github.com/csehatt741/keyshade/commit/65bb70b118f643a3079ece64c8b6ffd7949b8e95))
    * **cli:** Workspace membership API client payload fixed ([#614](https://github.com/csehatt741/keyshade/issues/614)) ([#648](https://github.com/csehatt741/keyshade/issues/648)) ([e23057b](https://github.com/csehatt741/keyshade/commit/e23057b382f0f0d407a9d457876868b9cc39dda1))
    * **docker:** Update build script ([40ef3e2](https://github.com/csehatt741/keyshade/commit/40ef3e24933315c1ec4e264d900148228f170432))
    * fix syntax error in auto-assign.yaml ([e59d410](https://github.com/csehatt741/keyshade/commit/e59d410f714d89daf53f7e99fd7b1ce30a67e059))
    * indendation errors ([8212d59](https://github.com/csehatt741/keyshade/commit/8212d591df508605d011ce0ad7e4c14162351d16))
    * issue auto assign cannot read properties of undefined assignees ([0ecc749](https://github.com/csehatt741/keyshade/commit/0ecc7494dade74d8ad59da25a73430564808f013))
    * **landing-page:** Make mobile responsive ([3fd5a1d](https://github.com/csehatt741/keyshade/commit/3fd5a1d51671483089da6c6390720d80798f8373)), closes [#41](https://github.com/csehatt741/keyshade/issues/41)
    * **landing-page:** Make mobile responsive ([0596473](https://github.com/csehatt741/keyshade/commit/0596473718a6b46e8bbad1b46340a44cbbe33bd9)), closes [#41](https://github.com/csehatt741/keyshade/issues/41)
    * **landing-page:** Make mobile responsive  ([2afaf0d](https://github.com/csehatt741/keyshade/commit/2afaf0dda9d164f4c3a1ed05630a1aa45acf5cda)), closes [#41](https://github.com/csehatt741/keyshade/issues/41)
    * made images not selectable and undraggable ([b8c200e](https://github.com/csehatt741/keyshade/commit/b8c200e7ac33b201a552ca128f6de0938b316313))
    * Merge main and made a small fix ([89b0d71](https://github.com/csehatt741/keyshade/commit/89b0d7181abb198404d37e5f8aabce51d7849e30))
    * nx run dev:api failing due to DI error ([81c63ca](https://github.com/csehatt741/keyshade/commit/81c63ca8c89e0dba801167f0216bb4a8b0b79599))
    * **platform:**  Build failure in platform ([#385](https://github.com/csehatt741/keyshade/issues/385)) ([90dcb2c](https://github.com/csehatt741/keyshade/commit/90dcb2c6f6cb3d89705f4374e66a7f1dc098b0c2))
    * **platform:** Adjust grid layout for environment cards ([#724](https://github.com/csehatt741/keyshade/issues/724)) ([029d3da](https://github.com/csehatt741/keyshade/commit/029d3da61afd70527cd9a561d4d35c86f68ca988))
    * **platform:** Check if `Env. Name` is left empty ([#646](https://github.com/csehatt741/keyshade/issues/646)) ([5f3fac8](https://github.com/csehatt741/keyshade/commit/5f3fac830e3ef341ae239080ce09b67f1a6e0fc6))
    * **platform:** Clickable Workspaces combobox options ([#630](https://github.com/csehatt741/keyshade/issues/630)) ([acc96f7](https://github.com/csehatt741/keyshade/commit/acc96f77123889df0af6d453af7da52d288a3a13))
    * **platform:** ContextMenu not working on variable card ([#688](https://github.com/csehatt741/keyshade/issues/688)) ([fbb147a](https://github.com/csehatt741/keyshade/commit/fbb147a9be27d0510112789fd0e7eaaa4db96083))
    * **platform:** Fixed duplicate Google Logo UI fix  ([#450](https://github.com/csehatt741/keyshade/issues/450)) ([fb0d6f7](https://github.com/csehatt741/keyshade/commit/fb0d6f7fff7814fb7df8cfbd967e1bf469cd6ee3))
    * **platform:** Fixed the typo in query params ([#723](https://github.com/csehatt741/keyshade/issues/723)) ([6c6bb7f](https://github.com/csehatt741/keyshade/commit/6c6bb7f6f20c0110c3f4e94d120a61cdad60b847))
    * **platform:** Follow-up for remaining changes from PR [#724](https://github.com/csehatt741/keyshade/issues/724) ([#736](https://github.com/csehatt741/keyshade/issues/736)) ([271c561](https://github.com/csehatt741/keyshade/commit/271c561b155d7b4c18c5059a33688f8b3e182e7c))
    * **platform:** Optimized user update request body ([#605](https://github.com/csehatt741/keyshade/issues/605)) ([ee1adf0](https://github.com/csehatt741/keyshade/commit/ee1adf0899ef7f15553b2b38aa4c1d51afa4a3d0))
    * **platform:** Platform types fixes ([#374](https://github.com/csehatt741/keyshade/issues/374)) ([8e9d9ff](https://github.com/csehatt741/keyshade/commit/8e9d9ffac0af1f93bb5513bf94aa3a75fb3c31c6))
    * **platform:** Refactor layout structure to improve Navbar positioning & child component ([#661](https://github.com/csehatt741/keyshade/issues/661)) ([31067f3](https://github.com/csehatt741/keyshade/commit/31067f309914fc8cd4ac2c1b854e4d8039af5494))
    * **platform:** Resolve loading SVG blocking input field interaction ([#571](https://github.com/csehatt741/keyshade/issues/571)) ([30f4f65](https://github.com/csehatt741/keyshade/commit/30f4f656eb686b0ca8879cb18560069dbeaad8a6))
    * **platform:** Type error in navbar ([8199de8](https://github.com/csehatt741/keyshade/commit/8199de84a1028128cb033287dbc8304c68ac12ad))
    * **Platfrom:** Replace manual date calculation with dayjs to improve better calculation ([#668](https://github.com/csehatt741/keyshade/issues/668)) ([990eb86](https://github.com/csehatt741/keyshade/commit/990eb86aa5bdeb911c3907df6ea7b52c510e64ad))
    * **README:** Update Discord badge ([6f9382e](https://github.com/csehatt741/keyshade/commit/6f9382ee7bdd9aa8f62ca4fa7307f2e77ed77e8c))
    * remove hardcoded email from adminUserCreateEmail mail function ([b2b9a9e](https://github.com/csehatt741/keyshade/commit/b2b9a9ed87ec999f4d428b819d44f3b129fe4c5d))
    * remove pnpm-lock as it is causing issues in pnpm install ([d3b54d8](https://github.com/csehatt741/keyshade/commit/d3b54d85d9a2c576c3b5964a939538e2dcae33fb))
    * resolve footer website name cut-off or overlap issue ([#444](https://github.com/csehatt741/keyshade/issues/444)) ([fe03ba2](https://github.com/csehatt741/keyshade/commit/fe03ba22aa37741646e48738e4ff3117ee5217db))
    * resolved merge conflict ([7ff7afb](https://github.com/csehatt741/keyshade/commit/7ff7afbd97665bee359399d18f6b6560206fed87))
    * **schema:** Add versions field to project [secure]s and variables response ([#590](https://github.com/csehatt741/keyshade/issues/590)) ([755ea46](https://github.com/csehatt741/keyshade/commit/755ea464835f4929b0cdee840da5be1a1a826ba4))
    * typo ([587f06b](https://github.com/csehatt741/keyshade/commit/587f06b4f0497df22cc5a453c8db13fe0c53f2ef))
    * Update discord link in README.md ([c7e4b5a](https://github.com/csehatt741/keyshade/commit/c7e4b5aac24e04a181a1ab21bad9417cf814c7e4))
    * update lockfile ([b6f6e80](https://github.com/csehatt741/keyshade/commit/b6f6e80b66f8531e9bacce8876bfe3d9ec67fb75))
    * update pnpm scripts ([e73a877](https://github.com/csehatt741/keyshade/commit/e73a87769d235f9c61e5f69d9e0ec73bb4f3eaad))
    * update web workflow ([add46dd](https://github.com/csehatt741/keyshade/commit/add46ddd6fc01f4a9202e4b4adb52e847e18d39f))
    * **web:** alignment issue in “Collaboration made easy” section ([#178](https://github.com/csehatt741/keyshade/issues/178)) ([df5ca75](https://github.com/csehatt741/keyshade/commit/df5ca75471e7bdf611406d76b276e05fccb36db0))
    * **web:** docker next config not found ([#228](https://github.com/csehatt741/keyshade/issues/228)) ([afe3160](https://github.com/csehatt741/keyshade/commit/afe3160d5c25db863e40000d2c4b82ccb82978aa))
    * **web:** Horizontal Scrolling issue on the website ([#440](https://github.com/csehatt741/keyshade/issues/440)) ([655177b](https://github.com/csehatt741/keyshade/commit/655177b47bffbc6892db3c701ddafe676e772f3e))
    * **web:** Resolve encryption glitch in footer text  ([#267](https://github.com/csehatt741/keyshade/issues/267)) ([2b5cb39](https://github.com/csehatt741/keyshade/commit/2b5cb39351d7412002514fd5a7ee6f75e02006aa))
    * **workspace:** delete duplicate tailwind config ([99d922a](https://github.com/csehatt741/keyshade/commit/99d922ac185474435303efd4613daeb251de4bf4))
    
    ### 📚 Documentation
    
    * Add CHANGELOG.md ([184220e](https://github.com/csehatt741/keyshade/commit/184220e511016d8762fa587375b6a1fa3c651062))
    * add contributor list ([f37569a](https://github.com/csehatt741/keyshade/commit/f37569a21091e5cd4b982b588096cc9e116e33a9))
    * add docs folder ([e252d68](https://github.com/csehatt741/keyshade/commit/e252d688357c8bcb0cb4c7d360edca6f2957a945))
    * Add documentation for environment in CLI ([#462](https://github.com/csehatt741/keyshade/issues/462)) ([dad7394](https://github.com/csehatt741/keyshade/commit/dad7394a16c8f98845c0423be0ff9f6d5560343f))
    * Add documentation for project in CLI ([#466](https://github.com/csehatt741/keyshade/issues/466)) ([341fb32](https://github.com/csehatt741/keyshade/commit/341fb32ada96513e6746e7d9df41892b8e1c7929))
    * Add documentation for scan in CLI ([#461](https://github.com/csehatt741/keyshade/issues/461)) ([72281e6](https://github.com/csehatt741/keyshade/commit/72281e66569b05011a7b79a94ae502eaac0b3a6d))
    * Add documentation for workspace command ([#464](https://github.com/csehatt741/keyshade/issues/464)) ([4aad8a2](https://github.com/csehatt741/keyshade/commit/4aad8a2d69c14dc933cfb6fe96ba506db54baa92))
    * Add getting-started.md ([617c346](https://github.com/csehatt741/keyshade/commit/617c3460f6debf6f08bddc38010dc62a7e13b59a))
    * Add instructions for resetting the local Prisma database ([#495](https://github.com/csehatt741/keyshade/issues/495)) ([#501](https://github.com/csehatt741/keyshade/issues/501)) ([b07ea17](https://github.com/csehatt741/keyshade/commit/b07ea178d0835354b8acdc5365f59b9ae782fcc7))
    * Add integration docs ([#204](https://github.com/csehatt741/keyshade/issues/204)) ([406ddb7](https://github.com/csehatt741/keyshade/commit/406ddb7e25198d98e8bf60e4b0273f05dc47435d))
    * Add pictures to Bruno setup ([#541](https://github.com/csehatt741/keyshade/issues/541)) ([210c0fd](https://github.com/csehatt741/keyshade/commit/210c0fdbf1ac815a8f7878e98b604c616d6fdd73))
    * Added docker details in setting-things-up.md ([#358](https://github.com/csehatt741/keyshade/issues/358)) ([ed5093a](https://github.com/csehatt741/keyshade/commit/ed5093ac5df17f8dbf4c7e286af739121b51a692))
    * Added docker support documentation ([#465](https://github.com/csehatt741/keyshade/issues/465)) ([bc04be4](https://github.com/csehatt741/keyshade/commit/bc04be4de99c0b4e86196a1e5e0fbc14f8d8b499))
    * Added docs regarding postman, and refactored architecture diagrams ([f1c9777](https://github.com/csehatt741/keyshade/commit/f1c9777e037bcf7f627624f5ca2a46b087b4a6af))
    * Added documentation for running the platform ([#473](https://github.com/csehatt741/keyshade/issues/473)) ([8b8386b](https://github.com/csehatt741/keyshade/commit/8b8386bb43b8d08ff2744ccd115b1bf515041600))
    * Added integration docs to gitbook summary ([ab37530](https://github.com/csehatt741/keyshade/commit/ab375309fc93218355d1ab12aefa20377c04604c))
    * Added missing mappings to pages ([5de9fd8](https://github.com/csehatt741/keyshade/commit/5de9fd81e4a6c8a9cfa68a6e5f09ecf9c2430130))
    * added running-the-web-app.md ([#269](https://github.com/csehatt741/keyshade/issues/269)) ([755ea12](https://github.com/csehatt741/keyshade/commit/755ea120ae90e62aaaf6b5dccf62d1d633b38c46))
    * Added section for building packages ([#720](https://github.com/csehatt741/keyshade/issues/720)) ([ecfde92](https://github.com/csehatt741/keyshade/commit/ecfde929f7554396ced6dbdc7c6cfb5bb5620edd))
    * **api:** Add swagger docs of API key controller ([#167](https://github.com/csehatt741/keyshade/issues/167)) ([2910476](https://github.com/csehatt741/keyshade/commit/2910476ce1fcf35abf1d6d196ec34811b7f1d943))
    * **api:** Add swagger docs of User Controller ([#166](https://github.com/csehatt741/keyshade/issues/166)) ([fd59522](https://github.com/csehatt741/keyshade/commit/fd5952227663a68393ef5a3a10bcc9faca1683b9))
    * **cli:** Added docs for the CLI package ([#329](https://github.com/csehatt741/keyshade/issues/329)) ([edad166](https://github.com/csehatt741/keyshade/commit/edad166c1a05507da481158f42571d1724179e36))
    * **cli:** Added usage docs ([#330](https://github.com/csehatt741/keyshade/issues/330)) ([b6963d5](https://github.com/csehatt741/keyshade/commit/b6963d5093f9031cd76821eb5faab840ea979d53))
    * **cli:** Update changelog to include missed out changes ([8910c5c](https://github.com/csehatt741/keyshade/commit/8910c5c3d34703445931b8e899fd0a368edba9c3))
    * Fix broken links in README.md ([9266788](https://github.com/csehatt741/keyshade/commit/92667881bbce4d0c2cce186178806054d998808a))
    * Fix Documentation Hyperlink and update expired Discord invite link ([#496](https://github.com/csehatt741/keyshade/issues/496)) ([5a10e39](https://github.com/csehatt741/keyshade/commit/5a10e3940562aa80462f71cabe29fdd4de9e12a8))
    * fix typo in environment-variables.md ([#163](https://github.com/csehatt741/keyshade/issues/163)) ([48294c9](https://github.com/csehatt741/keyshade/commit/48294c978df805a0543dd05375d07aafa43e31c4))
    * Fix typo in organization-of-code.md ([#234](https://github.com/csehatt741/keyshade/issues/234)) ([11244a2](https://github.com/csehatt741/keyshade/commit/11244a26b26c915d3bdd62b4ef93b505a274f35b))
    * Fixed minor typo in postman workspace link ([#411](https://github.com/csehatt741/keyshade/issues/411)) ([ed23116](https://github.com/csehatt741/keyshade/commit/ed231165e341be91f753b02200f8d4d11d42c3b3))
    * Migrate to Bruno ([#525](https://github.com/csehatt741/keyshade/issues/525)) ([1793d92](https://github.com/csehatt741/keyshade/commit/1793d925f248b175ea2115eb8926f4de26d670e5))
    * Modified environment-variable.md ([#256](https://github.com/csehatt741/keyshade/issues/256)) ([4974756](https://github.com/csehatt741/keyshade/commit/497475600467e039745a695a6e69635cebd8f8da))
    * Remove supabase from docs ([#169](https://github.com/csehatt741/keyshade/issues/169)) ([eddbce8](https://github.com/csehatt741/keyshade/commit/eddbce81fe11cca8e3e759aac1524b185e1c18f8))
    * **setup:** replace NX with Turbo in setup instructions ([#175](https://github.com/csehatt741/keyshade/issues/175)) ([af8a460](https://github.com/csehatt741/keyshade/commit/af8a460690b17e68b204d734a94705a61183b64d))
    * update CHANGELOG.md ([b01b5ca](https://github.com/csehatt741/keyshade/commit/b01b5ca6dc5ebce476cdbdfb341236b66484e7bc))
    * Update CONTRIBUTING.md ([7fc895d](https://github.com/csehatt741/keyshade/commit/7fc895d39c128dacb16f184440722fab71f523cf))
    * update DB_URL in .env.example ([325880e](https://github.com/csehatt741/keyshade/commit/325880e42f2ce43736a53a82c1bab0a9c83f4d64))
    * Update Discord link ([871b6cd](https://github.com/csehatt741/keyshade/commit/871b6cdef19fed55d7b34bc1e8b418b6974e9f38))
    * Update postman workspace link ([d6aba27](https://github.com/csehatt741/keyshade/commit/d6aba270a97f03f16e35b5cde75ff472641fe1a7))
    * update PULL_REQUEST_TEMPLATE.md ([e091d40](https://github.com/csehatt741/keyshade/commit/e091d40213fd238c74fbd3ec9f8282fb90c99ca2))
    * update README.md ([fb902e5](https://github.com/csehatt741/keyshade/commit/fb902e5052e6707eae09af296aa93d8dbb6869f4))
    * update README.md ([d3d0d86](https://github.com/csehatt741/keyshade/commit/d3d0d861b8d78348dc050d7c3b16f1bc32359e60))
    * Update README.md ([e66fcd2](https://github.com/csehatt741/keyshade/commit/e66fcd2caf75f75cd3a195139e92c5b27a7321ef))
    * Update README.md ([b59f16b](https://github.com/csehatt741/keyshade/commit/b59f16beead8b7a549182e41abba90592f31a8cb))
    * Update running-the-api.md ([177dbbf](https://github.com/csehatt741/keyshade/commit/177dbbf9e7737246acf3a4c241688e3a000ce66f))
    * Update running-the-api.md ([#193](https://github.com/csehatt741/keyshade/issues/193)) ([3d5bcac](https://github.com/csehatt741/keyshade/commit/3d5bcac76d5c5f64b13eb0f8e7bbd14a3101e322))
    * Updated alignment of pictures in API Testing page ([5d69223](https://github.com/csehatt741/keyshade/commit/5d6922334a23a31e952f80d05bb42e2b1e496a20))
    * Updated alignment of pictures in API Testing page ([e31eeca](https://github.com/csehatt741/keyshade/commit/e31eeca2108167c0cb81d8f11ee7d8701e39a378))
    * Updated CLI docs ([#460](https://github.com/csehatt741/keyshade/issues/460)) ([c7e0f13](https://github.com/csehatt741/keyshade/commit/c7e0f13debea9ec89c98be415f5076f156985533))
    * Updated env and cli docs ([1213d2a](https://github.com/csehatt741/keyshade/commit/1213d2a9b5689d44a260eff9c2e0eb8e6968c7da))
    * Updated Postman links ([444bfb1](https://github.com/csehatt741/keyshade/commit/444bfb1a5d85656ce98011c442e5238d2b786a72))
    * **web:** Add documentation about our web package ([#268](https://github.com/csehatt741/keyshade/issues/268)) ([3d848e7](https://github.com/csehatt741/keyshade/commit/3d848e7e2e20623edcc6c8dec3741f2de506c2c5))
    
    ### 🔧 Miscellaneous Chores
    
    * ad start:api script in package.json ([ee3bc19](https://github.com/csehatt741/keyshade/commit/ee3bc19bcbe83a1840ae64d466065e95b0c827f4))
    * add `getAllUsers` test  ([0b51a02](https://github.com/csehatt741/keyshade/commit/0b51a02c7799d010637dacb357fa6c5a478698b5))
    * Add api client build script and updated CI ([da0e27a](https://github.com/csehatt741/keyshade/commit/da0e27aab1f725adf28d60592e73818bb1584df7))
    * add auto release and commit config ([0fe7d19](https://github.com/csehatt741/keyshade/commit/0fe7d19614621deaec83904721ad97c49d691748))
    * add husky pre-commit check ([62bf77e](https://github.com/csehatt741/keyshade/commit/62bf77ebe3c9941c722c126e2bda325b66275b30))
    * Add more logging to Sentry init ([#470](https://github.com/csehatt741/keyshade/issues/470)) ([de4925d](https://github.com/csehatt741/keyshade/commit/de4925d9691b7bbc5c2322e01ab6787681215cf0))
    * add pr auto tag workflow ([7a44137](https://github.com/csehatt741/keyshade/commit/7a44137bc6dd9e7c64baf8c4dd468b2676d378e3))
    * add PR lint ([bb28cb7](https://github.com/csehatt741/keyshade/commit/bb28cb7b2e6d1501c6525690a744068fc5c6e56c))
    * add prettier:fix in package.json and husky ([2451301](https://github.com/csehatt741/keyshade/commit/2451301fe9bf0f32b354a7b3ffb548866cd6b265))
    * add release drafter config ([de36d9f](https://github.com/csehatt741/keyshade/commit/de36d9f5f5de639be300115b7dd62826613d15a6))
    * add render hook in web to auto-deploy ([b0228d0](https://github.com/csehatt741/keyshade/commit/b0228d021e524a8eaf1760f58b74b623ea6ef64a))
    * add semantic release ([af12daa](https://github.com/csehatt741/keyshade/commit/af12daa7e8947d50bf346246412962738b2c9ee0))
    * Add Sentry and update CI ([#653](https://github.com/csehatt741/keyshade/issues/653)) ([ca96862](https://github.com/csehatt741/keyshade/commit/ca96862ce3ab708d99cb0a99b7b84945bac37cdb))
    * add test workflow ([77c49de](https://github.com/csehatt741/keyshade/commit/77c49def7fc0b9ec06ce2ccd0790b141fb0a4839))
    * add workflow for CI and deployment of web ([f49b7db](https://github.com/csehatt741/keyshade/commit/f49b7db41458583a74a84f4433e2d685ab1855f9))
    * Added back disabled platform CI ([912b02a](https://github.com/csehatt741/keyshade/commit/912b02a782bfe5a74f9ad607928d568f09ba86f0))
    * Added docker build and run commands to` package.json` ([#258](https://github.com/csehatt741/keyshade/issues/258)) ([af61791](https://github.com/csehatt741/keyshade/commit/af61791b18b827de8369cbeac51a22a93ce8be2e))
    * Added lockfile ([60a3b9b](https://github.com/csehatt741/keyshade/commit/60a3b9bbc643beb0af1f6ec4dd7861944c6a1547))
    * Added lockfile ([6bb512c](https://github.com/csehatt741/keyshade/commit/6bb512c2e4ae2dd3bbdaecd2dc51c308772bbd84))
    * Added next backend url in .env.example ([5695254](https://github.com/csehatt741/keyshade/commit/5695254b64d3c504f7ca7cd17681f42947fef232))
    * adding test command to pre commit ([09805a5](https://github.com/csehatt741/keyshade/commit/09805a545639ce4d107dc067e7f50db1a8f4955b))
    * **api-client:** Added pagination structure ([a70e957](https://github.com/csehatt741/keyshade/commit/a70e957afc828be1e72d0ea958de8ba860a04b9c))
    * **api-client:** Fixed test script ([ad70819](https://github.com/csehatt741/keyshade/commit/ad708190771f40596646b54fdda49a01c4742644))
    * **api-client:** Removed try-catch from tests in environment ([a64e48c](https://github.com/csehatt741/keyshade/commit/a64e48cb171b3996bddb74f2cf256d4760e3ccb3))
    * **api:** Add SMTP_SECURE environment variable to Mail Service ([#741](https://github.com/csehatt741/keyshade/issues/741)) ([dd89d57](https://github.com/csehatt741/keyshade/commit/dd89d57d9c5aee3979b31f8036b0870bba20ffa1))
    * **api:** Add user cache for optimization ([#386](https://github.com/csehatt741/keyshade/issues/386)) ([8d730b5](https://github.com/csehatt741/keyshade/commit/8d730b58830a8a0e6be6bf0fe86b3021a2d473eb))
    * **api:** Added type inference and runtime validation to `process.env` ([#200](https://github.com/csehatt741/keyshade/issues/200)) ([249e07d](https://github.com/csehatt741/keyshade/commit/249e07d9b7d6ac699f4a2167eb5b4c3068acb4db))
    * **api:** Alter cache rehydration interval ([f5f9eec](https://github.com/csehatt741/keyshade/commit/f5f9eec5c81b29d7f8eb1e233c4e80e4d36eb0cf))
    * **api:** Fix inconsistencies in zod schema ([#240](https://github.com/csehatt741/keyshade/issues/240)) ([f3a3632](https://github.com/csehatt741/keyshade/commit/f3a36326b4f5c945fb2725620ff92ab31e44e053))
    * **api:** Fixed naming error in variable controller ([0c5a380](https://github.com/csehatt741/keyshade/commit/0c5a380fba843a2eb8a84753cfbe8b3ef86b6e31))
    * **api:** Fixed prisma script env errors ([#209](https://github.com/csehatt741/keyshade/issues/209)) ([8762354](https://github.com/csehatt741/keyshade/commit/8762354f1f70e48614655d10760440cb7d7e60d9))
    * **api:** Get feedback forward email from process.env ([#236](https://github.com/csehatt741/keyshade/issues/236)) ([204c9d1](https://github.com/csehatt741/keyshade/commit/204c9d133df04fb93f965cdb58ea948bcf44df12))
    * **api:** Improve handling of edge cases for paginate module ([#402](https://github.com/csehatt741/keyshade/issues/402)) ([8591487](https://github.com/csehatt741/keyshade/commit/8591487623c5e817ff31aedd6e8cd15074bcfc1c))
    * **api:** Minor updates to user service ([249d778](https://github.com/csehatt741/keyshade/commit/249d778b94a5587b6c7da6d7afe04b9bfee5c0d6))
    * **api:** Optimise API docker image size ([#360](https://github.com/csehatt741/keyshade/issues/360)) ([ea40dc1](https://github.com/csehatt741/keyshade/commit/ea40dc1f7bb8db14dcb20d82a8e106c6e79cf560))
    * **API:** Refactor authority check functions in API ([#189](https://github.com/csehatt741/keyshade/issues/189)) ([e9d710d](https://github.com/csehatt741/keyshade/commit/e9d710d49a872f6c3ca974780bcf1039f31104de))
    * **api:** Refactor user e2e tests ([b38d45a](https://github.com/csehatt741/keyshade/commit/b38d45a4314257030cc3bbcd90dd02cfd3574469))
    * **api:** Remove failing environment tests ([d1b9767](https://github.com/csehatt741/keyshade/commit/d1b9767a9714ee7dfa38b9f066beb80db40b4757))
    * **api:** Reorganized import using path alias ([d5befd1](https://github.com/csehatt741/keyshade/commit/d5befd15a5324e217bff76ef834c4387f6a168ba))
    * **api:** Skip workspace creation when user is admin ([#376](https://github.com/csehatt741/keyshade/issues/376)) ([13f6c59](https://github.com/csehatt741/keyshade/commit/13f6c59fda07e4a8b6f991e670ab055964fb2fb1))
    * **api:** Suppressed version check test in [secure] ([4688e8c](https://github.com/csehatt741/keyshade/commit/4688e8c429e63b3fb18ba0bb77d53fa875999792))
    * **api:** update dockerfile and ci ([ae2d944](https://github.com/csehatt741/keyshade/commit/ae2d9441ab9d73ea61e5924a6157da7260aaf9c7))
    * **api:** update dockerfile entrypoint ([3962beb](https://github.com/csehatt741/keyshade/commit/3962bebf91973e5ca18f47bf5dab5c4fd94cf873))
    * **api:** update sentry log messages ([976026c](https://github.com/csehatt741/keyshade/commit/976026c74f2f1e7de7cab284b751ea87a8ce573d))
    * **api:** Update slug generation method ([#420](https://github.com/csehatt741/keyshade/issues/420)) ([1f864df](https://github.com/csehatt741/keyshade/commit/1f864df4180f65c8f42f8984b6a014d44c366901))
    * **api:** Updated lockfile ([a968e78](https://github.com/csehatt741/keyshade/commit/a968e78198cfe437af4a9b95ecfb47a7452c1678))
    * **api:** Updated response types in environment service ([b8a3ddd](https://github.com/csehatt741/keyshade/commit/b8a3ddd5c2c1f8a9c24f7df6f193eff4fc2da691))
    * **auth:** loading github module optionally ([#112](https://github.com/csehatt741/keyshade/issues/112)) ([9263737](https://github.com/csehatt741/keyshade/commit/9263737bcf7c7e4ed247f8ae8dc69351a30def6a))
    * **ci:** Add CLI deployment script ([51de9d1](https://github.com/csehatt741/keyshade/commit/51de9d115de8e21d0ffd3732b020f4b514c614c4))
    * **ci:** Add docker check   ([#383](https://github.com/csehatt741/keyshade/issues/383)) ([3119001](https://github.com/csehatt741/keyshade/commit/311900177b85035d777acb6d86549cfffc71dbef))
    * **ci:** add [secure] envs to api workflow ([4f6bb44](https://github.com/csehatt741/keyshade/commit/4f6bb4492a47676d56439d730f49c71275c8d60a))
    * **ci:** add fly.io ([46bcd22](https://github.com/csehatt741/keyshade/commit/46bcd225f66aba763ee4619531d3cfec5cb68e11))
    * **ci:** Add internal package dependencies to existing workflows ([#592](https://github.com/csehatt741/keyshade/issues/592)) ([a9fc39e](https://github.com/csehatt741/keyshade/commit/a9fc39ee4ae1f2b3869c1bc8addfa20958049022))
    * **ci:** Add manual trigger ([cfbf4b9](https://github.com/csehatt741/keyshade/comm…
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    type: enhancement New feature or request
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    Create default workspace on user creation
    1 participant