Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A modern web application for medication management, pharmacy location, and personal health tracking.

License

Notifications You must be signed in to change notification settings

Pupler/SmartPharmacy

Repository files navigation

πŸ’Š Smart Pharmacy

IN DEVELOPING .NET React TypeScript

A modern full-stack web application for medication management, pharmacy discovery, and personal health tracking, built with clean architecture and real-world scalability in mind.

πŸ“Έ Preview

Home page β€” Explore & Discover

grafik

Medical cabinet β€” Manage Your Medications

grafik

Authentication Page β€” Demo (Work in Progress)

grafik

✨ Features

  • 🎨 Smart Theme System
    Switch between light/dark modes with auto-save.
  • πŸ” Search & Filter (In developing...)
    Filter medicines by name or category.
  • πŸ’Š Basic Medicine Cabinet
    Simple list to track your medications.
  • πŸ”’ Secure Authentication
    Safe user login/registration with JWT tokens and password hashing
  • 🎯 Clean User Interface
    Minimalist and easy to navigate.
  • πŸ’Ύ Local Data Storage
    Your info stays between visits.
  • 🌐 API Error Handling
    User-friendly messages for server / network errors.

πŸ› οΈ Technology Stack

Backend

  • .NET 8 (ASP.NET Core)
  • C#
  • MySQL
  • Entity Framework Core
  • JWT Authentication

Frontend

  • React 18
  • TypeScript
  • Vite
  • REST API integration

Architecture

  • Clean Architecture
  • RESTful API
  • DTO-based validation

πŸš€ Getting Started

Prerequisites

  • .NET 8 SDK
  • Node.js 18+
  • MySQL Server
# Clone the repository
git clone https://github.com/Pupler/SmartPharmacy.git
cd SmartPharmacy
# Start MySQL Server
# Linux (systemd)
sudo systemctl start mysqld
sudo systemctl status mysqld
# Login to MySQL
mysql -u root -p
# Create Database
CREATE DATABASE smartpharmacy;
USE smartpharmacy;
# (Optional) Create Dedicated User
CREATE USER 'smartpharmacy_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON smartpharmacy.* TO 'smartpharmacy_user'@'localhost';
FLUSH PRIVILEGES;
# Create Medicines Table
CREATE TABLE Medicines (
 Id INT AUTO_INCREMENT PRIMARY KEY,
 Name VARCHAR(100) NOT NULL,
 Price DECIMAL(10,2) NOT NULL,
 Stock INT NOT NULL DEFAULT 0,
 RequiresPrescription BOOLEAN NOT NULL DEFAULT FALSE,
 CreatedAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
# This schema matches the Entity Framework configuration used in the backend.
# Configure Connection String
# Edit Backend/appsettings.json:
{
 "ConnectionStrings": {
 "DefaultConnection": "Server=localhost;Database=smartpharmacy;User=root;Password=;"
 }
}
# ⚠️ Replace username and password with your actual MySQL credentials.
# Run Backend API
cd Backend
dotnet restore
dotnet run
API will start on:
http://localhost:5171
# Install Dependencies
cd frontend
npm install
# Run Frontend
npm run dev
Frontend will be available at:
http://localhost:5173

πŸ“„ License

This project is open source and available under the MIT License.

About

A modern web application for medication management, pharmacy location, and personal health tracking.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /