Skip to content

SANDRO00O/schoolid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

21 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Iraqi Student ID Generator ๐Ÿ‡ฎ๐Ÿ‡ถ

Logo

License: MIT Stars Forks Issues Website Green Hosting Open Source PRs Welcome Maintained

A free web tool for creating professional Iraqi school ID cards easily and quickly. Designed specifically to meet the needs of Iraqi schools and parents.


โœจ Key Features

  • Professional Design
    • Two ready templates (male & female)
    • Authentic Arabic layout, RTL support
    • Circular photos with rounded corners
    • High-resolution output (1011ร—639 px)
  • Data Input
    • Fields: Full name, grade, school, address, phone
    • Image upload (JPG, PNG, WEBP)
    • Intuitive UI & real-time validation
  • Available Options
    • Direct download (PNG)
    • Instant sharing (Web Share API)
    • Live preview & responsive design
  • Privacy & Security
    • No cloud storage; all processing on your device
    • No data collection; open source & GDPR-compliant
  • Advanced Features
    • PWA support & offline capability
    • Fast loading, SEO optimized

๐Ÿ›  Technology Stack

Languages:

  • CSS (73.1%)
  • HTML (19.6%)
  • JavaScript (7.3%)

Frontend:
HTML5 CSS3 JavaScript

  • HTML5 Canvas for card generation
  • Vanilla JavaScript
  • CSS3 responsive design

๐Ÿš€ Quick Start

Prerequisites:

  • Modern web browser (Chrome 80+, Firefox 75+, Safari 13+, Edge 80+)

Installation:

# Clone the repository
git clone https://github.com/SANDRO00O/schoolid.git

# Navigate to directory
cd schoolid

# Run locally with any web server
python -m http.server 8000        # Python
npx serve .                       # Node.js
php -S localhost:8000             # PHP

๐Ÿ“ Project Structure

schoolid/
โ”œโ”€โ”€ assets/
โ”‚   โ”œโ”€โ”€ css/
โ”‚   โ”‚   โ”œโ”€โ”€ style.css
โ”‚   โ”‚   โ””โ”€โ”€ all.css
โ”‚   โ”œโ”€โ”€ js/
โ”‚   โ”‚   โ”œโ”€โ”€ script.js
โ”‚   โ”‚   โ”œโ”€โ”€ header.js
โ”‚   โ”‚   โ”œโ”€โ”€ sw.js
โ”‚   โ”‚   โ””โ”€โ”€ html2canvas.min.js
โ”‚   โ”œโ”€โ”€ fonts/
โ”‚   โ”‚   โ””โ”€โ”€ NotoKufiArabic...
โ”‚   โ”œโ”€โ”€ images/
โ”‚   โ”‚   โ”œโ”€โ”€ logo.svg
โ”‚   โ”‚   โ”œโ”€โ”€ male.svg
โ”‚   โ”‚   โ”œโ”€โ”€ female.svg
โ”‚   โ”‚   โ””โ”€โ”€ logo.png
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ template/
โ”‚   โ”‚   โ”œโ”€โ”€ male-template.png
โ”‚   โ”‚   โ””โ”€โ”€ female-template.png
โ”‚   โ””โ”€โ”€ links/
โ”‚       โ”œโ”€โ”€ About.html
โ”‚       โ””โ”€โ”€ privacy.html
โ”œโ”€โ”€ index.html
โ””โ”€โ”€ README.md

๐Ÿ”ง Configuration

Main configuration is in script.js:

const config = {
    gender: 'female',
    templatePaths: {
        female: '/assets/template/female-template.png',
        male: '/assets/template/male-template.png'
    },
    colors: {
        female: '#ba1971',
        male: '#1976d2'
    },
    canvasSettings: {
        userImage: { x: 125, y: 145, size: 270, radius: 35 },
        textPositions: {
            name: { x: 815, y: 160 },
            grade: { x: 815, y: 260 },
            school: { x: 785, y: 363 },
            place: { x: 805, y: 465 },
            phone: { x: 805, y: 565 }
        }
    }
};

๐ŸŒ Browser Compatibility

Browser Status Notes
Chrome โœ… Fully Supported Version 80+
Firefox โœ… Fully Supported Version 75+
Safari โœ… Fully Supported Version 13+
Edge โœ… Fully Supported Version 80+
Mobile Browsers โœ… Fully Supported All modern browsers

๐Ÿ“Š Performance Metrics

  • โšก Load Time: < 3 seconds
  • ๐Ÿ–ผ Output Size: ~200-500KB
  • ๐Ÿ“ฑ Responsive: 320px+ screens
  • ๐Ÿ”„ Generation Time: < 2 seconds
  • ๐Ÿ“ฆ PWA Score: 90+ (Lighthouse)

๐ŸŽฏ Usage Guide

Step 1: Fill Student Information
Step 2: Select Gender
Step 3: Upload Photo
Step 4: Generate & Download


๐Ÿค Contributing

We welcome contributions!

  1. Report Bugs ๐Ÿ“ (GitHub Issues)
  2. Suggest Features ๐Ÿ’ก (Feature Request)
  3. Improve Documentation ๐Ÿ“š
  4. Code Development ๐Ÿ”ง

Workflow:

git checkout -b feature/AmazingFeature
git add .
git commit -m 'Add some AmazingFeature'
git push origin feature/AmazingFeature
# Open Pull Request

Code Standards:

  • Semantic HTML
  • BEM CSS methodology
  • Clean, commented JS
  • RTL Arabic support
  • Responsive design

๐Ÿ“„ License

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


๐ŸŒฑ Sustainability

Green Hosting
This website runs on environmentally friendly green hosting โœ…


๐Ÿš€ Deployment

Live: schoolid.karrarnazim.space

Local Development:

npx live-server --port=3000
# Static files, no build required

๐Ÿ“ˆ Analytics & Monitoring

  • Google Analytics
  • PageSpeed Insights
  • Uptime Monitoring: 99.9%

๐Ÿ”ฎ Roadmap

Short Term (Q1 2025):

  • More template designs
  • Multi-language support
  • Custom color schemes
  • QR code integration

Medium Term (Q2 2025):

  • Direct printing
  • Batch generation
  • Advanced photo editing
  • Database integration

Long Term (Q3 2025+):

  • Mobile app
  • Admin dashboard
  • API for developers
  • School system integration

๐Ÿ› Troubleshooting

  • Download button missing: Ensure all fields are filled and image uploaded
  • Canvas issues: Clear browser cache or try another browser
  • Arabic text issues: Check Noto Kufi Arabic font loading

๐Ÿ“ž Support & Contact


๐Ÿ™ Acknowledgments

  • Noto Fonts
  • Font Awesome
  • Green Web Foundation
  • All contributors

Made with ๐Ÿ’™ Students | ยฉ 2025 Karrar Nazim - All Rights Reserved.

โญ Star this repo if you find it useful! โญ

About

A free web tool for creating professional Iraqi school ID cards easily and quickly. Designed specifically to meet the needs of Iraqi schools and parents.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors