{"id":28572416,"url":"https://github.com/marsdevx/mycode","last_synced_at":"2025-06-10T20:15:49.184Z","repository":{"id":297047220,"uuid":"987287971","full_name":"marsdevx/mycode","owner":"marsdevx","description":"📟 📂  Terminal tool to manage, group, and launch projects with GitHub integration.","archived":false,"fork":false,"pushed_at":"2025-06-03T19:00:06.000Z","size":4363,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-04T01:12:34.331Z","etag":null,"topics":["bash","cli","cli-app","config","config-file","cross-platform","github-api","github-rest-api","github-rest-v3","linux","macos","project-management","project-management-tool","project-manager","project-organizer","python","python3","zsh","zshrc","zshrc-configs"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marsdevx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-20T21:20:01.000Z","updated_at":"2025-06-04T00:19:58.000Z","dependencies_parsed_at":"2025-06-04T01:12:43.466Z","dependency_job_id":"67dcfdd9-508d-4f64-af66-01f7d85a876b","html_url":"https://github.com/marsdevx/mycode","commit_stats":null,"previous_names":["marsdevx/mycode"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marsdevx%2Fmycode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marsdevx%2Fmycode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marsdevx%2Fmycode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marsdevx%2Fmycode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marsdevx","download_url":"https://codeload.github.com/marsdevx/mycode/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marsdevx%2Fmycode/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259144972,"owners_count":22811936,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","cli","cli-app","config","config-file","cross-platform","github-api","github-rest-api","github-rest-v3","linux","macos","project-management","project-management-tool","project-manager","project-organizer","python","python3","zsh","zshrc","zshrc-configs"],"created_at":"2025-06-10T20:15:45.601Z","updated_at":"2025-06-10T20:15:49.172Z","avatar_url":"https://github.com/marsdevx.png","language":"Python","readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"imgs/logo.png\" width=\"320px\" alt=\"Mycode Logo\"\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Last Commit](https://custom-icon-badges.demolab.com/github/last-commit/marsdevx/mycode?logoColor=white\u0026labelColor=2C2C2C\u0026label=Last%20Commit\u0026color=8A2BE2\u0026logo=mark-github)](https://github.com/marsdevx/mycode/commits/main \"Last Commit\")\n[![Platforms](https://custom-icon-badges.demolab.com/static/v1?logoColor=white\u0026labelColor=2C2C2C\u0026label=Platforms\u0026message=macOS%20|%20Linux\u0026color=D32F2F\u0026logo=device-desktop)](https://github.com/marsdevx/mycode \"Platforms\")\n\u003cbr\u003e\n[![Languages](https://custom-icon-badges.demolab.com/static/v1?logoColor=white\u0026labelColor=2C2C2C\u0026label=Languages\u0026message=Bash%20|%20Python%203.12\u0026color=748ADB\u0026logo=file-code)](https://github.com/marsdevx/mycode \"Languages\")\n[![GitHub API](https://custom-icon-badges.demolab.com/static/v1?logoColor=white\u0026labelColor=2C2C2C\u0026label=API\u0026message=GitHub%20REST%20v3\u0026color=F47F42\u0026logo=code)](https://docs.github.com/en/rest \"GitHub API\")\n[![Shell Support](https://custom-icon-badges.demolab.com/static/v1?logoColor=white\u0026labelColor=2C2C2C\u0026label=Shell\u0026message=Zsh%20%7C%20Bash\u0026color=009688\u0026logo=gnu-bash)](https://github.com/marsdevx/mycode \"Shell Support\")\n[![License](https://custom-icon-badges.demolab.com/static/v1?logoColor=white\u0026labelColor=2C2C2C\u0026label=License\u0026message=MIT\u0026color=00C853\u0026logo=law)](https://github.com/marsdevx/mycode/blob/main/LICENSE \"License\")\n\n\u003c/div\u003e\n\n---\n\n# 📂 MyCode\n\n**Mycode** is a **terminal**-based, **cross-platform** application built with **Python**, designed to help developers efficiently **manage** and **organize** their work projects on **macOS** and **Linux**. With a customizable mycoderc config file, this tool brings **clarity**, **automation**, and **speed** to your **development workflow**.\n\n* Organize your **projects** by **groups** using a simple, readable **config file**.\n* Instantly view what **projects** you’ve worked on recently and in what order.\n* Open any project in **Visual Studio Code** directly from the **terminal**—with optional **terminal auto-close**.\n* Store your **GitHub credentials** locally and securely in a **.json** file for quick reuse.\n* Create **new projects** with a single command:\n  - Instantly create a private **GitHub** repo,\n  - **Clone** it to a local folder,\n  - Add **default** **README** and **.gitignore**,\n\nTake control of your dev life with this smart and simple CLI utility that works seamlessly across macOS and Linux!\n\n---\n\n## 🖼️ Preview\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"imgs/preview1.png\" alt=\"Preview\"\u003e\n  \u003cimg src=\"imgs/preview2.png\" alt=\"Preview\"\u003e\n\u003c/div\u003e\n\n---\n\n## 🛠️ Installation\n\nTo install this project, Launch the Terminal app on your system, and run the commands below. \u003cbr\u003e\n  - If a pop-up appears prompting you to download the Xcode Command Line Tools after the first command, click “Download” and then run the first command again.\n\n1. **Install mycode**\n```bash\nbrew tap marsdevx/mycode\nbrew install mycode\n```\n\n2. **Set up mycoderc file**\n\u003e After the first launch of the program, a default configuration file will be created at: `~/.config/mycode/mycoderc`\n```bash\n💾 Configuration File Rules:\n  - `--add \u003cpath\u003e`: Adds all subfolders in the specified path to global projects.\n  - `--addspecific \u003cpath\u003e`: Adds only the specified folder to global projects.\n  - `--remove \u003cpath\u003e --from \u003cpath\u003e`: Excludes a specific subfolder from a parent path.\n\n🔗 Grouping Projects:\nGroups can be defined using `[group:group_name]` syntax in the configuration file.\n  - Group-specific rules:\n      - `--add \u003cpath\u003e`: Adds subfolders to the group only.\n      - `--addspecific \u003cpath\u003e`: Adds only the specified folder to the group.\n      - `--remove \u003cpath\u003e --from \u003cpath\u003e`: Excludes a specific subfolder in the group.\n  - Example:\n      [group:example_group]\n      {\n          --add ~/example/path\n          --addspecific ~/example/specific_project\n          --remove ~/example/path/excluded_folder --from ~/example/path\n      }\n```\n\n3. **Set up Shell Autocompletion**\n\u003e Make sure to add the following to your shell config (e.g. ~/.zshrc or ~/.bashrc):\n```bash\nautoload -Uz compinit bashcompinit\ncompinit\nbashcompinit\n\neval \"$(register-python-argcomplete mycode)\"\n\n_mycode() {\n  if (( CURRENT \u003e 2 )) \u0026\u0026\n      [[ ${words[CURRENT-2]} == --create || ${words[CURRENT-2]} == -c ]]; then\n    _files\n    return\n  fi\n\n  if (( CURRENT \u003e 1 )) \u0026\u0026\n      [[ ${words[CURRENT-1]} == --create || ${words[CURRENT-1]} == -c ]]; then\n    return\n  fi\n\n  _python_argcomplete \"$@\"\n}\n\ncompdef _mycode mycode\n```\n\n\u003e Then run:\n```bash\nsource ~/.zshrc\nor\nsource ~/.bashrc\n```\n\n---\n\n## 🚀 Usage\n\n- `mycode -s all`  \n  Show all global projects defined in your config.\n\n- `mycode -s groups`  \n  Show all available groups and the projects within them.\n\n- `mycode -s \u003cgroup_name\u003e`  \n  Show all projects in the specified group.\n\n- `mycode \u003cproject_name\u003e`  \n  Open the specified project in **Visual Studio Code** and automatically close the terminal.\n\n- `mycode \u003cproject_name\u003e -n`  \n  Open the specified project in **VS Code**, but **do not close the terminal**.\n\n- `mycode -c \u003cproject_name\u003e \u003ctarget_dir\u003e`  \n  Create a new local project folder and a **private GitHub repository**, generate default files, and push it to GitHub — all in one command.\n\n---\n\n## 📋 License\n\nAll the code contained in this repo is licensed under the [MIT License](LICENSE)\n\n```\nMIT License\n\nCopyright (c) 2025 marsdevx\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n\n---\n\n## ⭐ Support\n\nIf you like this project, don’t forget to ⭐ **star** it and **follow** me!  \nYour **support** helps me create more projects. 🚀  \n\n🔗 **Explore more of my work on [GitHub](https://github.com/marsdevx?tab=repositories) and discover other exciting projects!**","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarsdevx%2Fmycode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarsdevx%2Fmycode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarsdevx%2Fmycode/lists"}