Skip to content

PharmaLab: Revolutionizing pharmaceutical product management by bridging the digital gap between laboratories and pharmacies with a modern web app.

License

Notifications You must be signed in to change notification settings

aziz-zina/Pharmalab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Project Name: PharmaLab

Owner Admin Open issues Analytics Views


Project 🌐 Overview:

1. Introduction:

  • The culmination of a year dedicated to creating PharmaLab, an innovative web application addressing fragmented processes in pharmaceutical management.

2. Problem Statement:

  • Fragmented processes and direct communication hinder efficiency in pharmaceutical product management.

3. Solution:

  • PharmaLab: A web application automating product management to centralize operations, improve efficiency, and enhance security.

Project Features πŸš€:

Authentication and Authorization:

  • Secure user registration and login.
  • Defined roles and permissions for pharmacies, laboratories, and administrators.

Profile Management:

  • User profile creation and management (contact information, address, etc.).
  • Laboratories can submit information, including products and pricing.

Product Catalog:

  • Comprehensive display of pharmaceutical products.
  • Detailed product information (name, description, ingredients, price, etc.).

Order Management:

  • Online ordering for pharmacies.

Non-Functional Requirements:

  • Security: Ensuring confidentiality and data security.
  • Ease of Use: Intuitive interface and user assistance.
  • Performance: Meeting criteria for response time, throughput, and efficiency for optimal system performance.

These features are designed to enhance efficiency, security, and user experience in pharmaceutical product management within PharmaLab.


Technologies Used πŸ› οΈ:

Backend:

Tool Version Description Logo
Node.js (back) 1.0.0 Server-side JavaScript runtime Node.js
Express 4.18.2 Web application framework for Node.js Express
MongoDB 8.0.0 NoSQL database MongoDB
JWT 9.0.2 JSON Web Token for authentication JWT
Cypress 13.6.1 End-to-end testing framework Cypress
Bcrypt.js 2.4.3 Password hashing library -

Frontend:

Tool Version Description Logo
Angular (front) 15.1.0 TypeScript-based web application framework Angular
PrimeNG 15.1.1 Angular UI component library PrimeNG
Font Awesome 4.7.0 Icon toolkit FontAwesome

Additional Libraries πŸ“š:

  • Cypress Slow Down: 1.3.1 - Middleware to slow down responses during testing.
  • PrimeFlex: 3.3.0 - A lightweight flexbox CSS utility library.
  • PrimeIcons: 6.0.1 - Icon library for PrimeNG.

Installation πŸ“₯ :

Follow these steps to set up and run the PharmaLab project locally:

Clone the Repository:

git clone https://github.com/aziz-zina/PharmaLab.git

Install and Set Up the Backend:

  1. Navigate to the Backend Directory:
cd PharmaLab/back
  1. Install Backend Dependencies:
npm install
  1. Configure Environment Variables:
  • Create a .env file in the back directory.
  • Set up necessary variables such as database connection details, JWT secret, etc.
  1. Run the Express Backend:
npm start

The Express backend should be running at http://localhost:your-backend-port.

Install and Set Up the Frontend:

  1. Navigate to the Frontend Directory:
cd PharmaLab/front
  1. Install Frontend Dependencies:
npm install
  1. Configure Angular Environment::
  • Update configuration files (environment.ts and environment.prod.ts) with backend API URL, etc.
  1. Run the Angular Frontend:
ng serve --open

The Angular frontend should be running at http://localhost:4200.

Now, the PharmaLab project is cloned, and both the Express backend and Angular frontend are set up locally. Adjust the instructions based on your project structure and requirements.


Usage Guide πŸ“‹ :

Follow these steps to make the most of PharmaLab:

  • Login: πŸšͺ Access your account securely.
  • Dashboard Overview: πŸ“Š Explore the key information on the dashboard.
  • Profile Management: πŸ‘€ Update your contact information and address.
  • Product Catalog: πŸ“¦ Browse through the comprehensive list of pharmaceutical products.
  • Order Management: πŸ›’ Place online orders for products.
  • Admin Features: πŸ› οΈ Explore additional features if you have administrative privileges.
  • Security: πŸ”’ Ensure data security and confidentiality.
  • Performance Metrics: βš™οΈ Check system performance metrics.

Contributing 🀝:

We welcome contributions to PharmaLab! Follow these guidelines to get started:

Coding Standards:

Follow the coding standards and conventions outlined in the CONTRIBUTING.md file.
Maintain code readability and consistency.

Submitting Pull Requests:

  1. Create a New Branch:
git checkout -b feature/your-feature-name
  1. Make Changes and Commit:
  • Implement your changes and commit them.
git commit -m "Add feature: your-feature-name"
  1. Push Changes to Your Fork:
git push origin feature/your-feature-name
  1. Submit a Pull Request:
  1. Review and Merge:
    • The maintainers will review your pull request, provide feedback, and merge it once approved.

GitHub Issues:

If you find any issues or have feature requests, please open an issue on the PharmaLab GitHub Issues page.

Thank you for contributing to PharmaLab! Your efforts help make this project better.


License πŸ“„ :

This project is licensed under the MIT License.

πŸš€ Feel free to use, modify, and distribute the codebase. Contributions are welcome!

MIT License


Acknowledgments πŸ™ :

I extend my sincere appreciation to the following tools, libraries, and resources that have been instrumental in shaping and enhancing this project:

  • Node.js: The JavaScript runtime that powers the server-side of our application.
  • Express.js: The fast, unopinionated, minimalist web framework for Node.js.
  • Angular: The framework empowering the development of our dynamic frontend.
  • MongoDB: The flexible and scalable NoSQL database that stores our data.
  • GitHub: The platform that facilitates collaborative coding and version control.
  • Cypress: The end-to-end testing framework ensuring the reliability of our application.
  • PrimeNG: The UI component library for Angular that enhances the aesthetics and functionality of our user interface.

These tools and resources have played a crucial role in bringing our vision to fruition. We express our gratitude to the dedicated individuals behind these projects and the broader open-source community. πŸ™Œ


Contact πŸ“§:

For any questions, issues, or collaboration inquiries related to PharmaLab, feel free to reach out to us:

Connect with us and be a part of enhancing PharmaLab! We appreciate your feedback and contributions.

About

PharmaLab: Revolutionizing pharmaceutical product management by bridging the digital gap between laboratories and pharmacies with a modern web app.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published