Coder Social home page Coder Social logo

smaranjitghose / doclense Goto Github PK

View Code? Open in Web Editor NEW
143.0 10.0 128.0 194.25 MB

An open-source document scanner!

Home Page: https://doclense.vercel.app/

License: Creative Commons Zero v1.0 Universal

Kotlin 0.09% Swift 0.30% Objective-C 0.03% Dart 98.55% Ruby 1.02%
open-source gssoc21 jwoc dwoc scanner document-scanner document

doclense's Introduction

DocLense

Issues Pull Requests Forks Stars License

Get it on Google Play

Features🔬 :

  • Scan your documents with ease!

  • Numerous choices of filters to choose from

  • Auto-adjust size and focus on text

  • Save in multiple formats

  • Share as consolidated document across multiple platforms

  • Scan a variety of Docs

  • Options to customize the size of the scanned pages (Crop)

  • Apply different types of filter

  • Download/Export in .pdf

  • Rename the documents

📱App Screens📱

📷App Mock-ups📷

🎥App Demo🎥

Contribution Guidelines🏗

Are we missing any of your favorite features, which you think you can add to it❓ We invite you to contribute to this project and make it better? To start contributing, follow the below guidelines:

1. Fork this repository.

2. Clone your forked copy of the project.

git clone --depth 1 https://github.com/<your_user_name>/DocLense.git

3. Navigate to the project directory 📁 .

cd DocLense

4. Add a reference(remote) to the original repository.

git remote add upstream https://github.com/smaranjitghose/DocLense.git

5. Check the remotes for this repository.

git remote -v

6. Always take a pull from the upstream repository to your master branch to keep it at par with the main project(updated repository).

git pull upstream master

Note: in this project, the master branch is called the main branch, so try

git pull upstream main

7. Create a new branch.

git checkout -b <your_branch_name>

8. Perform your desired changes to the code base.

9. Track your changes:heavy_check_mark: .

git add .

10. Commit your changes.

git commit -m "Relevant message"

11. Push the committed changes in your feature branch to your remote repo.

git push -u origin <your_branch_name>

