Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
114 commits
Select commit Hold shift + click to select a range
762ead2
Update README.md
TMHSDigital Jul 9, 2024
30af8c6
Update README.md
TMHSDigital Jul 9, 2024
dd7c067
Update README.md
TMHSDigital Jul 9, 2024
442a5db
Update README.md
TMHSDigital Jul 9, 2024
714cc6c
Update README.md
TMHSDigital Jul 9, 2024
f9f38c0
Update README.md
TMHSDigital Jul 9, 2024
fc748b1
Update README.md
TMHSDigital Jul 9, 2024
9c603f2
Claude update
TMHSDigital Jul 9, 2024
62aad30
Update image-resizer.html
TMHSDigital Jul 9, 2024
8ed24a6
Update color-palette.html
TMHSDigital Jul 9, 2024
2aef502
Update about.html
TMHSDigital Jul 9, 2024
a26e58c
Add files via upload
TMHSDigital Jul 9, 2024
cda0209
Delete js/updated-index-html (1).html
TMHSDigital Jul 9, 2024
8194611
Rename ascii-art-css.txt to ascii-art.css
TMHSDigital Jul 9, 2024
9017207
Rename js/ascii-art.css to ascii-art.css
TMHSDigital Jul 9, 2024
bc25be5
Rename ascii-art.css to css/ascii-art.css
TMHSDigital Jul 9, 2024
d4e33d0
Delete js/updated-common-js.txt
TMHSDigital Jul 9, 2024
70a2160
Rename qr-generator-js.txt to qr-generator.js
TMHSDigital Jul 9, 2024
45aae71
Rename qr-generator-html.html to qr-generator.html
TMHSDigital Jul 9, 2024
265c277
Delete index.html
TMHSDigital Jul 9, 2024
d4f24a2
Delete js/updated-index-html.html
TMHSDigital Jul 9, 2024
53792c8
Delete js/updated-index-html (2).html
TMHSDigital Jul 9, 2024
9116e25
Delete js/common.js
TMHSDigital Jul 9, 2024
a6735f7
Delete js/updated-common-js (1).txt
TMHSDigital Jul 9, 2024
6e6476a
Rename qr-generator.html to qr-generator.html
TMHSDigital Jul 9, 2024
d7fc134
Add files via upload
TMHSDigital Jul 9, 2024
4314469
Rename full-updated-index-html.html to index.html
TMHSDigital Jul 9, 2024
d1e3905
Create common.js
TMHSDigital Jul 9, 2024
90879f4
Rename ascii-art-html.html to ascii-art.html
TMHSDigital Jul 9, 2024
cf8f3f0
Update styles.css
TMHSDigital Jul 9, 2024
586114f
Create qr-generator.css
TMHSDigital Jul 9, 2024
d1d02c6
Update qr-generator.css
TMHSDigital Jul 9, 2024
5f079c4
Update qr-generator.html
TMHSDigital Jul 9, 2024
711c49e
Update qr-generator.js
TMHSDigital Jul 9, 2024
2ee99da
Update color-palette.html
TMHSDigital Jul 9, 2024
243b5c6
Update color-palette.css
TMHSDigital Jul 9, 2024
4957224
Update color-palette.js
TMHSDigital Jul 9, 2024
c122407
Update ascii-art.html
TMHSDigital Jul 9, 2024
8993484
Update ascii-art.css
TMHSDigital Jul 9, 2024
31b1caf
Update and rename ascii-art-js.txt to ascii-art.js
TMHSDigital Jul 9, 2024
08200a4
Update about.html
TMHSDigital Jul 9, 2024
a2bcf2c
Merge pull request #1 from TMHSDigital/Cutting-Edge-Theme
TMHSDigital Jul 9, 2024
dd6a4f8
Update README.md
TMHSDigital Jul 9, 2024
9980067
Create FUTURE-FEATURES.md
TMHSDigital Jul 9, 2024
e596b10
Update README.md
TMHSDigital Jul 9, 2024
f1be8e1
Rename FUTURE-FEATURES.md to docs/FUTURE-FEATURES.md
TMHSDigital Jul 9, 2024
7bdfee2
Rename README.md to docs/README.md
TMHSDigital Jul 9, 2024
e96ae08
Create config.yml (JEKYLL CONFIG FOR .md TABS)(ADDED.md TO DOCS FOLDER)
TMHSDigital Jul 9, 2024
ed2385c
Update README.md
TMHSDigital Jul 9, 2024
a8ea219
add project description .md
TMHSDigital Jul 11, 2024
0019f6a
PROJECT-OVERVIEW.md creation
TMHSDigital Jul 11, 2024
20b9326
Create Text-to-speech.js
TMHSDigital Aug 10, 2024
f5e8902
Rename Text-to-speech.js to text-to-speech.js
TMHSDigital Aug 10, 2024
105a6d5
Create text-to-speach.html
TMHSDigital Aug 10, 2024
95a25c8
Create TO-DO.md
TMHSDigital Aug 10, 2024
e9e7d5b
Update text-to-speech.js
TMHSDigital Aug 10, 2024
8428d15
Update styles.css
TMHSDigital Aug 10, 2024
1c907dd
Create text-to-speech.css
TMHSDigital Aug 10, 2024
6a37e9e
Update text-to-speach.html
TMHSDigital Aug 10, 2024
52d730b
Update color-palette.html
TMHSDigital Aug 10, 2024
5bdd5f1
Update image-resizer.html
TMHSDigital Aug 10, 2024
c509238
Update about.html
TMHSDigital Aug 10, 2024
bcc9f8e
Update qr-generator.html
TMHSDigital Aug 10, 2024
7826b39
Update index.html
TMHSDigital Aug 10, 2024
da3b9c9
Update text-to-speech.html and js/text-to-speech.js
TMHSDigital Dec 24, 2024
ce9d22f
Add .vscode/settings.json to ignore main branch in GitHub pull requests
TMHSDigital Dec 24, 2024
940d1ff
NEW STRUCTURE - VERSION 1
TMHSDigital Dec 24, 2024
f4f29b2
Remove unused config.yml file
TMHSDigital Dec 24, 2024
0c4c2c0
Refactor QR code component styles
TMHSDigital Dec 24, 2024
cf62a2d
Refactor QR code component styles and add password history storage
TMHSDigital Dec 24, 2024
7acb6cd
Refactor meta description in index.html and add secure password gener…
TMHSDigital Dec 24, 2024
40309ec
Refactor QR code component styles and add URL Shortener tool
TMHSDigital Dec 24, 2024
9c66564
Refactor theme initialization and tool listing generation
TMHSDigital Dec 24, 2024
17dea86
Refactor constants and helpers
TMHSDigital Dec 24, 2024
bf7e563
Refactor file size validation and add helper functions
TMHSDigital Dec 24, 2024
c8284a7
update documentation
TMHSDigital Dec 24, 2024
932a50b
Refactor tool paths to include "pages" directory
TMHSDigital Dec 24, 2024
dfd2aa2
Refactor about page to include "pages" directory
TMHSDigital Dec 24, 2024
88d2f10
Refactor tool paths to include "./pages" directory
TMHSDigital Dec 24, 2024
7b06191
Refactor image resizer CSS styles for better responsiveness and usabi…
TMHSDigital Dec 24, 2024
b73546a
Refactor color palette CSS styles for better responsiveness and usabi…
TMHSDigital Dec 25, 2024
adbab2c
Refactor social share component CSS styles for better responsiveness …
TMHSDigital Dec 25, 2024
00bd021
Refactor image directory structure and add social share component CSS…
TMHSDigital Dec 26, 2024
1713c18
Refactor component exports and types
TMHSDigital Dec 26, 2024
3e80eea
Refactor alert component styles and DOM utilities
TMHSDigital Dec 26, 2024
17bec48
Refactor file paths for CSS and JavaScript resources
TMHSDigital Dec 26, 2024
0aebf1c
Refactor file paths for JavaScript resources
TMHSDigital Dec 26, 2024
c1f10de
Refactor file paths for CSS and JavaScript resources
TMHSDigital Dec 26, 2024
b3804a1
Refactor theme variables and styles
TMHSDigital Dec 26, 2024
c46de84
Refactor file paths for JavaScript resources and add smooth scrolling…
TMHSDigital Dec 26, 2024
2df8552
Refactor file paths for JavaScript resources and add smooth scrolling…
TMHSDigital Dec 26, 2024
cabc2a2
Refactor file paths for JavaScript resources and update text-to-speec…
TMHSDigital Dec 26, 2024
a9daa4b
Refactor file paths for JavaScript resources and update text-to-speec…
TMHSDigital Dec 26, 2024
2e19db1
Refactor file paths for JavaScript resources and remove unused code
TMHSDigital Dec 26, 2024
c2ebeb1
Refactor file paths for JavaScript resources and update QRCode featur…
TMHSDigital Dec 26, 2024
8e2838f
Refactor file paths for JavaScript resources and update URL shortener…
TMHSDigital Dec 26, 2024
ac2ccf4
Refactor file paths for JavaScript resources and update UI components
TMHSDigital Dec 26, 2024
76cc4be
Refactor file paths for JavaScript resources and update theme system
TMHSDigital Dec 26, 2024
8342af9
Refactor CSS files for JavaScript resources and update UI components
TMHSDigital Dec 26, 2024
a78d926
Refactor file paths for JavaScript resources and remove unused files
TMHSDigital Dec 26, 2024
e8a628e
Refactor file paths for JavaScript resources and update UI components
TMHSDigital Dec 26, 2024
3a5a0c6
Refactor file paths for JavaScript resources and update UI components
TMHSDigital Dec 26, 2024
99dad81
Refactor file paths for JavaScript resources and update tool navigation
TMHSDigital Dec 26, 2024
ededb1f
Refactor file paths for JavaScript resources and update tool navigation
TMHSDigital Dec 26, 2024
01d7e67
Refactor file paths for JavaScript resources and update tool navigation
TMHSDigital Dec 26, 2024
e1efc22
Refactor file paths for JavaScript resources and update tool navigati…
TMHSDigital Dec 26, 2024
9f03396
Update text-to-speech UI elements and refactor file paths for JavaScr…
TMHSDigital Dec 2, 2025
cdfef6d
Implement dynamic layout injection for header and footer across pages
TMHSDigital Dec 2, 2025
0072cf1
Update file paths for CSS and JavaScript resources across multiple pa…
TMHSDigital Dec 2, 2025
9a77b85
Refactor file paths for BaseTool and update imports in various featur…
TMHSDigital Dec 2, 2025
f598765
Remove Alert, Modal, Tooltip components and related types from the pr…
TMHSDigital Dec 2, 2025
d497a65
Refactor file paths for CSS and JavaScript resources to use relative …
TMHSDigital Dec 2, 2025
776ae4d
Remove deprecated Text-to-Speech API and related UI components; refac…
TMHSDigital Dec 2, 2025
98009b8
Add landing page styles and update CSS imports
TMHSDigital Dec 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"env": {
"browser": true,
"es2021": true,
"jest": true
},
"extends": "eslint:recommended",
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module"
},
"rules": {
"indent": ["error", 4],
"linebreak-style": ["error", "windows"],
"quotes": ["error", "single"],
"semi": ["error", "always"],
"no-unused-vars": ["warn"],
"no-console": ["warn", { "allow": ["warn", "error"] }],
"prefer-const": "error",
"arrow-body-style": ["error", "as-needed"],
"curly": "error",
"eqeqeq": "error",
"no-var": "error"
}
}
99 changes: 99 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# Dependencies
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
package-lock.json
yarn.lock

# Build output
dist/
build/
*.min.js
*.min.css

# IDE and editor files
.vscode/*
!.vscode/extensions.json
!.vscode/settings.json
.idea/
*.swp
*.swo
.DS_Store
Thumbs.db

# Environment variables
.env
.env.local
.env.*.local

# Testing
coverage/
.nyc_output/
jest-results/

# Temporary files
*.log
*.tmp
*.temp
.cache/

# Generated files
pages/*
!pages/.gitkeep

# Image source files and working copies
*.psd
*.ai
*.sketch
*.fig
*.xd
*.xcf
*.raw
*.cr2
*.nef
*.dng

# Image optimization caches
.imagemin-cache/
.responsive-images-cache/

# Generated image formats
images/**/*.webp
images/**/*-resized.*
images/**/*-thumbnail.*
images/**/*-optimized.*

# Keep original images
!images/**/*.svg
!images/**/*.png
!images/**/*.jpg
!images/**/*.jpeg
!images/**/*.gif

# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Debug logs
debug.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional stylelint cache
.stylelintcache

# Rollup build cache
.rollup.cache/
36 changes: 36 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.0.0] - 2024-12-24

### Added
- Initial release of Digital Services Hub
- Text to Speech tool with multiple voice options
- Image Resizer with aspect ratio preservation
- Color Palette generator with harmony options
- ASCII Art converter with customization
- QR Code generator with styling options
- Base Tool class for shared functionality
- Utility modules for common operations
- Theme support (light/dark)
- Keyboard shortcuts
- Responsive design
- Accessibility features

