GithubHelp home page GithubHelp logo

automadesk's Introduction

AutomaDesk

A powerful tool to organize your files and folders based on pre-defined rules, saving you time and effort in maintaining a clean and efficient digital workspace.

Key Features

Flexible Rule Creation

Define rules to automatically move files based on extension (e.g., PDFs to a "Documents" folder, images to a "Pictures" folder).

SQLite Database Integration

Store rules persistently for easy access and management.

User-Friendly Interface

Interact with AutomaDesk through a visually appealing Tkinter GUI.

Renaming Functionality

Rename files using customizable patterns for enhanced organization.

Search Capability

Locate specific files within your designated source directory.

Tech Stack

  • Python (Core functionality)
  • Tkinter (GUI development)
  • SQLite (Database storage)

Installation

Prerequisites

Ensure you have Python 3 installed on your system. You can download it from Python Official Website.

Clone the Repository

Use Git to clone this repository to your local machine:

git clone https://github.com/your-username/AutomaDesk.git

Usage

Run AutomaDesk

Execute the main script (automadesk.py or similar) from your terminal.

Source Directory

Specify the directory containing the files you want to organize.

Rule Management

Creating Rules

  1. Enter the file extension in the "File Extension" field (e.g., ".pdf").
  2. Specify the destination folder in the "Destination Folder" field (e.g., "C:/Documents").
  3. Click the "Save Rule" button to establish the rule.

Viewing Rules

The "Current Rules" section displays the existing rules.

Deleting Rules

  1. Enter the extension of the rule you want to remove in the "File Extension" field.
  2. Click the "Delete Rule" button to confirm removal.

Organize Files

Once rules are defined, click the "Organize Files" button to activate file organization based on the established rules.

Renaming Files

  1. Click the "Browse" button next to the "File" field to select a file for renaming.
  2. Enter the desired new filename in the "New Filename" field.
  3. Click the "Rename" button to execute the renaming process. Search Files
  4. Type the search term for the files you want to locate in the "Search" field.
  5. Click the "Search" button to initiate the search. Results will be displayed in a message box.

Customization

The code provides a solid foundation. You can extend it to accommodate more complex rule-based organization, such as including subdirectories based on file content or creation date.

Consider implementing visual feedback (progress bars, confirmation messages) to enhance the user experience.

Contributing

We welcome contributions to this project! Feel free to fork the repository, make your changes, and submit a pull request. We appreciate your interest in keeping AutomaDesk a valuable tool.

License

This project is licensed under the MIT License. You are free to use, modify, and distribute it under the terms of this license.

Additional Notes

For advanced usage or troubleshooting, refer to the code comments and documentation within the project.

Consider creating a standalone executable using tools like PyInstaller to distribute AutomaDesk more easily (optional).

Project Admin

  • Ashwin Kumar R

Developer(s)

  • Ashwin Kumar R

Communication Server

https://discord.gg/XsYcNdFm46

automadesk's People

Contributors

akhundubedullah avatar ash515 avatar bhavikmenaria avatar himanshiduseja avatar mavsneha avatar nidhi20-7 avatar santhosh-siddhardha avatar

Stargazers

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

Watchers

 avatar

automadesk's Issues

Code of conduct

As for GGSOC'24 . I can make code of conduct for this file. I have previous experience of documentation with JGEC winter of code

Add Single File Renaming Functionality

I propose adding a feature to the file organizer tool that allows users to easily rename individual files. This feature would include:

GUI Integration: A user-friendly interface (built with Tkinter) for selecting a file and entering a new name.

Renaming Logic: Implementation of the actual file renaming process using Python's os.rename function.

Error Handling: Checks to ensure the new name is valid and doesn't conflict with existing files.

Confirmation: A step to confirm the renaming before it's permanently applied.

I propose adding a feature to the file organizer tool that allows users to easily rename individual files. This feature would include:

GUI Integration: A user-friendly interface (built with Tkinter) for selecting a file and entering a new name.
Renaming Logic: Implementation of the actual file renaming process using Python's os.rename function.
Error Handling: Checks to ensure the new name is valid and doesn't conflict with existing files.
Confirmation: A step to confirm the renaming before it's permanently applied.

[DOC] : Creation of BUG-REQUEST-TEMPLATE.

IDescription:

HELLO ,
I did see that there is no Bug-request-TEMPLATE.

Create a simple form for reporting bugs in AutomaDesk. This form will make it easy for users to tell us about any problems they encounter while using the tool. By having a clear way to report bugs, we can fix them faster and improve AutomaDesk for everyone.

Objective:
1.Make it easy for users to report bugs in AutomaDesk by creating a simple bug report form.

