Description:
Form-Docs App is a cross-platform desktop and mobile application built using Rust, Yew, and Tauri. It enables users to convert .docx
files into interactive forms by detecting specific text patterns and transforming them into input fields like text boxes or checkboxes. This simplifies the process of filling out documents, avoiding the need for traditional word processors like Microsoft Word.
Designed to work entirely offline, Form-Docs App is ideal for use in remote environments without internet access. Users can fill in forms directly within the app, save their progress, and export the completed document as either a .docx
file or a PDF.
Key Features:
- .docx File Processing: Reads
.docx
documents and detects placeholders or predefined text patterns. - Interactive Form Generation: Automatically turns text patterns into input fields such as text areas, checkboxes, or dropdowns.
- Offline Mode: No internet connection is required; all functionalities work offline.
- PDF Export: Users can export filled forms as PDF files.
- Cross-Platform Support: Built with Tauri and Yew, the app runs on both desktop and mobile devices.
Technologies:
- Rust: Provides robust backend performance.
- Yew: Powers the dynamic, interactive frontend.
- Tauri: Bundles the application for cross-platform use on desktop environments.
- docx-rs: Reads and manipulates
.docx
files. - regex: Searches for and identifies specific text patterns.
- printpdf / lopdf: Generates PDFs from completed forms.
-
Ensure you have Rust and Cargo installed. If you haven't installed them yet, you can follow the instructions at rustup.rs.
-
Install Tauri CLI:
cargo install tauri-cli
-
Clone the repository:
git clone https://github.com/julio-marquezin/form-docs.git
-
Navigate to the project directory:
cd form-docs
-
Build the project to install the dependencies:
cargo tauri build
-
Run the application in your development environment:
cargo tauri dev
Contributions are welcome! Follow these steps to contribute:
-
Fork the repository.
-
Create a new branch:
git checkout -b feature/my-new-feature
-
Make your changes and commit them:
git commit -m "Add my new feature"
-
Push to your fork:
git push origin feature/my-new-feature
-
Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for more details.