open-source-ideas / ideas

💡 Looking for inspiration for your next open source project? Or perhaps you've got a brilliant idea you can't wait to share with others? Open Source Ideas is a community built specifically for this! 👋
6.57k stars 220 forks source link

Batch file generator #38

Open AlvaDamian opened 7 years ago

AlvaDamian commented 7 years ago

Project description

Write the batch logic, test and compile for multiple OS whitout knowing programming. Additionally, create your own command and save it for reuse.

Use Case: Let's suppose we have 5 tasks (from A to B) to do everytime we start our PC and task C has parameters (can be the action to start an application on debug mode). We can reduce those 5 tasks to 1 with a batch file, but we don't know how to write one and we don't want or have time to learn.

So, we can implement the logic on a GUI and compile for our OS like this:

  1. Start a new proyect.
  2. Add task A.
  3. Add task B.
  4. Add task C with parameters.
  5. Add task D.
  6. Add task E.
  7. Select target OS (Or multiple OS if you want).
  8. (Optional) Review resulting code.
  9. (Optional) Test.
  10. Compile.

Relevant Technology

This application can be divided in two parts: GUI and API.

The API can be written in several languages ​​to let people the option of developing the GUI.
The GUI is optional since anyone can write it based on the API.

Who is this for

Intermediate programmers with knowledge in batch (or want to learn). Doesn't need to know the commands for every OS.

FredrikAugust commented 7 years ago

What would these tasks be? Like run program x? If you're talking more advanced than this, it might be really difficult to port to different platforms.

karuppiah7890 commented 7 years ago

Also, the generator itself should run cross platform I think ?

AlvaDamian commented 7 years ago

Tasks can be basic or advanced:

Basic tasks refers to actions that are common on every OS. run program x is a basic tasks. Advanced tasks are not basics and we can let the user to write then. For this, they need knowledge in batch for the target OS.

An example for an advanced tasks:

Some time ago I had to delete a folder in Windows, but I did not have the neccesary permissions on that folder and I was the system administrator. Therefore, I had to write some batch commands to change the permissions and delete the folder. Nowadays I do not remember how I did this and I have to learn it again if the problem reappears.

If the application detects that there is a command that can not be compiled to a given operating system, it may display an error message and not compile.

AlvaDamian commented 7 years ago

Also, the generator itself should run cross platform I think ?

The GUI can be cross platform.

Some examples:

GUI API API running on Used for
HTML, CSS and Javascript javascript nodejs server The GUI sends HTTP Requests to the server to compile the file.
HTML, CSS and Javascript javascript browser This can be an standalone application that works on the browser. Just open "index.html" and the application runs
.net .net Client Standalone application. This can do all the work or send the request to a server.
lifeModder19135 commented 5 years ago

I would write it as a native java program so it will