diff --git a/api-faker/src/assets/example_structure.json b/api-faker/src/assets/example_structure.json new file mode 100644 index 0000000..94d46bb --- /dev/null +++ b/api-faker/src/assets/example_structure.json @@ -0,0 +1,8 @@ +{ + "routes": [ + { + "path": "/test", + "structure": "" + } + ] +} diff --git a/api-faker/target/.rustc_info.json b/api-faker/target/.rustc_info.json new file mode 100644 index 0000000..fc9d175 --- /dev/null +++ b/api-faker/target/.rustc_info.json @@ -0,0 +1 @@ +{"rustc_fingerprint":2280153552770172427,"outputs":{"11857020428658561806":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/dqnid/.rustup/toolchains/1.89-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\nfmt_debug=\"full\"\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"x87\"\ntarget_has_atomic\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_has_reliable_f128\ntarget_has_reliable_f16\ntarget_has_reliable_f16_math\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"unknown\"\nub_checks\nunix\n","stderr":""},"7971740275564407648":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/dqnid/.rustup/toolchains/1.89-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\nfmt_debug=\"full\"\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"x87\"\ntarget_has_atomic\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_has_reliable_f128\ntarget_has_reliable_f16\ntarget_has_reliable_f16_math\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"unknown\"\nub_checks\nunix\n","stderr":""},"17747080675513052775":{"success":true,"status":"","code":0,"stdout":"rustc 1.89.0 (29483883e 2025-08-04)\nbinary: rustc\ncommit-hash: 29483883eed69d5fb4db01964cdf2af4d86e9cb2\ncommit-date: 2025-08-04\nhost: x86_64-unknown-linux-gnu\nrelease: 1.89.0\nLLVM version: 20.1.7\n","stderr":""}},"successes":{}} \ No newline at end of file diff --git a/api-faker/target/debug/.cargo-lock b/api-faker/target/debug/.cargo-lock new file mode 100644 index 0000000..e69de29 diff --git a/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/dep-test-bin-api-faker b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/dep-test-bin-api-faker new file mode 100644 index 0000000..5c54f74 Binary files /dev/null and b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/dep-test-bin-api-faker differ diff --git a/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/invoked.timestamp b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/test-bin-api-faker b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/test-bin-api-faker new file mode 100644 index 0000000..13d7905 --- /dev/null +++ b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/test-bin-api-faker @@ -0,0 +1 @@ +b314b835bd0996a8 \ No newline at end of file diff --git a/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/test-bin-api-faker.json b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/test-bin-api-faker.json new file mode 100644 index 0000000..4d567eb --- /dev/null +++ b/api-faker/target/debug/.fingerprint/api-faker-55ee534726f4a600/test-bin-api-faker.json @@ -0,0 +1 @@ +{"rustc":12013579709055016942,"features":"[]","declared_features":"[]","target":11557022582279080855,"profile":3316208278650011218,"path":4942398508502643691,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/api-faker-55ee534726f4a600/dep-test-bin-api-faker","checksum":false}}],"rustflags":[],"config":2069994364910194474,"compile_kind":0} \ No newline at end of file diff --git a/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/bin-api-faker b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/bin-api-faker new file mode 100644 index 0000000..8684809 --- /dev/null +++ b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/bin-api-faker @@ -0,0 +1 @@ +134a3cb2d6c314d9 \ No newline at end of file diff --git a/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/bin-api-faker.json b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/bin-api-faker.json new file mode 100644 index 0000000..9f9d397 --- /dev/null +++ b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/bin-api-faker.json @@ -0,0 +1 @@ +{"rustc":12013579709055016942,"features":"[]","declared_features":"[]","target":11557022582279080855,"profile":17672942494452627365,"path":4942398508502643691,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/api-faker-fb89e3289a1aab50/dep-bin-api-faker","checksum":false}}],"rustflags":[],"config":2069994364910194474,"compile_kind":0} \ No newline at end of file diff --git a/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/dep-bin-api-faker b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/dep-bin-api-faker new file mode 100644 index 0000000..5c54f74 Binary files /dev/null and b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/dep-bin-api-faker differ diff --git a/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/invoked.timestamp b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/api-faker/target/debug/.fingerprint/api-faker-fb89e3289a1aab50/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/api-faker/target/debug/deps/api_faker-55ee534726f4a600.d b/api-faker/target/debug/deps/api_faker-55ee534726f4a600.d new file mode 100644 index 0000000..1118792 --- /dev/null +++ b/api-faker/target/debug/deps/api_faker-55ee534726f4a600.d @@ -0,0 +1,5 @@ +/home/dqnid/Documents/Code/developer-toolbox/api-faker/target/debug/deps/api_faker-55ee534726f4a600.d: src/main.rs + +/home/dqnid/Documents/Code/developer-toolbox/api-faker/target/debug/deps/libapi_faker-55ee534726f4a600.rmeta: src/main.rs + +src/main.rs: diff --git a/api-faker/target/debug/deps/api_faker-fb89e3289a1aab50.d b/api-faker/target/debug/deps/api_faker-fb89e3289a1aab50.d new file mode 100644 index 0000000..17b51f3 --- /dev/null +++ b/api-faker/target/debug/deps/api_faker-fb89e3289a1aab50.d @@ -0,0 +1,5 @@ +/home/dqnid/Documents/Code/developer-toolbox/api-faker/target/debug/deps/api_faker-fb89e3289a1aab50.d: src/main.rs + +/home/dqnid/Documents/Code/developer-toolbox/api-faker/target/debug/deps/libapi_faker-fb89e3289a1aab50.rmeta: src/main.rs + +src/main.rs: diff --git a/api-faker/target/debug/deps/libapi_faker-55ee534726f4a600.rmeta b/api-faker/target/debug/deps/libapi_faker-55ee534726f4a600.rmeta new file mode 100644 index 0000000..e69de29 diff --git a/api-faker/target/debug/deps/libapi_faker-fb89e3289a1aab50.rmeta b/api-faker/target/debug/deps/libapi_faker-fb89e3289a1aab50.rmeta new file mode 100644 index 0000000..e69de29 diff --git a/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/dep-graph.bin b/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/dep-graph.bin new file mode 100644 index 0000000..80f6e77 Binary files /dev/null and b/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/dep-graph.bin differ diff --git a/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/query-cache.bin b/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/query-cache.bin new file mode 100644 index 0000000..f2775e2 Binary files /dev/null and b/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/query-cache.bin differ diff --git a/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/work-products.bin b/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/work-products.bin new file mode 100644 index 0000000..f6a2530 Binary files /dev/null and b/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd-7g3s08xnlsnd5bsgrcjybv4dv/work-products.bin differ diff --git a/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd.lock b/api-faker/target/debug/incremental/api_faker-0shs3kumow2gg/s-ha8cu0qhhw-08k3dxd.lock new file mode 100644 index 0000000..e69de29 diff --git a/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/dep-graph.bin b/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/dep-graph.bin new file mode 100644 index 0000000..5176880 Binary files /dev/null and b/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/dep-graph.bin differ diff --git a/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/query-cache.bin b/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/query-cache.bin new file mode 100644 index 0000000..76cd73a Binary files /dev/null and b/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/query-cache.bin differ diff --git a/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/work-products.bin b/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/work-products.bin new file mode 100644 index 0000000..f6a2530 Binary files /dev/null and b/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl-6ql3dn5asfazhkldrm80k84lp/work-products.bin differ diff --git a/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl.lock b/api-faker/target/debug/incremental/api_faker-12e7v417qt7ov/s-ha8cu0qhlm-0vl8vxl.lock new file mode 100644 index 0000000..e69de29 diff --git a/api-faker/target/rust-analyzer/metadata/sysroot/Cargo.lock b/api-faker/target/rust-analyzer/metadata/sysroot/Cargo.lock new file mode 100644 index 0000000..4f0e7ae --- /dev/null +++ b/api-faker/target/rust-analyzer/metadata/sysroot/Cargo.lock @@ -0,0 +1,485 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "addr2line" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9acbfca36652500c911ddb767ed433e3ed99b032b5d935be73c6923662db1d43" +dependencies = [ + "gimli", + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "adler2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" +dependencies = [ + "rustc-std-workspace-core", +] + +[[package]] +name = "alloc" +version = "0.0.0" +dependencies = [ + "compiler_builtins", + "core", +] + +[[package]] +name = "alloctests" +version = "0.0.0" +dependencies = [ + "rand", + "rand_xorshift", +] + +[[package]] +name = "cc" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aeb932158bd710538c73702db6945cb68a8fb08c519e6e12706b94263b36db8" +dependencies = [ + "shlex", +] + +[[package]] +name = "cfg-if" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" +dependencies = [ + "rustc-std-workspace-core", +] + +[[package]] +name = "compiler_builtins" +version = "0.1.160" +dependencies = [ + "cc", + "core", +] + +[[package]] +name = "core" +version = "0.0.0" + +[[package]] +name = "coretests" +version = "0.0.0" +dependencies = [ + "rand", + "rand_xorshift", +] + +[[package]] +name = "dlmalloc" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d01597dde41c0b9da50d5f8c219023d63d8f27f39a27095070fd191fddc83891" +dependencies = [ + "cfg-if", + "libc", + "rustc-std-workspace-core", + "windows-sys", +] + +[[package]] +name = "fortanix-sgx-abi" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57cafc2274c10fab234f176b25903ce17e690fca7597090d50880e047a0389c5" +dependencies = [ + "compiler_builtins", + "rustc-std-workspace-core", +] + +[[package]] +name = "getopts" +version = "0.2.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cba6ae63eb948698e300f645f87c70f76630d505f23b8907cf1e193ee85048c1" +dependencies = [ + "rustc-std-workspace-core", + "rustc-std-workspace-std", + "unicode-width", +] + +[[package]] +name = "gimli" +version = "0.32.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93563d740bc9ef04104f9ed6f86f1e3275c2cdafb95664e26584b9ca807a8ffe" +dependencies = [ + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "hashbrown" +version = "0.15.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" +dependencies = [ + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "hermit-abi" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" +dependencies = [ + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "libc" +version = "0.2.174" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" +dependencies = [ + "rustc-std-workspace-core", +] + +[[package]] +name = "memchr" +version = "2.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +dependencies = [ + "rustc-std-workspace-core", +] + +[[package]] +name = "miniz_oxide" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +dependencies = [ + "adler2", + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "object" +version = "0.37.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03fd943161069e1768b4b3d050890ba48730e590f57e56d4aa04e7e090e61b4a" +dependencies = [ + "memchr", + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "panic_abort" +version = "0.0.0" +dependencies = [ + "alloc", + "compiler_builtins", + "core", + "libc", +] + +[[package]] +name = "panic_unwind" +version = "0.0.0" +dependencies = [ + "alloc", + "cfg-if", + "compiler_builtins", + "core", + "libc", + "unwind", +] + +[[package]] +name = "proc_macro" +version = "0.0.0" +dependencies = [ + "core", + "rustc-literal-escaper", + "std", +] + +[[package]] +name = "profiler_builtins" +version = "0.0.0" +dependencies = [ + "cc", +] + +[[package]] +name = "r-efi" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +dependencies = [ + "rustc-std-workspace-core", +] + +[[package]] +name = "r-efi-alloc" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc2f58ef3ca9bb0f9c44d9aa8537601bcd3df94cc9314a40178cadf7d4466354" +dependencies = [ + "r-efi", + "rustc-std-workspace-core", +] + +[[package]] +name = "rand" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97" +dependencies = [ + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" + +[[package]] +name = "rand_xorshift" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a" +dependencies = [ + "rand_core", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f" +dependencies = [ + "rustc-std-workspace-core", +] + +[[package]] +name = "rustc-literal-escaper" +version = "0.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0041b6238913c41fe704213a4a9329e2f685a156d1781998128b4149c230ad04" +dependencies = [ + "rustc-std-workspace-std", +] + +[[package]] +name = "rustc-std-workspace-alloc" +version = "1.99.0" +dependencies = [ + "alloc", +] + +[[package]] +name = "rustc-std-workspace-core" +version = "1.99.0" +dependencies = [ + "compiler_builtins", + "core", +] + +[[package]] +name = "rustc-std-workspace-std" +version = "1.99.0" +dependencies = [ + "std", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "std" +version = "0.0.0" +dependencies = [ + "addr2line", + "alloc", + "cfg-if", + "compiler_builtins", + "core", + "dlmalloc", + "fortanix-sgx-abi", + "hashbrown", + "hermit-abi", + "libc", + "miniz_oxide", + "object", + "panic_abort", + "panic_unwind", + "r-efi", + "r-efi-alloc", + "rand", + "rand_xorshift", + "rustc-demangle", + "std_detect", + "unwind", + "wasi", + "windows-targets 0.0.0", +] + +[[package]] +name = "std_detect" +version = "0.1.5" +dependencies = [ + "cfg-if", + "libc", + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "sysroot" +version = "0.0.0" +dependencies = [ + "proc_macro", + "profiler_builtins", + "std", + "test", +] + +[[package]] +name = "test" +version = "0.0.0" +dependencies = [ + "core", + "getopts", + "libc", + "std", +] + +[[package]] +name = "unicode-width" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" +dependencies = [ + "rustc-std-workspace-core", + "rustc-std-workspace-std", +] + +[[package]] +name = "unwind" +version = "0.0.0" +dependencies = [ + "cfg-if", + "compiler_builtins", + "core", + "libc", + "unwinding", +] + +[[package]] +name = "unwinding" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d80f6c2bfede213d9a90b4a14f3eb99b84e33c52df6c1a15de0a100f5a88751" +dependencies = [ + "compiler_builtins", + "gimli", + "rustc-std-workspace-core", +] + +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" +dependencies = [ + "rustc-std-workspace-alloc", + "rustc-std-workspace-core", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.0.0" + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" diff --git a/api-faker/target/rust-analyzer/metadata/workspace/Cargo.lock b/api-faker/target/rust-analyzer/metadata/workspace/Cargo.lock new file mode 100644 index 0000000..5b8b54c --- /dev/null +++ b/api-faker/target/rust-analyzer/metadata/workspace/Cargo.lock @@ -0,0 +1,7 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "api-faker" +version = "0.1.0" diff --git a/image-converter/.editorconfig b/image-converter/.editorconfig new file mode 100644 index 0000000..e7ef85b --- /dev/null +++ b/image-converter/.editorconfig @@ -0,0 +1,16 @@ +root = true + +# Unix-style newlines with a newline ending every file +[*] +end_of_line = lf +insert_final_newline = true + +[*.{md,py}] +charset = utf-8 + +[*.py] +indent_style = tab +indent_size = 4 + +[Makefile] +indent_style = tab diff --git a/image-converter/.gitignore b/image-converter/.gitignore new file mode 100644 index 0000000..6d9a534 --- /dev/null +++ b/image-converter/.gitignore @@ -0,0 +1,6 @@ +/venv +/venv/* +__pycache__/ +/build +/dist +*.spec diff --git a/image-converter/Makefile b/image-converter/Makefile new file mode 100644 index 0000000..8580adc --- /dev/null +++ b/image-converter/Makefile @@ -0,0 +1,16 @@ +install: + echo ">>> Installing dependencies" + pip install --upgrade pip + pip install -r requirements.txt + +build: + pyinstaller src/main.py --onefile + +save: + pip freeze > requirements.txt + +run: + python src/main.py + +setenv: + python -m venv venv diff --git a/image-converter/README.md b/image-converter/README.md new file mode 100644 index 0000000..935932c --- /dev/null +++ b/image-converter/README.md @@ -0,0 +1,21 @@ +# Image converter + +Simple tool to convert images on mass. + +- Resize +- Format + + +## Usage + +- `-H ` : max height of vertical images. +- `-W ` : max width of horizontal images. +- `-e ` : extension of the output files. +- `-d ` : input directory path. +- `-f ` : file or list of files (paths) to parse. +- `-o ` : output directory path. +- `-h` : print help. + +### Examples of usage + +- `python converter.py -d ./assets -f ./another/file.png ./yet\ one\ more/file2.CR2 -e png -W 1000` : convert every file inside assets plus both `file.png` and `file2.CR2` into `PNG` with a with of 1000. diff --git a/image-converter/requirements.txt b/image-converter/requirements.txt new file mode 100644 index 0000000..fefff95 --- /dev/null +++ b/image-converter/requirements.txt @@ -0,0 +1,6 @@ +iniconfig==2.3.0 +packaging==25.0 +pillow==12.1.0 +pluggy==1.6.0 +Pygments==2.19.2 +pytest==9.0.2 diff --git a/image-converter/src/assets/fee.jpg b/image-converter/src/assets/fee.jpg new file mode 100644 index 0000000..a018f91 Binary files /dev/null and b/image-converter/src/assets/fee.jpg differ diff --git a/image-converter/src/assets/foo.CR2 b/image-converter/src/assets/foo.CR2 new file mode 100644 index 0000000..eeb8baf Binary files /dev/null and b/image-converter/src/assets/foo.CR2 differ diff --git a/image-converter/src/main.py b/image-converter/src/main.py new file mode 100644 index 0000000..56970c6 --- /dev/null +++ b/image-converter/src/main.py @@ -0,0 +1,18 @@ +from modules.image_parser import (parse_image, parse_whole_directory) +from modules.argument_parser import (generate_argument_parser) + +if __name__ == "__main__": + arg_parser = generate_argument_parser() + args = arg_parser.parse_args() + + print(args, args.extension) + + # Parse directory + if (args.directory != None): + parse_whole_directory(args.directory, args.output, args.height, args.width, args.extension) + + # Parse individual files + if (args.files != None): + for file in args.files: + parse_image(file, args.output, args.height, args.width, args.extension) + diff --git a/image-converter/src/modules/argument_parser.py b/image-converter/src/modules/argument_parser.py new file mode 100644 index 0000000..36916c4 --- /dev/null +++ b/image-converter/src/modules/argument_parser.py @@ -0,0 +1,11 @@ +import argparse + +def generate_argument_parser(): + parser = argparse.ArgumentParser(prog="Image Processor", description="A simple image format convert and resize tool.", epilog="Use any combination of arguments.") + parser.add_argument("-H", "--height", type=int, help="max height for vertical images") + parser.add_argument("-W", "--width", type=int, help="max width for horizontal images") + parser.add_argument("-e", "--extension", type=str, default="png",help="extension of the processed files") + parser.add_argument("-d", "--directory", type=str, help="directory of files to process") + parser.add_argument("-f", "--files", nargs="+", help="list of files to process") + parser.add_argument("-o", "--output", type=str, default="./",help="directory for the output files") + return parser diff --git a/image-converter/src/modules/image_parser.py b/image-converter/src/modules/image_parser.py new file mode 100644 index 0000000..f06a104 --- /dev/null +++ b/image-converter/src/modules/image_parser.py @@ -0,0 +1,43 @@ +from PIL import Image + +import os +import math + +def parse_image(src: str, target_src: str, max_vertical_size_px: int, max_horizontal_size_px: int, target_extension: str): + if (src == None): + return + if (target_extension == None): + target_extension = "png" + rawImage = Image.open(src) + + if (rawImage.height > rawImage.width): + if (max_vertical_size_px == None or max_vertical_size_px < 1): + max_vertical_size_px = rawImage.height + target_height = max_vertical_size_px + target_width = math.ceil(rawImage.width * max_vertical_size_px / rawImage.height) + else: + if (max_horizontal_size_px == None or max_horizontal_size_px < 1): + max_horizontal_size_px = rawImage.width + target_width = max_horizontal_size_px + target_height = math.ceil(rawImage.height * max_horizontal_size_px / rawImage.width) + + rawImage = rawImage.resize((target_width, target_height)) + + filename = os.path.basename(src) + last_dot = filename.rfind(".") + filename = filename[:last_dot] + "." + target_extension + if (target_src == None): + target_src = os.path.abspath(os.path.dirname(src)) + else: + target_src = os.path.abspath(target_src) + full_path = os.path.join(target_src, filename) + rawImage.save(full_path) + +def parse_whole_directory(dir_src: str, target_src: str, max_vertical_size_px: int, max_horizontal_size_px: int, target_extension: str): + for file_path in get_file_path_iter(dir_src): + parse_image(file_path,target_src, max_vertical_size_px, max_horizontal_size_px, target_extension) + +def get_file_path_iter(directory): + for dirpath,_,filenames in os.walk(directory): + for f in filenames: + yield os.path.abspath(os.path.join(dirpath, f))