From bef992aa9ee9ce3acc6b67bf06fa8686131fc08d Mon Sep 17 00:00:00 2001 From: Aastha Kourav Date: Tue, 14 May 2024 12:02:16 +0530 Subject: [PATCH 1/2] add code of conduct file --- CODE_OF_CONDUCT | 60 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 CODE_OF_CONDUCT diff --git a/CODE_OF_CONDUCT b/CODE_OF_CONDUCT new file mode 100644 index 0000000..05e7320 --- /dev/null +++ b/CODE_OF_CONDUCT @@ -0,0 +1,60 @@ +# AutomaDesk - GSSoC Contributors Code of Conduct + +## Our Pledge + +We are committed to creating a diverse and inclusive community where everyone feels respected and valued.This code of conduct outlines the expectations for all participants and the steps we will take to enforce them. Any unexpected behaviour will lead to take actions on them. + +## Our Standards + +The following are the examples of behaviour that create a positive and friendly environment + +Be respectful: Treat all contributors with courtesy and avoid discriminatory or offensive language. +Be constructive: Offer helpful feedback and suggestions for improvement. +Be open-minded: Consider different perspectives and approaches. +Be responsible: Report any abusive or harassing behavior to the project maintainers. +Be collaborative: Work together to achieve the project's goals. + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. + +Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. + +## ❌ You'll never get issue assigned + +- I want to work on this issue please assign it to me, I'll enhance UI + +- _Create an AI generated issue _and ask to assign + + +## βœ… You'll easily get issue assigned + +- Hi, I know the fix for this issue, the code is breaking because of the useEffect we have added there, instead of that we need to use UseLayoutEffect, I can fix it within **ETA**: 1day. +- Hi, I seen a UI enhancement in category section of the website, here goes my sample UX/images <_link>_. And I want to pick this issue + + + +## πŸ’‘Prop tip from the Project Admin (Me 😜) +- I am happy to provide you the points you need to reach the leaderboard, I look forward to give more points than needed if required, but the minimum I expect is your genuine interest to solve the issue and contribute. +- Want GSSoC points? Not the right place for you. Want to learn things and master git place for you, and forget about points you'll get more than expected +- I'm happy to help anyone who is really concerned in learning, _**but please don't spam 100s of project with your random message**_, Stick to 2-3 projects of your like and work on it. +- Didn't get any issue to work on? Just join the project's discord in readme. I'll help you find one :) +- Happy learning. Feel free to connect if you are concerned with learning and growing 😊 + + +--- + + +## For those who have time read below +### Issue Assignment Process +- **Preparation**: Contributors must thoroughly investigate issues before expressing interest. +- **ETA**: Provide an estimated time of completion for the issue. +- **Approach**: Describe the planned method or solution to resolve the issue. +### Communication +- **Expression of Interest**: Contributors should demonstrate their understanding and readiness to tackle the issue, rather than simply requesting assignment. +### Restrictions +- **AI-Based Issue Creation**: The use of AI to generate issues is strictly discouraged. +- **Handling Existing Issues**: Contributors are encouraged to focus on resolving existing issues rather than creating new, unnecessary ones. + From 9ce9c860cb9f36609e69a9bc50a544860b067049 Mon Sep 17 00:00:00 2001 From: Aastha Kourav Date: Thu, 16 May 2024 09:41:39 +0530 Subject: [PATCH 2/2] enhance_readme.md --- README.md | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 95 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index bf2ef1e..2ec8fb8 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,98 @@ -# AutomaDesk -A tool that organizes files and folders based on pre-defined rules. This can save time and effort spent on manually maintaining a clean desktop. + + +# AutomaDesk πŸ“‚βœ¨ + +AutomaDesk is a desktop application that helps you organize files and folders based on predefined rules. This tool can save you time and effort spent on manually maintaining a clean and organized desktop. + +## Features πŸš€ + + - Organize Files: Automatically move files to specified directories based on their extensions. + - Add/Remove Rules: Save and delete organization rules specifying which file types go to which directories. + - Rename Files: Rename files using user-defined patterns. + - Search Files: Search for files containing a specific term within the selected directory. + +## Getting Started 🏁 +### Prerequisites πŸ“‹ +Ensure you have the following installed: + +- Python 3.x +- Tkinter (included with most Python installations) +- SQLite (included with Python's sqlite3 module) + +### Installation πŸ› οΈ +1). Clone the repository: + +sh +Copy code +git clone https://github.com/your-username/automadesk.git +cd automadesk + +2). Run the application: + +sh +Copy code +python automadesk.py + + +## Usage πŸ“š +1). Select Source Directory: + + - Click on the "Browse" button next to the "Source Directory" field to select the directory containing the files you want to organize. +2). Add a Rule: + + - Enter the file extension (e.g., jpg, pdf) in the "File Extension" field. + - Enter the destination folder where files of this type should be moved in the "Destination Folder" field. + - Click the "Save Rule" button to save the rule to the database. +3).Delete a Rule: + + - Enter the file extension of the rule you want to delete in the "File Extension" field. + - Click the "Delete Rule" button to remove the rule from the database. + +4).Organize Files: + + - Once you have added the necessary rules, click the "Organize Files" button to move files according to the defined rules. + +5).Rename Files: + + - Click the "Browse" button to select a file you want to rename. + - Enter the new filename in the "New Filename" field. + - Click the "Rename" button to rename the file. + +6) Search Files: + + - Enter the search term in the "Search" field. + - Click the "Search" button to find files containing the search term in the selected directory. + +## Database Structure πŸ—„οΈ +The application uses an SQLite database (file_organizer.db) to store file organization rules. The database contains a single table file_rules with the following structure: + + - extension: The file extension (e.g., jpg, pdf). + - destination: The directory where files with the specified extension should be moved. + +## Code Overview πŸ“ + - organize_files: Function to organize files based on the rules from the database. + - save_rule_to_db: Function to save a file organization rule to the SQLite database. + - delete_rule_from_db: Function to delete a file organization rule from the SQLite database. + - load_rules_from_db: Function to load file organization rules from the SQLite database. + - rename_files: Function to rename files based on a user-defined pattern. + -browse_button: Function to handle the browse button click event for selecting a directory. + -save_button: Function to handle the save button click event for saving a rule. + - delete_button: Function to handle the delete button click event for deleting a rule. + - update_rules_list: Function to update the rules list displayed in the GUI. + - organize_button: Function to handle the organize button click event for organizing files. + - rename_button1: Function to handle the rename button click event for renaming a file. + - browse_file: Function to handle the browse button click event for selecting a file. + - search_button: Function to handle the search button click event for searching files. + +## License πŸ“„ +This project is licensed under the MIT License. See the LICENSE file for details. + +## Contact Information πŸ“¬ +For more information or if you have any questions, feel free to reach out: + +[Ashwin Kumar R]https://www.linkedin.com/in/ashwinkumarramasamy/ + +Thank you for using AutomaDesk! πŸŽ‰ ## Tech Stacks - Python - Tkinter