- Access Pocket feed from user
- Retrieve text from pocketed articles
- Apply text to speech to said articles using Watson text to speech API
- Clean and save URL entry to Cassandra and associate it with an ID
- Save MP3 file in Minio and associate it with the ID saved in Cassandra
- Download audio file when Entry ID is requested
- Clojure:
- Pedestal
- Core.async
- Pocket:
- Watson:
- Cassandra:
- Minio:
- Send API key to fetch articles
- Request articles and fetch them from service, returns text ready to be converted
- Send Text and cleaned URL to convert to Speech
- Send text to be converted to speech
- Persist entry using URL from it and creating File ID for said entry
- Create a document containing the Entry ID, URL, User ID and create a File ID from the URL
- Persist file using File ID
- Save the MP3 file into File Storage with the File ID
- Send ID of article
- Fetch entry by ID and respective File ID
- Fetch File
- Fetch file by File ID
- Make file available for download
- Websocket endpoint provided
- Simple clojurescript implementation of a Web Listener
- React-native application based on Web Listener
- Use Feedly API
- Unbabel translation: https://unbabel.com/
- GraphQL implementation of the API: https://github.com/graphql-java/graphql-java