### Security
- Input sanitization
- XSS prevention
- CSRF protection
- Content Security Policy

### Documentation
- README.md with feature documentation
- PROJECT-DESCRIPTION.md with technical details
- PROJECT-OVERVIEW.md with architecture details
- FUTURE-FEATURES.md with roadmap
- Code documentation with JSDoc
- Contributing guidelines
57 changes: 57 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Contributing to Digital Services Hub

We love your input! We want to make contributing to Digital Services Hub as easy and transparent as possible, whether it's:

- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Becoming a maintainer

## Development Process

We use GitHub to host code, to track issues and feature requests, as well as accept pull requests.

1. Fork the repo and create your branch from `main`.
2. If you've added code that should be tested, add tests.
3. If you've changed APIs, update the documentation.
4. Ensure the test suite passes.
5. Make sure your code lints.
6. Issue that pull request!

## Pull Request Process

1. Update the README.md with details of changes to the interface, if applicable.
2. Update the CHANGELOG.md with a note describing your changes.
3. The PR will be merged once you have the sign-off of at least one maintainer.

## Any contributions you make will be under the MIT Software License

In short, when you submit code changes, your submissions are understood to be under the same [MIT License](LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern.

## Report bugs using GitHub's [issue tracker]

We use GitHub issues to track public bugs. Report a bug by [opening a new issue]().

## Write bug reports with detail, background, and sample code

**Great Bug Reports** tend to have:

- A quick summary and/or background
- Steps to reproduce
- Be specific!
- Give sample code if you can.
- What you expected would happen
- What actually happens
- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work)

