Thanks to visit codestin.com
Credit goes to github.com

Skip to content

mubasharHuss/miaoda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Welcome to Your Miaoda Project

Miaoda Application Link URL URL:https://medo.dev/projects/app-801hz9600npd

StampForm - Document Writer & e-Stamp Generator

Overview

StampForm is a comprehensive web-based document writing application designed specifically for users in Pakistan. It provides a powerful rich text editor, extensive template library in both Urdu and English, secure private vault storage, and PDF export functionality with proper e-Stamp formatting.

Features

πŸ“ Rich Text Editor

  • Modern Tiptap-powered editor with full formatting capabilities
  • Support for bold, italic, underline, lists, and text alignment
  • Right-to-Left (RTL) text direction for Urdu
  • Urdu-friendly fonts (Noto Nastaliq Urdu)
  • Undo/Redo functionality
  • Auto-save feature

πŸ“š Template Library

  • 9+ pre-built application templates (expandable)
  • Categories include:
    • Education (Leave applications, Fee concession)
    • Government (CNIC applications)
    • HR/Job (Job applications, Resignation letters)
    • Legal (Affidavits)
    • Banking (Account opening)
    • Certificates/NOC
    • Personal (Character certificates)
  • Keyword-based search in both Urdu and English
  • Category filtering system
  • Template preview before editing

πŸ”’ Private Vault

  • Secure document storage with PIN protection
  • AES encryption for sensitive documents
  • Document management: Add, Edit, Delete, Rename
  • Offline storage using localStorage
  • No cloud sync required (data stays local)

πŸ“„ PDF Generation & Printing

  • HTML to PDF conversion with Urdu font support
  • Adjustable top margin for e-Stamp placement
  • Landscape/Portrait mode options
  • Direct printing from application
  • Download PDF functionality
  • Clean layout formatting

βš™οΈ Settings & Preferences

  • Dark/Light mode toggle
  • Urdu/English language selection
  • Font size adjustments
  • Backup/Restore functionality
  • User interface customization

Tech Stack

  • Frontend Framework: React 18 + TypeScript
  • Build Tool: Vite
  • UI Components: shadcn/ui + Radix UI
  • Styling: Tailwind CSS
  • Rich Text Editor: Tiptap
  • PDF Generation: jsPDF + html2canvas
  • Encryption: Web Crypto API
  • State Management: React Context + Hooks
  • Routing: React Router v7
  • Icons: Lucide React
  • Notifications: Sonner

Project Structure

β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ editor/
β”‚   β”‚   β”‚   └── RichTextEditor.tsx    # Tiptap editor component
β”‚   β”‚   └── ui/                        # shadcn/ui components
β”‚   β”œβ”€β”€ contexts/
β”‚   β”‚   └── AppContext.tsx             # Global app state
β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ Home.tsx                   # Dashboard with categories
β”‚   β”‚   β”œβ”€β”€ Templates.tsx              # Template library
β”‚   β”‚   β”œβ”€β”€ Editor.tsx                 # Document editor
β”‚   β”‚   β”œβ”€β”€ Vault.tsx                  # Secure vault
β”‚   β”‚   └── Settings.tsx               # App settings
β”‚   β”œβ”€β”€ services/
β”‚   β”‚   β”œβ”€β”€ storage.service.ts         # localStorage management
β”‚   β”‚   β”œβ”€β”€ encryption.service.ts      # AES encryption
β”‚   β”‚   β”œβ”€β”€ templates.service.ts       # Template data
β”‚   β”‚   └── pdf.service.ts             # PDF generation
β”‚   β”œβ”€β”€ types/
β”‚   β”‚   └── index.ts                   # TypeScript interfaces
β”‚   β”œβ”€β”€ App.tsx                        # Main app component
β”‚   β”œβ”€β”€ routes.tsx                     # Route configuration
β”‚   └── index.css                      # Global styles + design system

Getting Started

Prerequisites

  • Node.js β‰₯ 20
  • npm β‰₯ 10 or pnpm

Installation

  1. Clone or download the project
  2. Navigate to the project directory
  3. Install dependencies:
npm install
# or
pnpm install

Development

Start the development server:

npm run dev -- --host 127.0.0.1
# or
npx vite --host 127.0.0.1

The application will be available at http://127.0.0.1:5173

Build

Build for production:

npm run build

Lint

Check code quality:

npm run lint

Usage Guide

Creating a Document

  1. From Template:

    • Navigate to the home page
    • Select a category or browse all templates
    • Click on a template to open it in the editor
    • Customize the content as needed
  2. From Scratch:

    • Click "Create New Document" on the home page
    • Start typing in the editor
    • Use the toolbar for formatting

Saving Documents

  • Auto-save: Documents are automatically saved every 30 seconds
  • Save to Vault: Click the "Save to Vault" button to store securely
  • Export as PDF: Click the "PDF" button to download

Using the Vault

  1. Set up a PIN on first access (minimum 4 digits)
  2. Enter PIN to unlock vault
  3. View, edit, rename, or delete stored documents
  4. Lock vault when done

Language Switching

  • Go to Settings
  • Select your preferred language (English/Urdu)
  • The entire interface will switch languages

Backup & Restore

  1. Go to Settings
  2. Click "Export Data" to download a backup JSON file
  3. Click "Import Data" to restore from a backup file

Design System

Color Scheme

The application uses a Pakistan-themed color palette:

  • Primary: Green (#01411C) - representing Pakistan's flag
  • Background: White/Dark gray (theme-dependent)
  • Accents: Complementary greens and blues

Typography

  • English: System fonts (Arial, sans-serif)
  • Urdu: Noto Nastaliq Urdu (loaded from Google Fonts)

Responsive Design

  • Mobile-first approach
  • Breakpoints: sm (640px), md (768px), lg (1024px), xl (1280px)
  • Fully responsive on all screen sizes

Security

  • PIN Protection: SHA-256 hashed PINs
  • Document Encryption: AES-256-GCM encryption
  • Local Storage: All data stored locally (no server transmission)
  • No Tracking: Completely offline-capable

Browser Support

  • Chrome/Edge (latest)
  • Firefox (latest)
  • Safari (latest)
  • Opera (latest)

Future Enhancements

  • More templates (target: 200+)
  • Cloud sync option
  • Template marketplace
  • Custom template creation
  • Multi-language support (beyond Urdu/English)
  • Mobile app version

License

This project is proprietary software.

Support

For issues or questions, please contact the development team.


Made with ❀️ for Pakistan

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published