Skip to content

Latest commit

 

History

History
76 lines (64 loc) · 2.12 KB

README.md

File metadata and controls

76 lines (64 loc) · 2.12 KB

User Management Engine

This project is an ongoing user management engine built with TypeScript using Nx in a monorepository setup. It enables user administration and session authentication with JWT.

Coverage

Features

  • Basic user API (base-api) for CRUD operations.
  • JWT-based authentication.
  • CI/CD setup with Nx.

Prerequisites

  • Node.js: Ensure you have the latest version installed.
  • Docker (optional): For container deployment.

Installation and Setup

1. Clone the repository

Clone the GitHub repository and navigate to the project directory:

git clone https://github.com/0xdeafdead/user-management-engine.git
cd user-management-engine

2. Install dependencies

Install all required dependencies by running:

npm install

3. Set up environment variables

Create a .env file in the project root and configure the necessary variables for database connection, authentication, etc. Example:

DB_HOST=localhost
DB_PORT=5432
JWT_SECRET=yourJWTSecret

Running the Project

Development Mode

To run the project in development mode, use:

npx nx serve base-api

Production Build

To build the project for production, run:

npx nx build base-api

Docker Deployment

To use Docker, follow these steps:

Build the Docker image:

docker build -t user-management-engine .

Run the container:

docker run -p 3000:3000 user-management-engine

Testing

To run tests, use:

npx nx test base-api

Contributing

If you'd like to contribute:

  1. Fork the repository.
  2. Create a new branch for your feature (git checkout -b [feat/fix]/new-feature).
  3. Make your changes and commit them (git commit -m "[feat/fix/chore]: Add new feature").
  4. Push your branch to the remote repository (git push origin [feat/fix]/new-feature).
  5. Open a pull request for review.

License

This project is licensed under the MIT License.