Giter VIP home page Giter VIP logo

aranduka's Introduction

Hi there 👋

My name is Roberto Alsina. You can find me at my website: ralsina.me or follow me on twitter or watch my videos (in spanish) at YouTube

Here are lots of code in different states of disrepair. Actual useful projects I started have their own organizations, such as Nikola or rst2pdf

aranduka's People

Contributors

carpe-diem avatar fisadev avatar humitos avatar ralgozino avatar ralsina avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

chrmorais

aranduka's Issues

Abstraction of basic UI stuff like modals

We could create a basic core module to do some UI stuff that is repeated in 
many places. I'm currently thinking of displaying modals with messages for the 
user or asking for confirmation (QMessageBox), but it could be extended to 
other stuff.

For example, some plugins that don't have a UI (like the OPDS publisher) may 
need to display some messages to the user in case of error, or to show some 
information (like the URL where the catalog is published). With this module we 
could have all these type of messages centralized and let the plugin forget 
about importing Qt's modules. 

Needless to say, it would also help us repeat less code.

What do you think? What would you call it?

Original issue reported on code.google.com by andresgattinoni on 1 Feb 2011 at 7:01

See if something can be done using the Hathi Trust's APIs

There is an API for bibliographic data:

http://www.hathitrust.org/bib_api

And one for actual pages of books:

http://www.hathitrust.org/data_api

It's non-standard and I have no idea how hard to use it could be.

Original issue reported on code.google.com by roberto.alsina on 9 Feb 2011 at 1:29

Polish one store plugin, then make then all similar

The store plugins are all very similar, but they are not implemented in the 
same way.

Also, the look of the output is ugly.

So, I will take the feedbooks plugin polish the heck out of it and use it as a 
prototype. Then, I will take the others and make them work and look the same.

Original issue reported on code.google.com by roberto.alsina on 7 Feb 2011 at 3:09

The epub viewer sucks

Well,that. It throws exception,the UI is lacking, etc etc.

Original issue reported on code.google.com by roberto.alsina on 27 Jan 2011 at 2:31

Shelf views should remember their position

If you are viewing the list of titles, and double-click on a book to edit, then 
click on "titles" again, you are placed at the top of the list.

You should stay at the same position you were in.

Original issue reported on code.google.com by roberto.alsina on 6 Feb 2011 at 1:59

  • Blocked on: #52

Main window size

The main window is a little small for large displays. Moreover, the annoying 
1-pixel tolerance for the resize cursor in Ubuntu 
(http://brainstorm.ubuntu.com/item/8473/) makes it hard to enlarge it. 

Suggestions:
- Make the main window larger
- Have the main window resize proportionally to the size of the screen.
- Have Aranduka remember the size of the main window from the last time it was 
closed.

Any (or all) of the above will do.

Original issue reported on code.google.com by andresgattinoni on 26 Jan 2011 at 9:44

Add support for downloading eBooks in multiple formats in the Manybooks.net book store plugin

Currently the Manybooks.net book store plugin only allows you to download books 
in ePub format (which is the one published on the OPDS catalog). We could hack 
the plugin using the list of formats on the converter plugin, so that you could 
download the book directly in the format you prefer.

Original issue reported on code.google.com by andresgattinoni on 7 Feb 2011 at 1:18

Barcode Scanner

Write a plugin that scans barcodes and creates the book in the database.

I have done it before, should be semi-trivial.

Original issue reported on code.google.com by roberto.alsina on 28 Jan 2011 at 4:45

Make the tools menu dynamic

Currently the tools menu is populated on startup.
That means you don't get the plugins you enable until you restart the app.

Also, disabled plugins should probably be displayed as disabled.

Original issue reported on code.google.com by roberto.alsina on 28 Jan 2011 at 7:17

Covers

Pasos para reproducir la falla:

1. Ingresar el ISBN 9871187599 ("El Idiota", de Dostoievski)

Se esperaría ver la imagen de la tapa. Actualmente, está leyendola desde esta 
web:

'http://covers.openlibrary.org'

Pero, hay casos (como este) en el que la tapa no aparece en covers.openlibrary, 
pero si en google.books (http://bks3.books.google.com/books?id=zqKGPwAACAAJ)

Original issue reported on code.google.com by [email protected] on 6 Sep 2010 at 10:23

Move cover downloads to the guesser plugins

Right now, when you obtain a book, if the bookstore plugin knows how to get the 
cover, it will do it by passing an explicit URL.

That's good.

OTOH, if the URL is not provided, or fails, it will try to guess a cover and 
get it. That should move from the Book model into the guesser plugins.

Original issue reported on code.google.com by roberto.alsina on 27 Jan 2011 at 2:35

  • Blocking: #41

New "About this book" page

Design an "About this book" page, which will be displayed when a user 
double-clicks on a book.

It should be an HTML page which shows the book's information (title, author/s, 
cover, tags, identifiers and associated files) and the possibility to access 
the book editor.

The page should also display dynamic gadgets (chunks of HTML that allow you to 
perform different operations related to the book in question) that would be 
associated to plugins.

Original issue reported on code.google.com by andresgattinoni on 1 Feb 2011 at 10:50

The Alibris guesser repeats books

Guess with author "Cory Doctorow" and you get the same 4 books repeated 3 times.

Original issue reported on code.google.com by roberto.alsina on 2 Feb 2011 at 4:02

Integrate more catalog plugins

That was done in an old branch: 

http://code.google.com/p/aranduka/source/browse/?r=smashwords#hg%2Fsmashwords

Original issue reported on code.google.com by roberto.alsina on 25 Jan 2011 at 9:56

Review of the removal of books

I implemented the functionality of the "delete" option in the context menu in 
r20ec584eb1. Could you check it out? I'm not sure if the file handling should 
be in the main module, but... 

Original issue reported on code.google.com by andresgattinoni on 26 Jan 2011 at 11:24

Exception on method on_guessers_currentIndexChanged

When guessing a book with Google Guesser I get this error:

EP: set([u'Alibris Guesser', u'Books By Author', u'Folder Device', u'Books By 
Tag', u'Barcode Scanner', u'FeedBooks Converter', u'OPDS Publisher', u'Books By 
Title', u'manybooks_net', u'Google Books Guesser', u'FeedBooks', 
u'Manybooks.net Converter', u'archive_org', u'RSS'])
CIC
Traceback (most recent call last):
  File "/home/elbarto/aranduka/src/book_editor.py", line 73, in on_guessers_currentIndexChanged
    self.guesser = self.guesser_dict[unicode(text)]
KeyError: u'Google Books'
EP: set([u'Alibris Guesser', u'Books By Author', u'Folder Device', u'Books By 
Tag', u'Barcode Scanner', u'FeedBooks Converter', u'OPDS Publisher', u'Books By 
Title', u'manybooks_net', u'Google Books Guesser', u'FeedBooks', 
u'Manybooks.net Converter', u'archive_org', u'RSS'])
<GoogleGuesser object at 0x94035ec> <class 'GoogleGuesser'>

I'm suppose the problem is with the name of the plugin, but since I don't know 
really what happens there, I don't want to mess things up by trying to fix it 
:-)

Original issue reported on code.google.com by andresgattinoni on 2 Feb 2011 at 10:55

Guessers are listed even if they're not enabled

On the book editor all the available Guessers are being listed even if they're 
not enabled on the plugins configuration.

Original issue reported on code.google.com by andresgattinoni on 26 Jan 2011 at 3:24

Add posibility to stop the OPDS catalog server

We should add the posibility of stopping the OPDS catalog server without the 
need closing Aranduka.
One possibility would be to change the menu's action from "Publish catalog" to 
"Stop catalog server" or something like that.
But that raises the issue of how to implement that within the plugin structure.

Original issue reported on code.google.com by andresgattinoni on 4 Feb 2011 at 2:25

Implement RSS->ePub gateway

Roberto Alsina mentioned he had done something like this and it would be nice 
to have it integrated to Aranduka, so that you can convert your feeds into one 
or more .epub files and read it on your favourite ebook-reader.

Original issue reported on code.google.com by andresgattinoni on 28 Jan 2011 at 5:41

Remove google_books folder from integrate branch

What's the point of the google_book folder at the root of the integrate branch? 
It should probably be deleted.

Original issue reported on code.google.com by andresgattinoni on 27 Jan 2011 at 12:05

ODPS publisher fails miserably if the 8080 port is being used

ODPS publisher plugin listents on localhost:8080 (this is hardcoded). If the 
port is being used, it fails miserably without displaying any error to the user.

1 - The user should be able to configure address and port on the plugin's 
configuration.

2 - The plugin should show a proper error to the user if it can't bind to the 
configured address/port.

Original issue reported on code.google.com by andresgattinoni on 30 Jan 2011 at 4:28

Add support for comic formats

Add support for comics file formats.
More information about this formats at Wikipedia:
http://en.wikipedia.org/wiki/Comic_Book_Archive_file


Original issue reported on code.google.com by andresgattinoni on 28 Jan 2011 at 5:37

Tags/Shelves inconsistency

There's an inconsistency with the usage of the name "tags" or "shelves" for 
book tags.

On the database models we're calling them tags. The same in the menu at the 
left of the list. However, when you edit a book you define shelves.

We should pick one and stick to it.

Original issue reported on code.google.com by andresgattinoni on 25 Jan 2011 at 3:05

Implement FB2 parser/viewer

The format looks simple enough.

Original issue reported on code.google.com by roberto.alsina on 6 Feb 2011 at 1:00

Sanitize book's popup menu

The menu shows the book's list of files.
It should only show the files if the actual file is there. 

That way it won't display empty files and files that are currently downloading.

Original issue reported on code.google.com by roberto.alsina on 27 Jan 2011 at 1:04

Display error message when failing to read epub file

What steps will reproduce the problem?
1. Add an invalid epub file to your Aranduka
2. Attempt to open it

What is the expected output? What do you see instead?
The program should display an error message saying that the file has an 
incorrect format. Instead it doesn't do anything.

Please use labels and text to provide additional information.

Traceback information:

Traceback (most recent call last):
  File "main.py", line 177, in <lambda>
    lambda f = f: self.openEpub(f.file_name))
  File "main.py", line 155, in openEpub
    viewer = EpubViewer(fname)
  File "/home/elbarto/aranduka/src/epubviewer.py", line 11, in __init__
    self.epub = EpubDocument(fname)
  File "/home/elbarto/aranduka/src/epubparser.py", line 17, in __init__
    self.book = zipfile.ZipFile(fname, "r")
  File "/usr/lib/python2.6/zipfile.py", line 696, in __init__
    self._GetContents()
  File "/usr/lib/python2.6/zipfile.py", line 716, in _GetContents
    self._RealGetContents()
  File "/usr/lib/python2.6/zipfile.py", line 728, in _RealGetContents
    raise BadZipfile, "File is not a zip file"
zipfile.BadZipfile: File is not a zip file

Original issue reported on code.google.com by andresgattinoni on 25 Jan 2011 at 2:40

Add support for managing quotes

I suggest we add support for managing quotes. It could be a good step in the 
way of making Aranduka more "sociable".

Aranduka could help the user keep record of his favourite quotes, save them, 
tag them, search them, share them on social networks (Twitter, Facebook, 
GoodReads -this last one also lets you save quotes), etc. As I suggested on 
issue 16, we could even have our file viewers let you select and save a quote 
in two clicks.

I'm thinking we could add the following entity:

Quote
=====
id
text
book_id (optional)
author_id (optional)
page (optional)
tags (many-to-many)

What do you think? In favour? Against? Suggesstions/corrections/questions?


Original issue reported on code.google.com by andresgattinoni on 1 Feb 2011 at 11:04

Orphan authors

What steps will reproduce the problem?
1. Edit a book's info
2. Change the author
3. Save
4. Go to the authors view

What is the expected output? What do you see instead?
Authors without any books shouldn't be listed.


What version of the product are you using? On what operating system?
Integrate branch on Ubuntu 10.10

Original issue reported on code.google.com by andresgattinoni on 20 Oct 2010 at 2:45

Deleting a book doesn' t delete the cover

So, when you add another book and it gets the same ID, it inherits the old 
(wrong) cover.

Original issue reported on code.google.com by roberto.alsina on 30 Jan 2011 at 8:44

Redefine importer and create a GUI

As it's been discussed on the mailing list, the current importer is mostly a 
proof of concept. We should define further how the importer should operate and 
maybe design a GUI. 

This elements have been suggested for the importer interface:

- Option to skip the search (guessing)
- Adding a progress bar
- Adding a special tag for imported books

Original issue reported on code.google.com by andresgattinoni on 28 Jan 2011 at 5:34

Implement "converters" for manybooks.net

manybooks.net provides the ebooks in lots of formats. 

Implement a converter like the feedbooks one, that works by re-downloading in 
the desired format.

Original issue reported on code.google.com by roberto.alsina on 27 Jan 2011 at 4:32

Refactor viewers

Currently there are two viewers for ebooks: cbzviewer and epubviewer

There is a lot of code repeated between them. 

Now that we have two examples, it's a good moment to refactor the common code 
into a base class and create a decent architecture for them.

Original issue reported on code.google.com by roberto.alsina on 3 Feb 2011 at 12:27

Download manager

There are a bunch of places where aranduka blocks while a download is in 
progress (for example, books). That's not good.

It would be good to have some non-blocking download manager thing that can give 
feedback and do things in the background.

Original issue reported on code.google.com by roberto.alsina on 26 Jan 2011 at 1:05

Select file to delete

When a book has more than one file associated to it, the context menu should 
show a submenu with the files to delete. In this case the delete should be of 
the file only and not the whole book.

Original issue reported on code.google.com by andresgattinoni on 27 Jan 2011 at 8:19

Error opening an epub file

I got this error while trying to open the epub file I'm attaching.

Opening: 
/home/elbarto/.aranduka/ebooks/17-the-hawaiian-islands-the-department-of-foreign
-affairs-.epub
BASEPATH: 
Traceback (most recent call last):
  File "main.py", line 249, in <lambda>
    lambda f = f: self.openEpub(f.file_name))
  File "main.py", line 222, in openEpub
    viewer = EpubViewer(fname)
  File "/home/elbarto/issue47/src/epubviewer.py", line 14, in __init__
    self.epub = EpubDocument(fname)
  File "/home/elbarto/issue47/src/epubparser.py", line 45, in __init__
    self.toc_id = self.spine.attrib['toc']
KeyError: 'toc'

Original issue reported on code.google.com by andresgattinoni on 8 Feb 2011 at 12:56

Attachments:

Empty tools menu

When you start Aranduka without a ~/.aranduka folder, all plugins start as 
disabled.

So, when you click on the tools menu, it's empty.

However, when you go to the plugins config dialog, all plugins are set to 
enabled without user intervention, and now tools is full.

That's very confusing.

Original issue reported on code.google.com by roberto.alsina on 29 Jan 2011 at 1:48

Plugins web

Provide some way to download plugins. It has the added bonus of a chance to 
ship updated plugins to users.

Since plugins are one-file-and-one-folder, we could just download zipped files, 
unzip-em, and stick them in ~/.aranduka/plugins.

Add to that a RSS feed for updates (we already have feedparser).

Original issue reported on code.google.com by [email protected] on 9 Feb 2011 at 2:16

Refresh stuff when plugins change

Sometimes when you change plugins settings (currently, when you enable or 
disable a plugin), it's necessary to refresh the current window.

Examples:

- If you enable or disable a shelf view, you need to refresh the list of views 
to show or hide that plugin.
- If you are editing a book and you enable/disable a Guesser, you need to 
reload the editor to display the new guesser on the list.

We should figure out a way to hook plugins (and maybe plugin categories) to UI 
elements, so that they are refreshed when a plugin/plugin category changes. 

I guess some witchcraft with slots/signals could help here.

Original issue reported on code.google.com by andresgattinoni on 27 Jan 2011 at 2:36

  • Blocked on: #52

Manybooks.net download doesn't work

This should probably be fixed once issue 6 is completed, but I'll post it so 
that we can check it again afterwards.

The Manybooks.net plugin lets you download books in ePub format. However it's 
not working properly. To the problems described in issue 6, we should add that 
the download doesn't work and instead creates an empty file.

Maybe the plugin could do a simple format-check after downloading (this could 
be part of the epubparser module).

Original issue reported on code.google.com by andresgattinoni on 26 Jan 2011 at 10:15

  • Merged into: #6

The guess.ui dialog should have editable fields

Currently it displays checkboxes so you can either use the current title as a 
guess hint or not.

However, if you want to try different variations on titles or authors, you need 
to cancel, change in the editor, save, and guess again.

That's not a great workflow.

Original issue reported on code.google.com by roberto.alsina on 1 Feb 2011 at 7:26

  • Blocking: #34

Broken cover images look bad

If there is a cover image that Qt can't read or is corrupted, the item looks 
bad.

It should be fixed so it shows the "no cover" image.

Original issue reported on code.google.com by roberto.alsina on 28 Jan 2011 at 9:23

Delete a file from a Book

A book can be associated to many files. If you delete a book, all its files are 
deleted. We need to figure out a UI to delete single files from a book, maybe 
in the book editor.

Original issue reported on code.google.com by andresgattinoni on 27 Jan 2011 at 11:40

Changing a book's title deletes its files

Do as the summary says, and bad things happen.

I think this is related to the Issue 22 changes?

Original issue reported on code.google.com by roberto.alsina on 3 Feb 2011 at 2:47

  • Blocking: #24

Specific guessers for ePub and other formats

ePub files (and probably other formats), have useful metadata in them.

For example, ePub usually has cover, author and title.
In addition, it's fast and cheap. So, it would be useful to implement a guesser 
that uses that data, specially since we already have an ePub parser in the 
project ;-)

Original issue reported on code.google.com by roberto.alsina on 3 Feb 2011 at 2:09

  • Blocking: #24
  • Blocked on: #17

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.