Skip to content

0xdeafdead/user-management-engine

Repository files navigation

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.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages