Skip to content

Eoic/Papyrus

Repository files navigation


papyrus papyrus

A cross-platform book management system.


Table of contents

Overview

Papyrus aims to provide a versatile, easy-to-use system that makes reading comfortable and fun. It's designed to be accessible on a wide range of platforms, including Android, iOS, Web, and Desktop, featuring an intuitive, modern UI with various customization options. You can find more information in the specification here.

Why?

Many solutions offer some reading functionalities but fall short on some essential features or user experience. Papyrus aims to deliver a comprehensive solution that balances functionality with good user experience, covering all your reading needs in one application.

Key Features

  • Cross-platform: manage physical and electronic books seamlessly across devices. Integrated e-book viewer: customize your reading experience with various look-and-feel options.
  • Flexible management: organize physical and e-books into shelves, categories, attach tags, create custom filters.
  • Progress tracking: track reading time and books read, plan and create custom reading goals.
  • Storage: easily add new books, convert and export books files, choose file storage methods.

Getting started

Prerequisites

  • Flutter SDK: Ensure you have Flutter installed.
  • Dart SDK: This is included when you install Flutter.

Installation

  1. Clone the repository
git clone git@github.com:Eoic/Papyrus.git
cd Papyrus
  1. Install dependencies
flutter pub get
  1. Run the application

    Mobile (Android / iOS) Connect your device or start an emulator and run:

    flutter run

    Web Run the following command to launch Papyrus in Chrome (or another supported browser):

    flutter run -f chrome

    Desktop Make sure desktop support is enabled by referring to Flutter desktop setup page. Then run:

    flutter run -d windows  # or -d macos, -d linux

Project resources

  • API Specification: the backend REST API is documented using OpenAPI specification. You can find the current OpenAPI spec in the design/api directory.
  • Design Prototype: the UI/UX design is created in Figma, and you can find it here.

Contributing

Follow the steps to submit your contributions:

  1. Fork the repository.
  2. Create a feature branch:
    git checkout b feature/<your-feature>
  3. Commit your changes:
    git commit -m "<description of your changes>"
  4. Push to your branch:
    git push origin feature/<your-feature>
  5. Open a pull request.

Contact

For any questions, feedback, or suggestions, please contact: