hyraft-server 0.1.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7868beef9b8746d00d05fcadb95e425f999e24d3a174327ec66428d5518083b6
4
- data.tar.gz: 9c85aa67326ecea6c2275cdcf3af72a4baf468ed081fda19c967847a73ef2472
3
+ metadata.gz: 76f9497216ffdc394b1830109b6034c5292ddab9999ff290c702a72836fce550
4
+ data.tar.gz: ec5c5a62baabe8e68a889c6944b0c0ced9be4038e073da54705decc4d240980b
5
5
  SHA512:
6
- metadata.gz: c34b59eddb0654dab9c3a6328a560b4327024fd6913649cf892745ca639031a90c97ec0b200faad9755abc5fc64010e9def7fde6151090f409b5e4451fc443c4
7
- data.tar.gz: '08dd5cc15c76dfadf3b397b03aa4b56860464da6632ce125a13c4d8a9b3747fe8a76b924d36829e0f3f79c809103e158a9c716c48f5f42a366cf0201f5d75a66'
6
+ metadata.gz: f341f5428e8bede176b16f55370142344bead0d50f0c55d0ece5dd5ec683f0d5eb17fb05344e8d2f1e90dbd93b220c5b3031b6d6b54f4858afb3650b13dd578c
7
+ data.tar.gz: e286b2faf80f4154ea181bebfabd98b6396eca88233b0bfca8d0bedf4705280673ef533027f83ac32557995d5f2ebba53ececf1e8cc00b5bc401924ccd50aa0a
data/README.md CHANGED
@@ -6,52 +6,32 @@
6
6
  ![Downloads](https://img.shields.io/gem/dt/hyraft-server)
7
7
  ![License](https://img.shields.io/github/license/demjhonsilver/hyraft-server)
8
8
  ![Ruby Version](https://img.shields.io/badge/ruby-%3E%3D%203.4.0-red)
9
+ ![Tests](https://github.com/demjhonsilver/hyraft-server/actions/workflows/ci.yml/badge.svg)
9
10
 
10
11
 
11
- </div>
12
-
13
12
 
13
+ </div>
14
14
 
15
- Web server for Hyraft framework
16
15
 
17
- Dual-server web stack implementing hexagonal architecture. Supports simultaneous web and API servers across multiple Ruby backends (Puma, Thin, Falcon, Iodine) for the Hyraft platform.
18
16
 
19
- ## Installation
17
+ Server for Hyraft framework
20
18
 
21
- Open Gemfile:
22
- put:
19
+ ____________________
23
20
 
24
- ```bash
25
- gem 'hyraft-server'
26
- ```
21
+ Dual-server web stack implementing hexagonal architecture. Supports simultaneous web and API servers across multiple Ruby backends (Puma, Thin, Falcon, Iodine) for the Hyraft framework.
27
22
 
28
- Switch to Thin # Gemfile in your application (Windows / Linux)
29
- ```bash
30
- gem 'thin'
31
- ```
32
-
33
- Switch to Puma # Gemfile in your application (Windows / Linux)
34
- ```bash
35
- gem 'puma'
36
- ```
37
23
 
24
+ ## Installation
38
25
 
39
- Switch server to Falcon # Gemfile in your application (Linux)
40
- ```bash
41
- gem 'falcon'
42
- ```
43
-
44
- Switch server to Iodine # Gemfile in your application (Linux)
45
26
  ```bash
46
- gem 'iodine'
47
- ```
27
+ Server options:
28
+ ___________________________________________________
48
29
 
30
+ Use Thin server: gem 'thin' # Windows/Linux
31
+ Use Puma server: gem 'puma' # Windows/Linux
32
+ Use Falcon server: gem 'falcon' # Linux
33
+ Use Iodine server: gem 'iodine' # Linux
49
34
 
50
-
51
- Install the gem and add to the application's Gemfile by executing:
52
-
53
- ```bash
54
- bundle install
55
35
  ```
56
36
 
57
37
 
@@ -59,27 +39,33 @@ bundle install
59
39
 
60
40
  Command Variants
61
41
  ```rb
62
- Hotkey:
42
+ _______________________________________________________________________
43
+
44
+ Alias: (or Shortcut)
63
45
 
64
46
  hyr s [server-name] Start web server
65
47
  hyr s [server-name] --api Start API server directly
66
48
  hyr s-v Show version
67
49
  hyr s-h Show this help
50
+ _______________________________________________________________________
68
51
 
69
- Shortkey:
52
+ Medium Form:
70
53
 
71
54
  hyr-serve [server-name] Start web server
72
55
  hyr-serve [server-name] --api Start API server directly
73
56
  hyr-serve s-v Show version
74
57
  hyr-serve s-h Show this help
58
+ _______________________________________________________________________
75
59
 
76
- Standard:
60
+ Full Command:
77
61
 
78
62
  hyraft-server [server-name] [options] Start web server
79
63
  hyraft-server [server-name] --api [options] Start API server directly
80
64
  hyraft-server server-version Show version
81
65
  hyraft-server server-help Show this help
82
66
 
67
+ _______________________________________________________________________
68
+
83
69
  Examples:
84
70
 
85
71
  hyr s thin # Start web server with Thin
@@ -90,8 +76,11 @@ hyr s falcon # Start web server with Falcon
90
76
  hyr-serve thin # Start web server with Thin
91
77
  hyraft-server thin # Start web server with Thin
92
78
  hyraft-server thin --api # Start API server with Thin
93
- hyraft-server puma -p 1091 # Start web server on port 1091
79
+ hyraft-server puma -p 1025 # Start web server on port 1025
80
+ hyraft-server puma --port-api 1126 # Start API server on port 1126
94
81
  hyraft-server falcon --http2 # Start with HTTP/2 (Falcon)
82
+ hyraft-server falcon --http3 # Start with HTTP/3 (Falcon)
83
+ _______________________________________________________________________
95
84
 
96
85
 
97
86
  ```
@@ -101,7 +90,7 @@ hyraft-server falcon --http2 # Start with HTTP/2 (Falcon)
101
90
  Test Environment
102
91
  ```rb
103
92
 
104
- Hotkey:
93
+ Alias: (or Shortcut)
105
94
 
106
95
  APP_ENV=test hyr s [server-name] Start web server (test)
107
96
  APP_ENV=test hyr s [server-name] --api Start API server directly (test)
@@ -124,7 +113,7 @@ APP_ENV=test hyr s falcon
124
113
  Production Environment
125
114
  ```rb
126
115
 
127
- Hotkey:
116
+ Alias: (or Shortcut)
128
117
 
129
118
  APP_ENV=production hyr s [server-name] Start web server (production)
130
119
  APP_ENV=production hyr s [server-name] --api Start API server directly (production)
data/bin/hyr CHANGED
File without changes
data/bin/hyr-serve CHANGED
File without changes
data/bin/hyraft-server CHANGED
File without changes
@@ -13,7 +13,7 @@ module Hyraft
13
13
  #
14
14
  # hyr s thin # Start web server with Thin
15
15
  # hyr s thin --api # Start API server with Thin
16
- # hyraft-server puma -p 3000 # Start on custom port
16
+ # hyraft-server puma -p 1025 # Start on custom port
17
17
  # hyraft-server falcon --http2 # Start with HTTP/2
18
18
  #
19
19
  # @example Start a web server
@@ -28,6 +28,9 @@ module Hyraft
28
28
  COLORS = {
29
29
  lime: "\033[92m",
30
30
  yellow: "\033[93m",
31
+ light_red: "\033[91m",
32
+ green: "\e[32m",
33
+ red: "\e[31m",
31
34
  reset: "\033[0m"
32
35
  }
33
36
 
@@ -36,8 +39,8 @@ module Hyraft
36
39
  # @param options [Hash] Configuration options
37
40
  # @option options [String] :server Server type (puma, thin, falcon, iodine)
38
41
  # @option options [String] :host Host to bind to (default: "localhost")
39
- # @option options [Integer] :port Web server port (default: 1091)
40
- # @option options [Integer] :port_api API server port (default: 1092)
42
+ # @option options [Integer] :port Web server port (default: 1025)
43
+ # @option options [Integer] :port_api API server port (default: 1126)
41
44
  # @option options [String] :rack_socket Rack config file for web server
42
45
  # @option options [String] :rack_socket_api Rack config file for API server
43
46
  # @option options [Boolean] :http2 Enable HTTP/2 (Falcon only)
@@ -48,15 +51,15 @@ module Hyraft
48
51
  # Launcher.new
49
52
  #
50
53
  # @example With custom options
51
- # Launcher.new(port: 3000, server: 'puma')
54
+ # Launcher.new(port: 1025, server: 'puma')
52
55
  def initialize(options = {})
53
56
  @options = {
54
57
  server: nil,
55
58
  host: "localhost",
56
- port: 1091,
57
- port_api: 1092,
58
- rack_socket: "infra/server/web-server.ru",
59
- rack_socket_api: "infra/server/api-server.ru",
59
+ port: 1025,
60
+ port_api: 1126,
61
+ rack_socket: "setup/server/web-server.ru",
62
+ rack_socket_api: "setup/server/api-server.ru",
60
63
  http2: false,
61
64
  http3: false,
62
65
  api: false
@@ -131,19 +134,19 @@ module Hyraft
131
134
  #
132
135
  # == Command Variants
133
136
  #
134
- # Hotkey:
137
+ # Alias: (or Shortcut)
135
138
  # hyr s [server-name] Start web server
136
139
  # hyr s [server-name] --api Start API server directly
137
140
  # hyr s-v Show version
138
141
  # hyr s-h Show this help
139
142
  #
140
- # Shortkey:
143
+ # Medium Form:
141
144
  # hyr-serve [server-name] Start web server
142
145
  # hyr-serve [server-name] --api Start API server directly
143
146
  # hyr-serve s-v Show version
144
147
  # hyr-serve s-h Show this help
145
148
  #
146
- # Standard:
149
+ # Full Command:
147
150
  # hyraft-server [server-name] [options] Start web server
148
151
  # hyraft-server [server-name] --api [options] Start API server directly
149
152
  # hyraft-server server-version Show version
@@ -155,8 +158,10 @@ module Hyraft
155
158
  # hyr-serve thin # Start web server with Thin
156
159
  # hyraft-server thin # Start web server with Thin
157
160
  # hyraft-server thin --api # Start API server with Thin
158
- # hyraft-server puma -p 1091 # Start web server on port 1091
161
+ # hyraft-server puma -p 1025 # Start web server on port 1025
162
+ # hyraft-server puma --port-api 1126 # Start API server on port 1126
159
163
  # hyraft-server falcon --http2 # Start with HTTP/2 (Falcon)
164
+ # hyraft-server falcon --http3 # Start with HTTP/3 (Falcon)
160
165
  #
161
166
  # @return [void]
162
167
  def show_usage
@@ -193,8 +198,8 @@ module Hyraft
193
198
  puts "#{header_color}Options:#{reset_color}"
194
199
  puts " -s, --server SERVER Server (puma, thin, falcon, iodine)"
195
200
  puts " -b, --bind HOST Host (default: localhost)"
196
- puts " -p, --port PORT Port (default: 1091)"
197
- puts " --port-api PORT API Port (default: 1092)"
201
+ puts " -p, --port PORT Port (default: 1025)"
202
+ puts " --port-api PORT API Port (default: 1126)"
198
203
  puts " -c, --config FILE Rack config file"
199
204
  puts " --config-api FILE API Rack config file"
200
205
  puts " --api Enable API server"
@@ -207,7 +212,7 @@ module Hyraft
207
212
  puts "#{example_color} hyr-serve thin #{reset_color}# Start web server with Thin - Shortkey"
208
213
  puts "#{example_color} hyraft-server thin #{reset_color}# Start web server with Thin"
209
214
  puts "#{example_color} hyraft-server thin --api #{reset_color}# Start API server with Thin"
210
- puts "#{example_color} hyraft-server puma -p 1091 #{reset_color}# Start web server on port 1091"
215
+ puts "#{example_color} hyraft-server puma -p 1025 #{reset_color}# Start web server on port 1025"
211
216
  puts "#{example_color} hyraft-server falcon --http2 #{reset_color}# Start with HTTP/2 (Falcon)"
212
217
  puts "#{example_color} hyraft-server s thin #{reset_color}# Legacy syntax (still works)"
213
218
  end
@@ -241,7 +246,7 @@ module Hyraft
241
246
  opts.on("-s", "--server SERVER", "Server (puma, thin, falcon, iodine)") { |v| @options[:server] = v }
242
247
  opts.on("-b", "--bind HOST", "Host") { |v| @options[:host] = v }
243
248
  opts.on("-p", "--port PORT", Integer, "Port") { |v| @options[:port] = v }
244
- opts.on("--port-api PORT", Integer, "API Port (default: 1092)") { |v| @options[:port_api] = v }
249
+ opts.on("--port-api PORT", Integer, "API Port (default: 1126)") { |v| @options[:port_api] = v }
245
250
  opts.on("-c", "--config FILE", "Rack config file") { |v| @options[:rack_socket] = v }
246
251
  opts.on("--config-api FILE", "API Rack config file") { |v| @options[:rack_socket_api] = v }
247
252
  opts.on("--api", "Enable API server") { |v| @options[:api] = v }
@@ -271,7 +276,7 @@ module Hyraft
271
276
  # @return [void]
272
277
  # @!visibility private
273
278
  def launch_web_server
274
- puts "[ WEB ] - Hyraft"
279
+ puts "#{COLORS[:yellow]}[ WEB ] - Hyraft#{COLORS[:reset]}"
275
280
  puts "* Using server: #{@options[:server].capitalize}"
276
281
  puts "* Listening on #{COLORS[:yellow]}http://#{@options[:host]}:#{@options[:port]}#{COLORS[:reset]}"
277
282
 
@@ -302,9 +307,12 @@ module Hyraft
302
307
  # @return [void]
303
308
  # @!visibility private
304
309
  def launch_api_server
305
- puts "[ API ] - Hyraft"
310
+
311
+
312
+
313
+ puts "#{COLORS[:lime]}[ API ] - Hyraft#{COLORS[:reset]}"
306
314
  puts "* Using server: #{@options[:server].capitalize}"
307
- puts "* Listening on #{COLORS[:yellow]}http://#{@options[:host]}:#{@options[:port_api]}#{COLORS[:reset]}"
315
+ puts "* Listening on #{COLORS[:lime]}http://#{@options[:host]}:#{@options[:port_api]}#{COLORS[:reset]}"
308
316
 
309
317
  case @options[:server]
310
318
  when "puma"
@@ -8,6 +8,8 @@ module Hyraft
8
8
  cyan: "\e[36m",
9
9
  green: "\e[32m",
10
10
  yellow: "\e[33m",
11
+ light_red: "\033[91m", # Add light red for web
12
+ navy_blue: "\033[38;2;0;0;128m", # Navy blue (using RGB)
11
13
  red: "\e[31m",
12
14
  magenta: "\e[35m"
13
15
  }
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Hyraft
4
4
  module Server
5
- VERSION = "0.1.0"
5
+ VERSION = "1.0.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyraft-server
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Demjhon Silver
@@ -23,34 +23,6 @@ dependencies:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
25
  version: '3.2'
26
- - !ruby/object:Gem::Dependency
27
- name: rake
28
- requirement: !ruby/object:Gem::Requirement
29
- requirements:
30
- - - "~>"
31
- - !ruby/object:Gem::Version
32
- version: '13.3'
33
- type: :development
34
- prerelease: false
35
- version_requirements: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '13.3'
40
- - !ruby/object:Gem::Dependency
41
- name: minitest
42
- requirement: !ruby/object:Gem::Requirement
43
- requirements:
44
- - - "~>"
45
- - !ruby/object:Gem::Version
46
- version: '5.26'
47
- type: :development
48
- prerelease: false
49
- version_requirements: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - "~>"
52
- - !ruby/object:Gem::Version
53
- version: '5.26'
54
26
  description: Dual-server Hyraft framework with hexagonal architecture, supporting
55
27
  Puma, Thin, Falcon, and Iodine.
56
28
  executables:
@@ -75,6 +47,7 @@ licenses:
75
47
  - MIT
76
48
  metadata:
77
49
  homepage_uri: https://github.com/demjhonsilver/hyraft-server
50
+ documentation_uri: https://www.rubydoc.info/gems/hyraft-server
78
51
  source_code_uri: https://github.com/demjhonsilver/hyraft-server/tree/main
79
52
  changelog_uri: https://github.com/demjhonsilver/hyraft-server/blob/main/CHANGELOG.md
80
53
  rubygems_mfa_required: 'true'
@@ -85,14 +58,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
85
58
  requirements:
86
59
  - - ">="
87
60
  - !ruby/object:Gem::Version
88
- version: 3.4.0
61
+ version: 4.0.0
89
62
  required_rubygems_version: !ruby/object:Gem::Requirement
90
63
  requirements:
91
64
  - - ">="
92
65
  - !ruby/object:Gem::Version
93
66
  version: '0'
94
67
  requirements: []
95
- rubygems_version: 3.6.9
68
+ rubygems_version: 4.0.3
96
69
  specification_version: 4
97
70
  summary: Web server for Hyraft framework
98
71
  test_files: []