Skip to content

aditya4196/simply-clip

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DOI

Uptime Robot ratio (30 days) License: MIT GitHub Release GitHub language count GitHub issues GitHub-closed-issues Test Cases GitHub contributors GitHub pull requests GitHub-size basic badge Coverage Status

                 :paperclips:   Clipboard Made Easy For Research   :paperclips:


         


Description

SimplyClip3.0 πŸ–‡οΈ is a google chrome extension which enables singular shared clipboard for research students and power users. Unlimited focus!!!

βœ… What Simply Clip Can Do?

  • Select multiple text snippets from a single tab (or more!) and magically paste all off them!
  • Summarize content from different text selections
  • Merge different text selections
  • Sort text selections based on priority
  • Set Reminders for your research
  • Ability to manage what selection you want to keep or get rid of.
  • No more switching tabs, say no to all distractions!!
  • Download the copied content to CSV or DOC file with a single click.
  • Work in Dark Mode!
  • Search for any text from the copied content.
  • Helps you to save website URLs from which the text is copied.
  • Disable any time with a toggle, if you don't want the content to copy to extension.
  • Delete all copied items at once.
  • Works across all tabs in the browser
  • Works like a charm for research work
  • many more...

πŸ“– Use Case

  • Students: Students and Research grads can take out snippets from text for easy reference later. We as grad students recently found ourselves in a position where we had to reference a lot of text snippets while recognizing reuses in research papers, SimplyClip does wonders for speeding up similar workflows.

  • Professionals/ Casual Users:: It’s one issue to fill a repetitive and boring form. It’s an entirely another when we fill multiple of such forms with questions with repeating answers. SimplyClip fits really well in such a case where simple text clips can be saved and reused saving time and effort.

❓ Why

While working on finding reuse we spent significant amount of time searching and saving text snippets for further evaluation.Such a repetitive workflow sparked an idea of a clipboard workspace to manage all the recent snippets we have collected while researching.This in turn lead to the development of SimplyClip, in which not only clipboard text is saved, but can also be edited and deleted.Future development pipeline includes cross browser compatibility, exporting and cloud functionalities.


Simply Clip | Installation | Developers Note | TechStack | RoadMap | Contributors


πŸ₯Š Punch Line

SimplyClip.mp4

Demo

https://www.youtube.com/watch?v=ETtvNNvfhzU


:techstack: TechStack

  • JavaScript
  • Python
  • HTML
  • CSS
  • Node.js
  • NPM

Version Control Tools


:shipit: Developers Note

Basic knowledge of JavaScript, HTML ,CSS should be good enough to contribute to the project

These are the only 4 files you will be working on and rest all are just configuration and documentation files.

We will be more than happy to help you extend the functionality of this extension.
Happy Coding!!!! πŸ˜„πŸ˜„

βš™οΈ Getting started Add SimplyClip to Google Chrome

All you need is Google Chrome! πŸ•Ί

  1. Get the repsitory using any of the below two methords :
    • Download ⬇️ the repository using Code > Download Zip on our project github page.
    • Clone the reporitory using GIT
    https://github.com/umagnanasundaram2128/SimplyClip/
    
  2. Manually install Entension using below steps.
    • Enable the developer mode from Chrome > Settings > extension.
    • Click on load Unpacked button and select the root folder of this repository. Extension
    • Enable the chrome extension.
      Extension

Backend Instructions to Run

  1. cd simplyclip_backend
    
  2. python3 -m pip install -r requirements.txt
    
  3. python3 manage.py migrate
    
  4. python3 manage.py runserver
    
    Your backend Django application will run on http://127.0.0.1:8000/

πŸ“¦ IDE and Packages

  • IDE : VSCode

  • Code Style Formatter Extension: Beautify

  • Code Syntax Checker Extension : Eslint for Vscode plugin.

VS Code uses js-beautify internally, but it lacks the ability to modify the style you wish to use. This extension enables running js-beautify in VS Code, AND honouring any .jsbeautifyrc file in the open file's path tree to load your code styling. Run with F1 Beautify (to beautify a selection) or F1 Beautify file.

Style Checker and Analyzer

  • Javascript Standard Style is style guide, linter, and formatter for Javascript and styling means ranking the importance of code clarity.
  • npx standard --fix is used to fix the the style