## Code Style

* Use 4 spaces for indentation
* Use camelCase for variable and function names
* Add JSDoc comments for functions
* Follow ESLint rules

## License

By contributing, you agree that your contributions will be licensed under its MIT License.
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2024 T
Copyright (c) 2024 Digital Services Hub

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
1 change: 0 additions & 1 deletion README.md

This file was deleted.

72 changes: 72 additions & 0 deletions css/base/layout.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
/* Container */
.container {
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 0 1rem;
}

/* Grid layouts */
.grid {
display: grid;
gap: 2rem;
}

.tools-grid {
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.features-grid {
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

/* Flexbox layouts */
.flex {
display: flex;
}

.flex-center {
display: flex;
align-items: center;
justify-content: center;
}

.flex-between {
display: flex;
align-items: center;
justify-content: space-between;
}

.flex-column {
display: flex;
flex-direction: column;
}

/* Spacing utilities */
.mt-1 { margin-top: 0.5rem; }
.mt-2 { margin-top: 1rem; }
.mt-3 { margin-top: 1.5rem; }
.mt-4 { margin-top: 2rem; }

.mb-1 { margin-bottom: 0.5rem; }
.mb-2 { margin-bottom: 1rem; }
.mb-3 { margin-bottom: 1.5rem; }
.mb-4 { margin-bottom: 2rem; }

.mx-auto { margin-left: auto; margin-right: auto; }

/* Responsive utilities */
@media (max-width: 768px) {
.container {
padding: 0 0.5rem;
}

.tools-grid,
.features-grid {
grid-template-columns: 1fr;
}

.flex-responsive {
flex-direction: column;
}
}
66 changes: 66 additions & 0 deletions css/base/reset.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
/* Reset and base styles */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

/* Typography */
body {
font-family: 'Roboto', sans-serif;
line-height: 1.6;
}

h1, h2, h3, h4 {
font-family: 'Orbitron', sans-serif;
margin-bottom: 1rem;
}

a {
text-decoration: none;
color: inherit;
transition: var(--transition);
}

a:hover {
color: var(--primary-color);
}

/* Lists */
ul, ol {
list-style: none;
}

/* Images */
img {
max-width: 100%;
height: auto;
display: block;
}

/* Form elements */
button,
input,
select,
textarea {
font: inherit;
color: inherit;
border: none;
background: none;
}

button {
cursor: pointer;
}

/* Focus styles */
:focus {
outline: 2px solid var(--primary-color);
outline-offset: 2px;
}

/* Selection */
::selection {
background-color: var(--primary-color);
color: var(--text-light);
}
17 changes: 0 additions & 17 deletions css/color-palette.css

This file was deleted.

Loading