Completion Criteria:

1.Create a new file named BUG_REPORT_TEMPLATE.md.
2.Add questions to the form about what went wrong, how to reproduce the issue, and what users expected to happen instead.
3.Ensure the form is easy to understand and fill out.
4.Test the form by filling it out ourselves to ensure it works properly.

Additional Notes:
A clear bug report form will help us address issues efficiently and enhance the user experience of AutomaDesk. Let's keep it simple and user-friendly for everyone!

Lets us make AUTOMADESK awesome!!

[FEAT] : Implement Auto-Organize Function for Autodesk Software.

Description:

The current process of organizing files within Autodesk software can be time-consuming and prone to errors, particularly in projects with large numbers of files and complex folder structures. To address this challenge and enhance user productivity, lets implement an Auto-Organize function within the software.

Features of Auto-Organize Function:

Automated Sorting: The Auto-Organize function will automatically sort files into designated folders based on predefined criteria such as file type, date modified, project phase, or user-defined attributes.

Flexible Configuration: Users will have the flexibility to configure and customize the Auto-Organize function according to their specific project requirements. This includes defining sorting rules, specifying folder destinations, and setting up triggers for automatic organization.

Intelligent Recommendations: The Auto-Organize function will provide intelligent recommendations for folder organization based on project type. These recommendations will help users set up efficient folder structures from the start of a project.

Undo Functionality: In case of accidental file movements or organization errors, the Auto-Organize function will include an undo feature to revert changes and restore files to their original locations.

Benefits:

Time Savings
Consistency
Improved Workflow

Implementation Considerations:

User Interface: Design an intuitive user interface for configuring and activating the Auto-Organize function, ensuring ease of use for users of all skill levels.

Performance Optimization: Optimize the performance of the Auto-Organize function to handle large volumes of files and folders without impacting software performance.

Error Handling: Implement robust error handling mechanisms to address potential issues such as file conflicts, missing destination folders, or insufficient permissions.

Additional Notes:
The Auto-Organize function is a valuable enhancement that will streamline file organization workflows within Autodesk software, benefiting users across various industries and project types. By automating tedious manual tasks, this feature will empower users to focus more on their creative work and less on administrative overhead.

let us make AUTOMADESK outstanding!!

Add Topics

In GSSoC'24, GitHub Topics will help the discoverability of your project.

I see that you already have great topics on your repository!
I would recommend adding the name of the company like the software you use to build like "vs-code, ghdesktop" to improve your discoverability.

If you are happy with the topics you have, feel free to close this issue. 👍

Feat : Temporary Files Cleaner Feature GUI Build

A feature to clean up temporary files using a graphical user interface (GUI). The feature will display the number of temporary files and provide an option to delete all of them. Additionally, it should confirm the deletion with the user before proceeding and notify the user about the success or failure of the operation.

I would like to work on this under GSSOC ' 24 as a contributor.
Please assign this task to me. @Ash515
Please assign the required labels for gssoc as well on this issue

Feat: Automate greeting using Github bot 🤖

Describe the feature

As the contributor count rises on the repo, it becomes increasingly challenging for maintainers to personally greet and encourage each contributor for their valuable input. Equally important is the reminder for them to review the project's contribution guidelines.

Add ScreenShots

PR greeting message ⬇️

CleanShot_2024-05-11_at_14 39 402x

ISSUE greeting message ⬇️

CleanShot_2024-05-11_at_14 40 482x

Record

  • I agree to follow this project's Code of Conduct
  • I'm a GSSoC'24 contributor
  • I want to work on this issue

Enhance Readme.md

Enhancements to the README.md include:

  • Content Expansion: Adding more detailed information about project features, installation steps, usage instructions, and contribution guidelines.
  • Formatting and Structure: Improving the readability and organization of the README with proper headings, lists, and formatting for better navigation.
  • Visual Enhancements: Incorporating badges to make the document more visually appealing and informative.
  • Update Links and References: Ensuring that all links, references, and dependencies mentioned in the README are current and functional.
  • Language and Clarity: Reviewing the language used to ensure it is clear, concise, and welcoming to users of varying expertise levels.

@Ash515 Please assign me this issue

Add templates for issues

Issue templates are very helpful for a collaboration repo. When users identify a bug or want to add a new feature, you can provide templates so you can collect all the pertinent information you need to fix a bug or add a new feature.

We recommend creating a “Report Bug” and “Feature Request” issue template.
you can refer this: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository

Some suggested prompts/questions you can add to a “Report Bug” template are:

Briefly describe the bug
What is the expected behavior?
Please provide step by step instructions on how to reproduce the bug
Some suggested prompts/questions you can add to a “Feature Request” issue template are:

Briefly describe your feature request
What problem is this feature trying to solve?
How do we know when the feature is complete?

Reference: https://github.com/Recode-Hive/Stackoverflow-Analysis/issues/new/choose
Click on Get Started button and copy the template to yours.

Update Read me file

As mentioned in GSSOC'24 all the features are needed to be explained for more understanding. I am well experienced in creating documentation please assign this issue to me.

Girlscript Summer of Code Introduction/Tracking

👋 Hi @ ,

I am Sanjay, program Manager Girlscript Summer of Code. I'll be collaborating with you on preparing your repo for GSSoC'24 Program

Why are these changes required?
After Analysing last year's contributions and feedback it would be great for students to have a couple of standard readme files on the repo to understand what the project is all about and some issues detailing what they can contribute. This will help you to see increased engagement in your repository as well.

As mentioned students get a chance to learn step by step, how to build this project as well as invite mentors to collaborate and add features to this repo. I will generate issues, which will provide guidance on how to prepare your repo for Girlscript summer of code 2024 on 10th May.

This issue will serve as a tracking issue to track all issues related to GSSoC'24. I recommend creating a new branch for every issue and opening a pull request to track changes so we can effectively collaborate with each other and merge changes when you and I feel like those changes are ready to be merged on your primary branch.

If you have any questions or concerns, please feel free to leave a comment on this issue or any of the other issues that are generated.

I look forward to working with you :octocat:

Feat : Recycle Bin Manager GUI Build

I would like to build GUI that manages the Recycle Bin Files and makes the process easier for the user.

I would like to work on this under GSSOC ' 24 as a contributor.
Please assign this task to me. @Ash515
Please assign the required labels for gssoc as well on this issue

Learn.md

Learn repos should have a LEARN.md file to teach student how to build your project step by step. You can explain how to build your project with text, code snippets, images, or even short (5 minute) long video lessons. As the maintainer of a Learn repo, the LEARN.md file requires you to think critically about how to explain the building of your project and how to also make it engaging. We don't expect you to be an expert teacher, but we would like you to reflect on how difficult it was to get to your level of knowledge, and then provide friendly guidance to help other students to learn.

Reference: https://github.com/Recode-Hive/Stackoverflow-Analysis/blob/main/Learn.md

Adding pre-defined rules

Sorting and separating files as per the rules defined by users,for example based on extensions like txt,exe,py ,etc.

[FEAT] : Customizable File Organization Rules.

Description:

Users can create their own rules to automatically sort files into folders in the Autodesk software. This helps save time and keeps files organized.

Problem:
Organizing files manually takes too much time and can be messy. Everyone has different ways they like to organize files, and projects have different needs.

My Solution:
Let users make rules for how files should be organized. They can choose things like file type, project phase, or client to sort files automatically.

Key Features:

  • Easy Rule Creation: Make it simple for users to create their own rules for organizing files.
  • Rule Management: Let users change or delete rules if needed.
  • Preview and Check: Show users what will happen before applying the rules to make sure everything is right.
  • Automatic Sorting: Files get sorted automatically according to the rules users set up.
  • Handling Mistakes: Help users fix any problems or mistakes that might happen during sorting.

Expected Benefits:

  • Save Time: Users spend less time sorting files manually.
  • Stay Organized: Files are always organized the way users want, making it easier to find things.
  • Flexible: Users can set up rules that fit different projects and preferences.

Additional Considerations:

  • User Feedback: Get input from users to make sure the feature works well for them.
  • Documentation and Training: Provide guides and training so users know how to use the new feature.

By letting users create their own file organization rules, we make it easier for them to stay organized and save time while working in Autodesk software.

Adding contents to the repo

Sir, I have relevant experience coding in python and am seeking opportunities to learn more and enhance my standing. I request you to assign me the task of contributing to this project as and when required. Currently, we can start planning on the structure of the project and work accordingly.

Add issues

As the maintainer of a Collaborate repo, keeping Issues up-to-date will help the student community understand what they can do to contribute. Issues should vary by the easy (update documentation) to the difficult (add a new feature). The more involved you are, the more opportunities there are to collaborate.

Recommendations:

Add issues of varying difficulty to the repo often. you can add the tag GSSoC'24, Girlscript, good first issue etc.
Try to add some documentation issues as well it would be easy for beginner contributor to explore opensource through your repo.
Generate issues even if you plan on solving them, so the repository appears as active.
Contribute/commit often to the repo so it does not go stale.
Reference https://github.com/Recode-Hive/Stackoverflow-Analysis/issues