12. To create a pull request, click on `compare and pull requests. Please ensure you compare your feature branch to the desired branch of the repo you are supposed to make a PR to.

13. Add appropriate title and description to your pull request explaining your changes and efforts done.

14. Click on Create Pull Request.

15 Voila ❗ You have made a PR to the DocLense project 💥 Sit back patiently and relax while the project maintainers review your PR. Please understand at times the time can vary from a few hours to a few days

Project Maintainers👨🏫:

Smaranjit_Picture Anush_Picture
Smaranjit Ghose Anush Bhatia

Our valuable Contributors👩‍💻👨‍💻 :

Open Source Programs we have been a part of:

doclense's People

Contributors

0xapurv avatar abstrxtinfinity avatar anushbhatia avatar ayyysh04 avatar imgbotapp avatar infiniteoverflow avatar jahnavi-jonnalagadda avatar jinosh05 avatar mohitsoni-dev avatar nathsagar24 avatar neha62-lit avatar nicks101 avatar niranjan-10 avatar niteshkr123 avatar payaldutta avatar priyanshu078 avatar sahil-kachhap avatar sakshi2707 avatar samarpancoder2002 avatar samikshasankar avatar samir-0711 avatar sapindersingh avatar saransh-cpp avatar shagun25 avatar smaranjitghose avatar swarupbc avatar tejas-ladhani avatar tharunc avatar udit-singh avatar vrushti24 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

doclense's Issues

Improve Docs

Need to update the documentation . Unable to understand -what we need to achieve

Add a feature to rate the App

Adding a feature to give the star rating to the app.
Redirect to the user to Playstore as soon he finishes rating it in-app.

App Crash: Pressing the crop button makes the app crash

Using the crop feature makes the app crash both on my emulator and my physical device. The cause for this is some missing lines in AndroidManifest.xml.

After adding the code, the app works perfect but if I initially choose to crop, but then go back from the crop screen without cropping the image, it gives me an error saying the imagefile is null. This is solved by giving a minor tweek to cropimage function.

Edit: I have made the crop screen consistent with the present theme, I'll open a PR.

Redesign App Drawer

Following the Colour Codes given in the readme.
Adding relevant icons to denote the particular section if you want.

Feature: Implementing theme change option

This feature right now is not working in the app. I'd like to work on it as a part of MWoC and I was thinking of just giving the user a switch, to switch between 2 themes rather than a dropdown menu which is present in the app right now. Please give your inputs so I can start working on this. Thank you.

Integrate Welcome Bot

Hello there,
I can add a welcome bot config file having a proper message that will show up when any user will open up an issue or pull-request for the first time as a part of DWOC. Please assign me this issue. For reference, kindly check out: https://github.com/apps/welcome
THANK YOU

Camera Based Scanner

Camera Scanner Doesn't save images in the gallery.
Implementing the gallery function there

Image is overly stretched in the Imageview screen

The image becomes unusually stretched in this page and creates inconsistency as the image in the immediate next page (Filterview.dart) is not at all stretched.

Imageview

Screenshot_1612955793

Filterview

Screenshot_1612955796

A simple fix would make it consistent and I would like to work on this issue too:)

Feature : Migrate Local Storage to Hive

This feature will use the power of HiveDB. HiveDB is a NoSQL Local Storage for apps. We can implement Hive for the following cases where SharedPreferences are currently used :

  • Save the list of saved pdfs
  • We can create a Preference class whose attributes will be the preferences users select like 'darkTheme' , etc and store it in the database. By this, it will be easier to access all the user preferences with just one class.

Maintainers kindly express your views on this.

Redesign App Drawer

Following the Colour Codes given in the readme.
Adding relevant icons to denote the particular section if you want.

iOS Camera Access bug

Issue : The app crashes in iOS when someone clicks on the camera button.

Possible Solution : We may have to add certain permissions in the info.plist file in the ios folder of the project.

Enhancement: Adding animation when pushing another screen

A small yet a good enhancement to improve a user's overall experience where the pages when pushed will Fade In (or any other animation of your choice) instead of popping in from down like it happens right now. I'd like to work on this enhancement as a part of MWoC.

Fix: Documentation

There were some typos in the documentation ( in README.md file, under the heading Contribution Guidelines).

  • The link in point no 4
  • In point no 6, it's not mentioned that for this project the master branch is the main branch.
  • There is a typo in point no 15.

Undo Button Routes the screen to the initial state

This could be considered as an enhancement to the existing code.

How to reproduce :

  • In the HomePage , choose either of the FAB button (Take an image / Open gallery).
  • Once an image is selected , it will be redirected to the Imageview class.
  • At the bottom we have an Undo button which routes to the same class to undo the changes that was brought to the image.

Solution :

  • We can have a dynamic list where we can keep on appending the changed image files.
  • On pressing undo , we can just setState the file attribute with the list.length - 1 index file image , which can revert back to the previous file image state.

Settings Page

Implementing the setting page .

reporting a bug
request a feature
contact developers

OCR feature

Since we are already scanning the document , it would be even better if we give the users the option of converting it into a text file or pdf once if recognises all the text characters of the scanned image
I would like to work on the issue

Adding Logo

Adding a logo in the side nav from the assets folder.
Also adding a logo in the about app page

Bug: Home button in the App drawer pushes extra Home screen above the original home screen

Clicking on the home button in the app drawer right now pops the present screen and then pushes the home screen described in the code

onTap: () {
              Navigator.of(context).pop();
              Navigator.push(
                  context, MaterialPageRoute(builder: (context) => Home()));
            },

but somehow pressing the back button takes me back to the previous screen. This becomes a bit inefficient and also creates another problem, when the button is pressed on the home screen, you get a stack with two home screens in it, one of them being on top of the other and pressing the back button doesn't close the app rather it brings you to the home screen lying below in the stack.

A simple solution can be to use pushReplacement only on the home button. I'd like to work on this issue.

Replacing all pngs with the svgs 👾

You need to replace all png to svgs using flutter_svg plugin present in dart. If you are using any other method do mention that in comments before making a PR.

CONTRIBUTING.MD

I want to create a more pictorial format of contributing guidelines. I have already made them for two projects in DWOC.

Create Code of conduct.md

Hey, your repo is lacking a code of conduct markdown file and I am interested in contributing to it kindly assign it to me. Thank you.

ADD ISSUE_TEMPLATE

Hello there,
I would like to add an issue template for your repository. This template would have four issues namely bug, documentation, feature, proposal. Kindly assign me this issue as a part of DWOC.
THANK YOU

Selecting an image from the gallery gives an error on the console

The error is described below

======== Exception caught by widgets library =======================================================
The following assertion was thrown while applying parent data.:
Incorrect use of ParentDataWidget.

Here is the full error

======== Exception caught by widgets library =======================================================
The following assertion was thrown while applying parent data.:
Incorrect use of ParentDataWidget.

The ParentDataWidget Expanded(flex: 1) wants to apply ParentData of type FlexParentData to a RenderObject, which has been set up to accept ParentData of incompatible type BoxParentData.

Usually, this means that the Expanded widget has the wrong ancestor RenderObjectWidget. Typically, Expanded widgets are placed directly inside Flex widgets.
The offending Expanded is currently placed inside a Padding widget.

The ownership chain for the RenderObject that received the incompatible parent data was:
  ConstrainedBox ← Container ← Expanded ← MediaQuery ← Padding ← SafeArea ← Column ← ColoredBox ← Container ← MediaQuery ← ⋯
When the exception was thrown, this was the stack: 
#0      RenderObjectElement._updateParentData.<anonymous closure> (package:flutter/src/widgets/framework.dart:5770:11)
#1      RenderObjectElement._updateParentData (package:flutter/src/widgets/framework.dart:5786:6)
#2      RenderObjectElement.attachRenderObject (package:flutter/src/widgets/framework.dart:5808:7)
#3      RenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5501:5)
#4      SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6117:11)
...
====================================================================================================

I'd like to work on this issue as a part of MWoC.

App Drawer to load all locally stored images

Currently, once the pdf is saved is not loaded in the home of the document so that we can refer it easily.
So adding a feature to access the pdf from the home page which is downloaded and saved in your system.

Contributing.md file

Hi @smaranjitghose
I would like to contribute to this repository
I found that there is no contributing file which will have all contributing guidlines and all git workflow commands so that a begineer can understand the guidlines and understamd the git workflow

Kindly assign me this issue

@smaranjitghose

Give an option to share the app

Add this feature in-app drawer where on clicking this he gets an option to share the app to other users.
Also, add a custom message on click of sharing.

I've been using Doclense to scan everything to PDF, it's free and easy to use. Check it out: link

Saved Documents in the Homepage

I would like to share my approach for showing the pdfs created by the user in the homepage as they open it :

  • In the screen where we save the pdf after creating it, we can add the directory link to an object in shared_preferences. So every time a user creates a pdf, the link can be appended to it.
  • We can retrieve the list of directories from shared_preferences in the homepage and show a list/grid view of the saved documents.

Maintainers kindly express your views on this approach. Thank you !!

Full length Image PDF

Currently, the pdf formed is having white spaces in it. Improving it by only representing the size of the image as a particular page in the pdf formed.

PDF with no borders

Currently, the pdf formed is having white spaces in it. Improving it by only representing the size of the image as a particular page in the pdf formed.
image
There should be no white space around images

Settings Page

Add a setting page for adding

  • reporting a bug
  • request a feature
  • contact developers

Adding Issue templates

Hello there,
I would like to add an issue template for the repository. This template would have issues namely bug, feature. Kindly assign me this issue as a part of DWOC.
THANK YOU

Improving Routing🤓

Currently, as soon as you make the pdf and then click the back button t doesn't redirect you to the home page.
this can be solved in either of the two approaches.

  1. As soon as the pdf is made instead of showing the pdf there redirect to the home page.
  2. Preferred Method: As soon as the back button is pressed on the pdf it should open the Home Page.

Improving All the FAB buttons

Changing the colours of a button from green on the next step to another colour blue and white for that.
Currently, the button is not visible possible.
image

Also, change the app bar of the about similar to the complete app.

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.