charsi 0.1.1 → 0.1.2
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 +4 -4
- data/bin/charsi +10 -0
- data/charsi.gemspec +2 -1
- data/lib/charsi/server.rb +22 -0
- data/lib/charsi.rb +1 -0
- metadata +16 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2cacf89713b13f50ad0ebe1ce862ad84fa7b88b5a71297c2dcfa5c5b44d6afe
|
4
|
+
data.tar.gz: e460984bfa0c4e8b23f9ad13e838d17a0c1a03ea09894295619c9d4641cf5de2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: baf2444f0cbff82668fe697e9fd1e655a177b55171c187a475931e628d500c2933686bc856072a9ab0bf12152eb1db05bd04774b27bdf15187866b0121a125a5
|
7
|
+
data.tar.gz: '08bf088c251de38ada92c83f4eca065356262e44f9c9dc7575d0519536f880527cc7c445df3dc8caa25efef67302ba4b265c2d4c6c4285ecc04a7a4ddd012c02'
|
data/bin/charsi
CHANGED
@@ -16,6 +16,16 @@ elsif command == 'new'
|
|
16
16
|
raise ArgumentError, 'Project name is required' if project_name.nil?
|
17
17
|
|
18
18
|
Charsi::Generator.generate(project_name)
|
19
|
+
|
20
|
+
elsif command == 'serve'
|
21
|
+
charsi = Charsi::Builder.new
|
22
|
+
server = Charsi::Server.new
|
23
|
+
|
24
|
+
charsi.build
|
25
|
+
|
26
|
+
Thread.new { charsi.watch } if watch_flag
|
27
|
+
|
28
|
+
server.serve
|
19
29
|
else
|
20
30
|
puts 'Usage: charsi build [--watch]'
|
21
31
|
end
|
data/charsi.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = 'charsi'
|
3
|
-
spec.version = '0.1.
|
3
|
+
spec.version = '0.1.2'
|
4
4
|
|
5
5
|
spec.authors = ['Ryan Beasse']
|
6
6
|
spec.email = ['me@ryanbeasse.com']
|
@@ -29,4 +29,5 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.add_dependency 'tailwindcss-ruby', '~> 4.1'
|
30
30
|
spec.add_dependency 'filewatcher', '~> 2.1'
|
31
31
|
spec.add_dependency 'logger', '~> 1.6'
|
32
|
+
spec.add_dependency 'webrick', '~> 1.9'
|
32
33
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'webrick'
|
2
|
+
|
3
|
+
module Charsi
|
4
|
+
class Server
|
5
|
+
DEFAULT_PORT = 8000
|
6
|
+
|
7
|
+
def initialize
|
8
|
+
@config = Configuration.new
|
9
|
+
end
|
10
|
+
|
11
|
+
def serve
|
12
|
+
build_dir = @config.path(:output_dir)
|
13
|
+
|
14
|
+
server = WEBrick::HTTPServer.new(Port: DEFAULT_PORT, DocumentRoot: build_dir)
|
15
|
+
trap('INT') { server.shutdown }
|
16
|
+
|
17
|
+
puts "[charsi] Serving #{build_dir} at http://localhost:#{DEFAULT_PORT}"
|
18
|
+
|
19
|
+
server.start
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/charsi.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: charsi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Beasse
|
@@ -79,6 +79,20 @@ dependencies:
|
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
81
|
version: '1.6'
|
82
|
+
- !ruby/object:Gem::Dependency
|
83
|
+
name: webrick
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - "~>"
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '1.9'
|
89
|
+
type: :runtime
|
90
|
+
prerelease: false
|
91
|
+
version_requirements: !ruby/object:Gem::Requirement
|
92
|
+
requirements:
|
93
|
+
- - "~>"
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: '1.9'
|
82
96
|
email:
|
83
97
|
- me@ryanbeasse.com
|
84
98
|
executables:
|
@@ -99,6 +113,7 @@ files:
|
|
99
113
|
- lib/charsi/configuration.rb
|
100
114
|
- lib/charsi/file.rb
|
101
115
|
- lib/charsi/generator.rb
|
116
|
+
- lib/charsi/server.rb
|
102
117
|
- lib/charsi/template.rb
|
103
118
|
- templates/site/Gemfile.template
|
104
119
|
- templates/site/assets/css/tailwind.css.template
|