Enhancement: Adding a different thread

In the #12, I mentioned about an idea of Downloads Router.
This issue is an enhancement to the project.

Since this is a GUI application, it will be a heavy software to keep running in the background. But for Automation, the software needs to be kept running in the background. So, it will be better if we create a different thread that can be started and stopped by the GUI app. This sole purpose of the thread will be doing the automations that the user chooses for in the GUI app. This thread can also be stopped by the user when not needed.

  • A GUI that let's the user choose the automations available.

  • A thread running in the background that does the actual work.

Note: Not sure how to achieve this and would need a team to accomplish this.

Improving gui

Changes to be done:
1.File renaming based on a user-defined pattern
2.Searching for files in a specified directory based on a search term
3.Organizing files based on rules
4.Saving and deleting rules in an SQLite database
5.Updating the rules list displayed in the GUI
6.Browsing and selecting a file, source directory, or destination folder
7.The GUI layout has been rearranged for better organization and clarity.
8.Adding background colour to make it attractive.

Please assign this to me under gssoc.

Missing CONTRIBUTING.md File in Repository

The repository currently lacks a CONTRIBUTING.md file, which is an important resource for guiding potential contributors on how to engage with the project effectively. A CONTRIBUTING.md file outlines the contribution guidelines, coding standards, and procedures for submitting pull requests, thus streamlining the contribution process and ensuring consistency across contributions.

Could you please assign this issue to me under GSSOC 24.

[DOC] : Create PULL REQUEST TEMPLATE.

Description:
We currently lack a pull request template in our project repository. Pull request templates help streamline the contribution process by providing contributors with guidelines on how to submit their changes effectively.

Objective:
The objective of this issue is to create a pull request template that includes essential information and guidelines for contributors when submitting their pull requests.

Tasks:

1,Create a new file named PULL_REQUEST_TEMPLATE.md.
2,Add necessary sections to the template, such as:
3.Description of Changes
4.Related Issues
5.Checklist for Contributors
6.Additional Notes
Ensure that the template is clear, concise, and includes all relevant information for reviewers and contributors.

Completion Criteria:

1.The PULL_REQUEST_TEMPLATE.md file is created and added to the repository.
2.The template includes all necessary sections and guidelines for contributors.
3.The template is clear, concise, and easy to understand.

Additional Notes:

Pull request templates help maintain consistency and improve the overall contribution experience for everyone involved. Let's ensure that our template facilitates smooth and efficient collaboration within the project community.

LET'S COLLECTIVELY MAKE AUTOMADESK BETTER AND BETTER !!

[DOC] : creation of FEATURE-REQUEST-TEMPLATE.

THERE IS NO FEATURE-REQUEST-TEMPLATE in AutomaDesk.

Description:
Create a template for submitting feature requests in AutomaDesk. The template will guide contributors in providing essential details about their requested features, making the process clearer and more efficient.

Tasks:

1.Create FEATURE_REQUEST_TEMPLATE.md.
2.Structure the template with clear prompts.
3.Test the template with a sample request.

Completion Criteria:

1.Template file created.
2.Template includes clear prompts.
3.Tested and functional for guiding feature requests.

Additional Notes:

This template will streamline the feature request process, ensuring that all necessary information is provided for evaluation and prioritization.

Let's make AutomaDesk SHINE through our collective effort!!

Idea: Adding a Downloads Router

  • We can try creating a Downloads Router.

A Downloads Router is an application, or a utility that automates the downloads from specific websites from specific URLs.
For example, if we download contents/notes/files from Udemy, the downloads will be done in a folder specified for only Udemy downloads. Similarly, let's say LinkedIn Learning. These downloads don't usually have a track and they end up in the default Downloads folder, which later might not be easy to manage.

Now if this will be a separate GUI or an integration to an existing application, needs to be discussed.

Sorting files and storing them in folders based on extension

on the basis of their extensions into corresponding folders in the same directory. Adding a file deleter based on extension and also adding a pdf downloader from a given website link to automate the process of downloading pdf files in bulk from a given website

[DOC] : Correction of CODE OF CONDUCT doc.

Description:

This issue addresses mistakes found in the project's code of conduct document. A clear and accurate code of conduct is crucial for maintaining a positive and inclusive community. The objective is to review and correct any inaccuracies or inconsistencies in the document to ensure it aligns with our project's values. Tasks include identifying mistakes, making revisions, and testing the updated document for clarity and effectiveness.

Completion Criteria:

[ ]Documented mistakes in the code of conduct.
[ ]Revised document addressing identified errors.
[ ]Approval from project maintainers.

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.