Skip to content

aneesa04/textSwift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🖌️ textSwift

An advanced text editor built from scratch with React. This project was developed as a side project for learning purposes. The app is fully responsive, but the main focus was on functionalities.

🦄 Features

Here's what you can do with textSwift:

  • Choose a Tool: Select from a variety of text editing tools such as bold, italic, underline, ordered and unordered lists, and text alignment.
  • Edit Text: Apply editing features to selected text.
  • Change Text Color and Background: Customize the text and background colors.
  • Highlight Text: Highlight text for emphasis.
  • Font Selection: Choose from a limited set of fonts.
  • Text Size Adjustment: Easily adjust the text size.
  • Speech-to-Text: Use the microphone to input text by speaking.
  • Distraction-Free Mode: Hide unnecessary UI elements to focus on writing.
  • Save and Load: Save your work to local storage and load it later.
  • Resize Text Area: Adjust the size of the text area.
  • Word, Character, and Reading Time Count: View the number of words, characters, and estimated reading time in the footer.

🧩 Issues and Improvements

Current Issues:

  • Text editing features only apply to selected text.
  • Limited font options available.
  • Timers don't have a back arrow, meaning that once you select the time, you can't shut it off without refreshing.
  • The input for color isn't working in safari
  • This application does not work well in iOS devices

Possible Improvements:

  • Add Keyboard Shortcuts: Speed up text editing with keyboard shortcuts for common actions like bold, italic, underline, and text alignment.
  • Expand Font Selection: Add more fonts to the font picker.
  • Introduce More Themes: Add custom themes.
  • Additional Text Formatting Options: Include options for strikethrough, and subscript/superscript.
  • Advanced Text Styling: Add options for adjusting letter spacing, line height, and text shadows.
  • Shape Drawing Tools: Introduce tools to draw shapes like circles, rectangles, and arrows.
  • Image Insertion: Allow users to insert and manipulate images within the text area.
  • Collaboration Features: Enable real-time collaboration with other users.
  • Export Options: Provide options to export the text as PDF, DOCX, or HTML.
  • Version History: Implement a version history feature to track changes and revert to previous versions.
  • Enhanced Speech-to-Text: Improve the speech-to-text functionality with support for multiple languages and better accuracy.
  • Customizable Toolbar: Allow users to customize the toolbar with their preferred tools and features.

💬 Contributing

Contributions are welcome! Feel free to collaborate, add new features, or work on the current issues. If you have any suggestions or encounter any problems, please open an issue or submit a pull request.

🚦 Running the Project

To run the project in your local environment, follow these steps:

  1. Clone the repository to your local machine.
  2. Run npm install or yarn in the project directory to install the required dependencies.
  3. Run npm run start or yarn start to start the project.
  4. Open http://localhost:5173 (or the address shown in your console) in your web browser to view the app.

Enjoy using TextSwift! If you have any suggestions or encounter any issues, feel free to contribute or open an issue on GitHub.

🎥 A short demo

textSwift-demo.-.Made.with.Clipchamp.mp4