Skip to content

A comprehensive audit management application built with Node.js, Express, MongoDB, and Angular. Includes features for managing audits, secure user authentication, a responsive UI, robust RESTful API, and Dockerized deployment with CI/CD integration using Jenkins.

Notifications You must be signed in to change notification settings

Khalil-Bchir/Odite

Repository files navigation

Odite

Odite is an audit application built using Node.js, Express, MongoDB, and Angular. This application provides functionalities for managing audits efficiently, leveraging the power of modern web technologies to offer a robust and scalable solution.

Table of Contents

Features

  • Audit Management: Create, read, update, and delete audits.
  • User Authentication: Secure authentication and authorization mechanisms.
  • Responsive Design: User-friendly interface built with Angular.
  • API Integration: RESTful API built with Express and Node.js.
  • Database: MongoDB for efficient data storage and retrieval.
  • Containerization: Docker and Docker Compose for easy deployment.
  • Continuous Integration/Continuous Deployment (CI/CD): Automated workflows using Jenkins.

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Node.js and npm installed
  • MongoDB installed and running
  • Docker and Docker Compose installed (for containerization)
  • Jenkins installed (for CI/CD)

Installation

  1. Clone the Repository
git clone https://github.com/Khalil-Bchir/Odite.git
cd Odite
  1. Backend Setup
cd backend
npm install
  1. Frontend Setup
cd ../frontend
npm install

Usage

  1. Start MongoDB

Ensure MongoDB is running on your local machine or specify a remote MongoDB URI in the configuration.

  1. Run Backend
cd backend
npm start

The backend server will start on http://localhost:3000.

  1. Run Frontend
cd frontend
ng serve

The frontend application will start on http://localhost:4200.

Configuration

Backend Configuration

The backend configuration can be set using environment variables or a .env file. Below are the key configurations:

  • PORT: Port on which the backend server will run (default: 3000)
  • MONGO_URI: MongoDB connection string
  • JWT_SECRET: Secret key for JWT authentication

Frontend Configuration

The frontend configuration can be adjusted in the environment.ts file.

Docker

  1. Build and Run Containers
docker-compose up --build

This command will build and start the application using Docker.

  1. Stop Containers
docker-compose down

CI/CD

This project uses Jenkins for CI/CD. Ensure Jenkins is installed and properly configured to use the provided Jenkinsfile.

Key Jenkinsfile Stages

  1. Install Dependencies
  2. Run Tests
  3. Build Docker Images
  4. Deploy Application

License

This project is licensed under the MIT License. See the LICENSE file for more details.

About

A comprehensive audit management application built with Node.js, Express, MongoDB, and Angular. Includes features for managing audits, secure user authentication, a responsive UI, robust RESTful API, and Dockerized deployment with CI/CD integration using Jenkins.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published