Code Formatter

Prettier

  • Prettier is an opinionated code formatter which will format your code in structured way.
  • npx prettier --write . to check the errors in code formating
  • npx prettier --check . to check the errors in code formatting but only checks that files are already formatted, rather than overwriting them. prettier --write and prettier --check are the most common ways to run Prettier

Syntax Checker

Lint

  • Linting is the automated checking of your source code for programmatic and syntax errors.
  • npm run lint to check the linter to check errors in code formatting in the code.

πŸ§ͺ Testcase Coverage

  • Functional tests for the extension could not thoroughly test the entire functionality of the application.
  • Hence, selenium automated test cases are added.
  • The following test cases are automated
    1. The test launches a Chrome Browser with a user profile with the extension added.
    2. It then browses to 'google.com' and searches for a specific keyword.
    3. The first link is clicked and the text on the results page is copied.
    4. Then there is a check to make sure that the copied text exists in the SimplyClip extension.
  • Run npm run test to run the selenium automated tests.

Extension

  • Run npm run instanbul-coverage to check the code coverage.

Extension

πŸ–₯️ Functional Descriptions

1. Copying to the extension clipboard :

Any text copied from the browser page automatically gets copied to the extension's clipboard (given the URL has access to the system clipboard).

2. Copying to the system clipboard :

User can select the text chunk to copy from the extension clipboard by simply clicking on the text entry. The entry automatically gets copied into the system clipboard.

3. Editing the extension clipboard :

User is even allowed to edit the text entry copied to the extension clipboard. The user can edit the entry by clicking on the pencil icon and edit the text entry. Once edited, the entry gets saved automatically on clicking anywhere outside the focus of the text entry.

4. Downloading your copied text :

Users can download the list of copied items as a document file or CSV file. The CSV file has many more columns, such as updated text, original copied text, URL of copied text, and so on.

⁉️ Troubleshooting

  1. If the text doesn't get copied, please make sure that the page has the permission to access and modify the system clipboard.
  2. When loading the extension for the first time, reload the pages in order to allow the URLs to prompt for permissions to access the system clipboard.
  3. If none of the above steps work, consider reloading the extension and all the browser pages.
  4. If the issue still persists, please consider writing us at csc510project21@gmail.com and we will get back to you as soon as possible.
  5. You're also free to report a bug in our repository and clearly stating the issue that you're facing. Please make sure to follow the guidelines mentioned in CONTRIBUTING.md

πŸ›€οΈ Roadmap

Phase 1:

  • Implemented the UI for chrome
  • Integrate the chrome storage API to store and process copied text
  • Tooltip implementation for the text copied to the clipboard
  • Implementing copying functionality from clipboard to anywhere on the PC
  • Editing the item on the Clipboard

Phase 2

  • Brand new interactive UI
  • Search across the copied text items
  • Disable the extension with a toggle
  • Website from which the text is copied is maintained and stored
  • Old and new version of text is stored when text Is edited
  • Export the copied content to DOC file
  • Delete all copied items
  • Add new item to the list
  • Expand text area in edit mode

Phase 3 : Successful Functional Improvements in SimplyClip3.0:

  • Summarise text items from the list
  • Sorting text items based on priority
  • Merging similar text items from the list
  • Dark Mode
  • Expanding text area while searching
  • Export the copied content to CSV and DOC file
  • Export the summarised content to DOC file

Future Enhancements:

  • Domain Entity for similar content
  • Citation fetching
  • Better training data for Summariser
  • Copy image to clipboard

🀝 Contributors

  1. Aditya Ravikant Jadhav (ajadhav3@ncsu.edu)
  2. Harsh Vijay Bathija (hbathij@ncsu.edu)
  3. Ashritha Bommagani (abommag@ncsu.edu)
  4. Abhishek Arvindkumar Upadhyay (aaupadhy@ncsu.edu)
  5. Akash Mukesh Sanghani (amsangha@ncsu.edu)

Enjoy using SimplyClip. Make sure to follow the page for any new updates!

About

A chrome extension that allows copying of items to and from clipboard.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 56.7%
  • HTML 22.8%
  • CSS 11.8%
  • Python 8.6%
  • Shell 0.1%