56 Commits

Author SHA1 Message Date
EthanHealy01
6f7a157340 parking this to work on OCR, I added all the icons, tool names / descriptions and changed the styling of the all tools bar 2025-07-28 14:41:33 +01:00
EthanHealy01
c91d0cc4b3 Merge branch 'design/V2/navbar' into V2 2025-07-25 12:25:02 +01:00
EthanHealy01
d37c7dcfb4 Squashed commit of the following:
commit 770f500ff3932479326b527682707914387c88a2
Author: EthanHealy01 <ethan.healy.21@gmail.com>
Date:   Fri Jul 25 12:06:20 2025 +0100

    change descriptoin

commit 0168fd9825d0098f2449bae803e21cb121f7329d
Author: EthanHealy01 <ethan.healy.21@gmail.com>
Date:   Fri Jul 25 11:56:24 2025 +0100

    change logos, favicon and browser tab title
2025-07-25 12:13:10 +01:00
Reece Browne
e4d480c7b3
Feature/v2/multiselect (#4024)
# Description of Changes
This pull request introduces significant updates to the file selection
logic, tool rendering, and file context management in the frontend
codebase. The changes aim to improve modularity, enhance
maintainability, and streamline the handling of file-related operations.
Key updates include the introduction of a new `FileSelectionContext`,
refactoring of file selection logic, and updates to tool management and
rendering.

### File Selection Context and Logic Refactor:
* Added a new `FileSelectionContext` to centralize file selection state
and provide utility hooks for managing selected files, selection limits,
and tool mode. (`frontend/src/contexts/FileSelectionContext.tsx`,
[frontend/src/contexts/FileSelectionContext.tsxR1-R77](diffhunk://#diff-bda35f1aaa5eafa0a0dc48e0b1270d862f6da360ba1241234e891f0ca8907327R1-R77))
* Replaced local file selection logic in `FileEditor` with context-based
logic, improving consistency and reducing duplication.
(`frontend/src/components/fileEditor/FileEditor.tsx`,
[[1]](diffhunk://#diff-481d0a2d8a1714d34d21181db63a020b08dfccfbfa80bf47ac9af382dff25310R63-R70)
[[2]](diffhunk://#diff-481d0a2d8a1714d34d21181db63a020b08dfccfbfa80bf47ac9af382dff25310R404-R438)

### Tool Management and Rendering:
* Refactored `ToolRenderer` to use a `Suspense` fallback for lazy-loaded
tools, improving user experience during tool loading.
(`frontend/src/components/tools/ToolRenderer.tsx`,
[frontend/src/components/tools/ToolRenderer.tsxL32-L64](diffhunk://#diff-2083701113aa92cd1f5ce1b4b52cc233858e31ed7bcf39c5bfb1bcc34e99b6a9L32-L64))
* Simplified `ToolPicker` by reusing the `ToolRegistry` type, reducing
redundancy. (`frontend/src/components/tools/ToolPicker.tsx`,
[frontend/src/components/tools/ToolPicker.tsxL4-R4](diffhunk://#diff-e47deca9132018344c159925f1264794acdd57f4b65e582eb9b2a4ea69ec126dL4-R4))

### File Context Enhancements:
* Introduced a utility function `getFileId` for consistent file ID
extraction, replacing repetitive inline logic.
(`frontend/src/contexts/FileContext.tsx`,
[[1]](diffhunk://#diff-95b3d103fa434f81fdae55f2ea14eda705f0def45a0f2c5754f81de6f2fd93bcR25)
[[2]](diffhunk://#diff-95b3d103fa434f81fdae55f2ea14eda705f0def45a0f2c5754f81de6f2fd93bcL101-R102)
* Updated `FileContextProvider` to use more specific types for PDF
documents, enhancing type safety.
(`frontend/src/contexts/FileContext.tsx`,
[[1]](diffhunk://#diff-95b3d103fa434f81fdae55f2ea14eda705f0def45a0f2c5754f81de6f2fd93bcL350-R351)
[[2]](diffhunk://#diff-95b3d103fa434f81fdae55f2ea14eda705f0def45a0f2c5754f81de6f2fd93bcL384-R385)

### Compression Tool Enhancements:
* Added blob URL cleanup logic to the compression hook to prevent memory
leaks. (`frontend/src/hooks/tools/compress/useCompressOperation.ts`,
[frontend/src/hooks/tools/compress/useCompressOperation.tsR58-L66](diffhunk://#diff-d7815fea0e89989511ae1786f7031cba492b9f2db39b7ade92d9736d1bd4b673R58-L66))
* Adjusted file ID generation in the compression operation to handle
multiple files more effectively.
(`frontend/src/hooks/tools/compress/useCompressOperation.ts`,
[frontend/src/hooks/tools/compress/useCompressOperation.tsL90-R102](diffhunk://#diff-d7815fea0e89989511ae1786f7031cba492b9f2db39b7ade92d9736d1bd4b673L90-R102))

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] I have updated relevant docs on [Stirling-PDF's doc
repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/)
(if functionality has heavily changed)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.
2025-07-25 09:37:52 +01:00
EthanHealy01
7403dee98d rename useIsOverflow hook and add comments to explain usage 2025-07-24 21:23:45 +01:00
EthanHealy01
8d96d0d31a add some comments to useIsOverflowing 2025-07-24 21:23:06 +01:00
EthanHealy01
227ed2de08
Merge branch 'V2' into design/V2/navbar 2025-07-24 20:49:31 +01:00
EthanHealy01
d7e0b506a8 remove fixed pixel sizes and inline styling 2025-07-24 17:17:04 +01:00
EthanHealy01
63e2791a8b stop using inline styling 2025-07-24 16:55:11 +01:00
EthanHealy01
9f58dc69e8 thin out some code 2025-07-22 16:59:28 +01:00
EthanHealy01
141dc8f8bb bad variable name 2025-07-22 16:52:37 +01:00
EthanHealy01
3a76d13097 use rem styling, make navbar scrollable on overflow, extrapolate styling to be re-usable and remove redundant nav item colors, rely on tailwind theme instead 2025-07-22 16:48:11 +01:00
EthanHealy01
4e5f595951
Feature/V2/Compress (#3982)
# Description of Changes

- Added the compression tool
- Slightly adjusted the padding on split, compress and the parent
sidebar component so things aren't so smushed
- Future work will be to allow multi-select on files and to add further
styling to the toolstep / sidebar component

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] I have updated relevant docs on [Stirling-PDF's doc
repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/)
(if functionality has heavily changed)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

---------

Co-authored-by: Ethan <ethan@MacBook-Pro.local>
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
2025-07-22 11:01:28 +01:00
EthanHealy01
7d09bf9e45 forgot to push 2025-07-21 22:10:23 +01:00
EthanHealy01
a53cce80b6 V2 Navbar Styling 2025-07-21 16:48:24 +01:00
Anthony Stirling
0549c5b191
testing and docker replacements (#3968)
This PR restructures testing scripts and Docker configurations to use centralized compose files, introduces new Docker Compose variants with integrated frontend services, and updates related CI workflows.

Migrate test scripts to reference testing/compose files and streamline test flows with forced rebuilds and direct curl checks.
Add ultra-lite, security, and security-with-login compose files under testing/compose, each defining both backend and frontend services.
Rename and adjust frontend imports and update CI workflows to build and validate the frontend separately.
2025-07-18 14:19:36 +01:00
Anthony Stirling
0742364a03
V2 frontend license checker (#3944)
# Added scripts for checking the licenses of dependencies similar to the backend app
2025-07-18 13:50:40 +01:00
Anthony Stirling
3fd52ed564 testing and docker replacements 2025-07-16 23:09:26 +01:00
Reece Browne
922bbc9076
Stirling 2.0 (#3928)
# Description of Changes

<!--

File context for managing files between tools and views
Optimisation for large files
Updated Split to work with new file system and match Matts stepped
design closer

-->

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] I have updated relevant docs on [Stirling-PDF's doc
repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/)
(if functionality has heavily changed)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.

---------

Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
2025-07-16 17:53:50 +01:00
Connor Yoh
248a14c571 Added config controller to be used by react frontend 2025-06-27 18:00:35 +01:00
ConnorYoh
29916d85b1
Merge pull request #3811 from reecebrowne/Stirling-2.0
Stirling 2.0
2025-06-25 16:07:22 +01:00
Reece
ffe5b9577b Page editor fixes and improvements and restructuring 2025-06-24 23:31:21 +01:00
Reece
2f90220b7b File handling fixes 2025-06-24 20:25:03 +01:00
ConnorYoh
bfc679edc5
Merge pull request #3663 from reecebrowne/Stirling-2.0
Stirling 2.0
2025-06-24 15:04:28 +01:00
Reece
27dd11ba8a Replace old components with moved versions from Stirling-2.0 2025-06-24 12:55:15 +01:00
Reece
16e56e3208 Resolve merge conflicts by using versions from Stirling-2.0 2025-06-24 12:20:31 +01:00
Reece
25e9db2570 Clean up 2025-06-20 23:00:26 +01:00
Reece
cbc5616a39 Translations for file management 2025-06-20 21:46:37 +01:00
Reece
215bb86a8e Bug fixing, file management changes 2025-06-20 20:22:18 +01:00
Reece
3ebf75ae6f File editor groundwork and refactor work 2025-06-20 17:51:24 +01:00
Reece
9c410865f9 Big refactor 2025-06-19 22:41:05 +01:00
Reece
868969192b Refactor 2025-06-19 19:47:44 +01:00
Reece
d981968e0f Page editor redesign 2025-06-18 18:12:15 +01:00
Reece
ae508730c3 Added quick access bar consolodated sidebars 2025-06-18 14:16:39 +01:00
Reece
bf6a74210f Remove repeated tailwind imports causing issues 2025-06-18 13:36:24 +01:00
Reece
e7995a0256 Page editor updates 2025-06-16 19:57:50 +01:00
Reece
7fc850b138 Update Page editor styling 2025-06-16 15:11:00 +01:00
Reece
5298cb1607 Ground work for page editor 2025-06-10 11:19:54 +01:00
Reece
41efd80dd5 RAINBOW MODE!!!! 2025-06-09 18:38:06 +01:00
Reece
342345cbb9 Fix viewer positioning error 2025-06-09 18:37:47 +01:00
Reece
1e0949ff2b Css fixes, Tailwind forward 2025-06-08 13:45:45 +01:00
Reece
b1584151ba Css overhaul 2025-06-06 17:20:06 +01:00
Reece
0c76bf2c8b Homepage refactor 2025-06-05 21:59:18 +01:00
Reece Browne
b5d84db3c8
Stirling 2.0 (#3645)
# Description of Changes

Please provide a summary of the changes, including:

Vite fixes
Indexxdb

Closes #(issue_number)

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] I have updated relevant docs on [Stirling-PDF's doc
repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/)
(if functionality has heavily changed)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DeveloperGuide.md#6-testing)
for more details.
2025-06-05 11:12:39 +01:00
Reece
7dd79aa2a1 Fix url params and fix vite 2025-06-04 23:02:53 +01:00
Reece
16f150a203 IndexxedDb refactored 2025-06-04 19:04:56 +01:00
Reece
a3c4f1a305 IndexedDb integration 2025-06-04 19:04:18 +01:00
Reece
09f05ac8d0 React translations 2025-05-29 17:26:32 +01:00
Reece
5f862f55d9 Restore theme toggle 2025-05-28 22:18:19 +01:00
Reece
15761ae743 Remove CRA and use Vite instead 2025-05-28 21:43:02 +01:00