Skip to content

This project is a Java-based application simulating a Car Department of Motor Vehicles (DMV) system.

License

Notifications You must be signed in to change notification settings

Yousinator/Dmv-System

Repository files navigation


Logo

DMV System

A fully functional DMV system I made for my "Programming" course final using Java.

Explore the docs »

Report Bug . Request Feature

Table Of Contents

About The Project

Screen Shot

This project is a Java-based application simulating a Car Department of Motor Vehicles (DMV) system. It is designed to manage car and user data, offering different user roles like customers, admins, and roots, each with specific privileges. The project integrates a SQLite database to persistently store and manage data, and utilizes Maven for dependency management.

💡Detailed INFO:

The Car DMV System serves as a comprehensive platform for handling vehicle-related administrative tasks. Key features and functionalities include:

  • User Authentication: Different user roles (customer, admin, root) with secure login functionalities.
  • Data Management: Allows admins and root users to add, modify, and delete customer and car records.
  • Car Management: Customers can view and manage their car details, such as make, model, year, color, and more.
  • Role-Based Access Control: The system implements role-based access control to segregate duties and permissions among different types of users.
  • Database Integration: Uses SQLite for efficient data storage and retrieval, ensuring data persistence and integrity.
  • Maven Support: The project is built and managed with Maven, simplifying dependency management and project compilation.
  • User Interface: Includes a user-friendly interface for easy navigation and operation of the system.

This system is ideal for educational purposes, illustrating how a real-world application might handle user roles and data management, and serves as an excellent example of integrating Java with a database and Maven.

Built With

For this project, Java was the primary language used, especially for developing the graphical user interface (GUI) components. Java's robustness and versatility make it an ideal choice for creating interactive and user-friendly applications. Additionally, Maven was used as a build tool for managing dependencies, and SQLite for database management, ensuring efficient data storage and retrieval.

For this project, I used both C lang and Java. The C code is mainly for me as I like the language and I want to use it. As for Java, I used it to provide a GUI for each code.

Getting Started

Getting started with this repository is very simple. You can just navigate to the section you'd like to check out and you'll find documentation for each algorithm in its specific file. Each topic will have a java joint GUI program.

Prerequisites

  • Java Development Kit (JDK): The application is built using Java, thus requiring JDK to be installed on your system.
  • Maven: Used for managing project dependencies.

If you are not familiar with Java make sure to check out Java0x01 written by smadi0x86 and me:

Readme Card

Installation

  1. Clone the repo
git clone https://github.com/yousinator/dmv-system.git
  1. Navigate to the project directory and use Maven to compile the project:
mvn compile
  1. Run the application:
mvn exec:java -Dexec.mainClass=com.yousinator.Main

Usage

The Car DMV System allows users to perform the following actions:

  • Customers: View and manage their car details.
  • Admins: Manage customer data, including adding, removing, or updating customer and car information.
  • Root: Has all admin privileges, plus managing admin users.

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  • If you have suggestions for adding or removing projects, feel free to open an issue to discuss it, or directly create a pull request after you edit the README.md file with necessary changes.
  • Please make sure you check your spelling and grammar.
  • Create individual PR for each suggestion.
  • Please also read through the Code Of Conduct before posting your first idea as well.

Creating A Pull Request

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Authors

  • Yousinator - AI Student - Yousinator - Wrote the codes and README\

Acknowledgements

Notes:

  1. About the Project: Elaborate on the purpose, features, and functionalities of your project.
  2. Built With: List all significant technologies and frameworks used in the project.
  3. Getting Started: Provide detailed instructions on setting up the project locally. Adjust paths and commands to match your project's structure.
  4. Usage: Describe how to use the application, including any important commands.
  5. Contributing: Encourage other developers to contribute to your project.
  6. License: Specify the license under which the project is released.
  7. Authors: Credit yourself and any other contributors.
  8. Acknowledgements: Acknowledge any individual, institution, or resource that helped you in your project.

Feel free to modify and expand each section to suit your project’s specifics.

About

This project is a Java-based application simulating a Car Department of Motor Vehicles (DMV) system.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages