Giter Site home page Giter Site logo

kod3000 / speakeasy-ios Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 1.0 1.66 MB

An iOS app that speaks your pdf documents to you. Find it soon on the iOS Store, free to use with no ads.

License: MIT License

Swift 97.75% Ruby 2.25%
swift swiftui apple ios ipad iphone speech-to-text

speakeasy-ios's Introduction

SpeakEasy

text-sm.webp

Speak Easy is an iOS application being developed using SwiftUI that will allow users to easily convert PDF documents into speech. With Speak Easy, you can select PDFs from your local device or reference PDFs from URLs and have them read aloud to you.

Features

  • PDF Selection: Choose PDF files from your local device or reference PDFs from URLs.
  • Text-to-Speech: Convert the contents of PDF documents into speech.
  • Customization: Customize the reading speed, voice, and other speech settings.
  • Accessibility: Improve accessibility by enabling users to listen to PDF content rather than read it visually.
  • Offline Support: PDFs can be stored locally for offline access and speech conversion.

Getting Started

To get started with Speak Easy, follow these steps:

  1. Download and Install: Download Speak Easy from the App Store and install it on your iOS device. (coming soon)
  2. Launch the App: Open the Speak Easy app on your device.
  3. Select PDF: Choose a PDF document by either selecting it from your local device or providing a URL to reference it.
  4. Convert to Speech: Once the PDF is selected, initiate the text-to-speech conversion to listen to the contents of the PDF document.

Requirements

  • iOS 17.0+
  • Compatible with iPhone and iPad

Technologies Used

  • SwiftUI
  • AVFoundation for text-to-speech conversion
  • URLSession for fetching PDFs from URLs
  • Core Data for local storage of PDF documents

Feedback

This was a sprint project; it took me less than a few days to conceptualize and code into existence. I made it to help me in my studies with reading some computer science papers while on the move. I'm always open to improving existing work and would love to hear your feedback. If you have any suggestions, feature requests, or encounter any issues while using the app, please don't hesitate to contact me at [email protected].

Contribution

All contributions very welcome! I opened source this project in hopes to help others get a baseline on how to get an app up and running on iOS. I hope its useful, and if you want to add feel free to fork away. And remember, contribution is not only PRs and code, but any help with docs or helping other developers to solve issues are very appreciated! Thanks in advance!

License

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

speakeasy-ios's People

Contributors

kod3000 avatar

Stargazers

wangxuncai avatar Aman Sharma avatar Erik Drobne avatar

Watchers

 avatar

Forkers

zhy1905

speakeasy-ios's Issues

Error Handling ..

  • Need error handling for files that are no longer on the device
  • if a page that is trying to be read has no string elements, than say that to the user!
  • if the user has no internet connection and trys to download a pdf.. the select url should not be an option
  • Lower bar of the page previews needs a set height as it some times disappears due to resizing

history view

Here we would have a history of the pdf files the user has played. history should not repeat the same file

Missing Domain ..

Need a domain that gives info on this facing public

Also make sure to have the following URLS :

  • Marketing (This can be as simple as just a single image and tag line.)
  • Support URL ( FAQ ?? .. or link to email address ? )

Start and Stop Logic

The start and stop logic when reading needs to be fine tuned.

Things we should be looking for is :

  1. The user just wants to temporarly pause.
  2. The user wants to stop reading one section and go to another.

Structure the project.

The structure project needs to be clean and readable. Make sure to separate the class files as needed.

Local File View

We need to allow the user to select the file they want to load int

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.