Commit Graph

84 Commits

Author SHA1 Message Date
javier e27d72cdc2 Integrated the TerminalService service as well as the InitGitInFolderTask and RenderFilesTask tasks in the CreatedCommand command in the executable target. 2025-02-08 12:57:35 +01:00
javier 94e6070091 Implemented the RenderFilesTask task in the library target. 2025-02-08 12:55:31 +01:00
javier 5f5f902773 Implemented the InitGitInFolderTask task in the library target. 2025-02-08 12:21:42 +01:00
javier 2698e1e29c Removed the RunProcessTask task from the library target. 2025-02-08 12:20:53 +01:00
javier 07e8012faf Implemented the TerminalService service for the library target 2025-02-08 10:34:30 +01:00
javier 33ae67fc58 Implemented the "createFile(at: with: )" function for the FileService service in the library target. 2025-02-07 21:50:50 +01:00
javier 3dcb110de1 Fixed the names for some of the cases for the Template enumeration in the library target. 2025-02-05 01:22:27 +01:00
javier af73e6d1a2 Removed the "app", "appTests", and "package" cases from the File enumeration in the library target. 2025-02-05 00:16:09 +01:00
javier 91762b18cd Implemented the Template enumeration in the library target. 2025-02-05 00:00:22 +01:00
javier 87dc069917 Defined the Package, App, and AppTests mustache templates in the library target. 2025-02-04 23:49:56 +01:00
javier 7b1cb9ae2a Implemented the Project model in the library target. 2025-02-04 23:24:35 +01:00
javier a515747c21 Implemented the TemplateService service in the library target. 2025-02-04 21:57:47 +01:00
javier 1de9738e6e Defined the "render(_: on: )" function for the TemplateServicing protocol in the library target. 2025-02-04 20:58:14 +01:00
javier 17734dadee Merge branch 'main' into feature/arguments-templating 2025-01-28 01:09:53 +01:00
javier 9be8fa4a31 Basic project creation (#3)
This PR contains the work done to create a new *Hummingbird* project with very basic configuration from the _colibri_ executable, just like the project you could create with the [Hummingbird template](https://github.com/hummingbird-project/template) project in Github.

Reviewed-on: #3
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
2025-01-28 00:07:24 +00:00
javier b8c354e614 Root folder creation (#2)
This PR contains the work done to create the root folder of a new project when executing the _colibri_ executable. In addition, some other work has been done:

* added the `ArgumentParser` package dependency to the package;
* implemented the `FileService` service in the _library_ target;
* implemented the `CreateRootFolderTask` task in the _library_ target;
* removed some unnecessary comments and boilerplate code;

Reviewed-on: #2
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
2025-01-27 23:54:50 +00:00
javier d0d47d280d Package target setup (#1)
This PR contains the work done to setup the *executable*, *library*, and *test* targets for the Swift package. In addition, some boilerplate code has been removed.

Reviewed-on: #1
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
2025-01-27 23:38:34 +00:00
javier bc765705a8 Defined the "render(_: on: )" function for the TemplateServicing protocol in the library target. 2025-01-25 00:27:47 +01:00
javier 8bc446ca68 Added the "resourcePath" property to the Bundleable protocol in the library target. 2025-01-24 23:52:30 +01:00
javier 7dfddb8d4c Added the Swift Mustache package dependency to the Package file, and attached its product to the library target. 2025-01-19 01:27:06 +01:00
javier 36f1b8fe5c Implemented some tests for the RunProcessTaskTests case tests in the tests target. 2025-01-18 23:21:35 +01:00
javier c7a1258273 Integrated the InitGitInFolderTask task into the CreateCommand command in the executable target. 2025-01-18 20:36:05 +01:00
javier 1fcbc38253 Implemented the InitGitInFolderTask task in the library target. 2025-01-18 20:33:26 +01:00
javier 7081f7b755 Implemented the RunProcessTask task in the library target. 2025-01-18 20:05:37 +01:00
javier 245529f88f Implemented the Processable protocol in the library target and conformed the Process object to it. 2025-01-18 20:04:24 +01:00
javier 02fb6b9345 Implemented the "availableData" property for the Pipe+Properties extension in the library target and also, implemented its "append()" function that appends its data concurrently. 2025-01-18 20:03:11 +01:00
javier d3283c912f Renamed the BundleServicing protocol in the library target as Bundleable. 2025-01-18 19:52:40 +01:00
javier c08dbe5602 Added some more cases to the File enumeration in the library target. 2025-01-18 16:04:03 +01:00
javier 0b69973537 Moved the files under the "Resources/Files" folder in the library target to the "Resources/Files/Sources" folder. 2025-01-18 12:41:09 +01:00
javier 3f8651ca52 Implemented the "allCasesWithRoot" static property for the Folder enumeration in the library target. 2025-01-18 12:31:13 +01:00
javier 6fe45db4f1 Implemented the "folder" property for the File enumeration in the library target. 2025-01-18 12:19:29 +01:00
javier 5f958c6f4c Added the "root" case to the Folder enumeration. 2025-01-18 12:14:42 +01:00
javier 29dad1d688 Added the "dockerFile" case to the File enumeration in the library target. 2025-01-18 12:07:57 +01:00
javier f558465b62 Renamed the ResourceFile enumeration in the library target as File and also, implemented its "filePath" and "resourcePath" properties. 2025-01-18 11:51:36 +01:00
javier 720ad687fb Implemented the "path" property for the Folder enumeration in the library target. 2025-01-18 11:40:25 +01:00
javier 504b3be447 Fixed the package resource file in the library target. 2025-01-18 04:46:59 +01:00
javier 4d55fadfb8 Improved the Package file from the project. 2025-01-18 04:45:58 +01:00
javier 026251ad6d Improved the implementation for the CreateFolderTask task in the library target. 2025-01-18 04:25:01 +01:00
javier 9ee7592902 Refactored some test cases in the tests target. 2025-01-18 04:03:07 +01:00
javier 1094bbb6c8 Restructured the folder structure in the library and test targets. 2025-01-18 03:50:18 +01:00
javier 1466bff250 Implemented the CopyFilesTask task in the library module. 2025-01-18 03:06:39 +01:00
javier 647c5bd32a Defined the ResourceFile enumeration in the library target and also, implemented its "fileName" computed property. 2025-01-18 02:03:55 +01:00
javier b8d5bea7ae Implemented the "copyFile(from: to: )" function for the FileService service in the library target. 2025-01-18 01:07:52 +01:00
javier af4958a5e8 Conformed the Bundle representation of the Foundation framework to the BundleServicing protocol in the library target. 2025-01-18 00:19:59 +01:00
javier 5a3654a68f Implemented the BundleServicing protocol in the library target. 2025-01-18 00:18:11 +01:00
javier 6720464026 Renamed the project file assets in the library target. 2025-01-18 00:15:42 +01:00
javier 640683063e Restructured the folder structure of the test target. 2025-01-17 23:23:10 +01:00
javier 04bd2a1160 Restructured the folder structure of the library target. 2025-01-17 23:21:25 +01:00
javier 6955d816ef Restructured the folder structure of the executable target. 2025-01-17 23:19:01 +01:00
javier 94e28a324b Moved the project files from the executable target to the library target. 2025-01-17 23:17:20 +01:00