astrolith 0.1.0 → 0.2.1

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: 0d189aaf9ea9a6f0c78bd37ef2db4d5c466ed2dfb6ddaa167d57a7a66ee1704d
4
- data.tar.gz: fd4a37d35802c4c6646dc37e805921d0095d3802c7e162fcce553ca94ef5468b
3
+ metadata.gz: 7d9c97c40d7c0c06c47b64817d7af5e62d10d143a5ea23cd6ca1aefc6115e04e
4
+ data.tar.gz: 46700c060836c07d6a41baf376039fae0c68cf966df1884b9f189b85fdf0f03e
5
5
  SHA512:
6
- metadata.gz: b66c0604a9c413c15fefd9054a93e97baab4ed63940fdc20ce7bcc50d2ad0c53c3fb727d79a9a4ba617ddead19e1461a5a19912e0cdbda69dafa16238bc6f2cb
7
- data.tar.gz: 61f675bb33986226be7385fa20f6cd0cc58574add760ade7bc91f5ed363f7a127f642ed1fa596c0829a0f898e1db90d0b91e3b1f427f0627f854323f6a5580e4
6
+ metadata.gz: 85c2448564ef61b51b4376a714b240863b5e124776ef26d31f9ef64aca5fb79194638ce7373cb227e52a42c73cf4c2dd4d4d88be683e223026ab899b0fa251fe
7
+ data.tar.gz: 5317474f83b26cfbfc0c6c0c658023dd39d4bd696f9c96e15313510929b4b8365ecc68cfbb1024adfcc53404acb5de7e8e3288793c97e3bf48fe381661db78c5
data/README.md CHANGED
@@ -38,10 +38,10 @@ gem install astrolith
38
38
  ## Quick Start
39
39
 
40
40
  ```ruby
41
- require 'ruby_chart_engine'
41
+ require 'astrolith'
42
42
 
43
43
  # Create a natal chart
44
- chart = RubyChartEngine::Charts::Natal.new(
44
+ chart = Astrolith::Charts::Natal.new(
45
45
  datetime: '1990-05-15T14:30:00',
46
46
  latitude: 40.7128,
47
47
  longitude: -74.0060,
@@ -65,7 +65,7 @@ puts json
65
65
  ### Natal Chart
66
66
 
67
67
  ```ruby
68
- chart = RubyChartEngine::Charts::Natal.new(
68
+ chart = Astrolith::Charts::Natal.new(
69
69
  datetime: '1990-05-15T14:30:00',
70
70
  latitude: 40.7128,
71
71
  longitude: -74.0060,
@@ -86,14 +86,14 @@ sun = chart.planets[:sun]
86
86
 
87
87
  # Check aspects
88
88
  chart.aspects.each do |aspect|
89
- puts "#{aspect[:planet1]} #{aspect[:type]} #{aspect[:planet2]} (orb: #{aspect[:orb]})"
89
+ puts "#{aspect[:planet1]} #{aspect[:type]} #{aspect[:planet2]} (orb: #{aspect[:orb]}°)"
90
90
  end
91
91
  ```
92
92
 
93
93
  ### Solar Return
94
94
 
95
95
  ```ruby
96
- solar_return = RubyChartEngine::Charts::SolarReturn.new(
96
+ solar_return = Astrolith::Charts::SolarReturn.new(
97
97
  natal_datetime: '1990-05-15T14:30:00',
98
98
  return_year: 2024,
99
99
  latitude: 40.7128,
@@ -105,7 +105,7 @@ solar_return = RubyChartEngine::Charts::SolarReturn.new(
105
105
  ### Progressed Chart
106
106
 
107
107
  ```ruby
108
- progressed = RubyChartEngine::Charts::Progressed.new(
108
+ progressed = Astrolith::Charts::Progressed.new(
109
109
  natal_datetime: '1990-05-15T14:30:00',
110
110
  progression_date: '2024-03-15',
111
111
  latitude: 40.7128,
@@ -117,7 +117,7 @@ progressed = RubyChartEngine::Charts::Progressed.new(
117
117
  ### Composite Chart
118
118
 
119
119
  ```ruby
120
- composite = RubyChartEngine::Charts::Composite.new(
120
+ composite = Astrolith::Charts::Composite.new(
121
121
  chart1_params: {
122
122
  datetime: '1990-05-15T14:30:00',
123
123
  latitude: 40.7128,
@@ -136,14 +136,14 @@ composite = RubyChartEngine::Charts::Composite.new(
136
136
  ### Transit Chart
137
137
 
138
138
  ```ruby
139
- natal = RubyChartEngine::Charts::Natal.new(
139
+ natal = Astrolith::Charts::Natal.new(
140
140
  datetime: '1990-05-15T14:30:00',
141
141
  latitude: 40.7128,
142
142
  longitude: -74.0060,
143
143
  timezone: 'America/New_York'
144
144
  )
145
145
 
146
- transit = RubyChartEngine::Charts::Transit.new(
146
+ transit = Astrolith::Charts::Transit.new(
147
147
  natal_chart_params: natal,
148
148
  transit_datetime: Time.now.iso8601
149
149
  )
@@ -230,22 +230,23 @@ house_system: :campanus
230
230
 
231
231
  **Planets**: Sun, Moon, Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune, Pluto
232
232
 
233
- **Points**: North Node, South Node *(Note: Chiron is not available when using the built-in Moshier ephemeris)*
233
+ **Points**: North Node, South Node _(Note: Chiron is not available when using the built-in Moshier ephemeris)_
234
234
 
235
235
  **Angles**: Ascendant, Midheaven, Descendant, Imum Coeli
236
236
 
237
237
  ## Aspects
238
238
 
239
239
  Supported aspects with configurable orbs:
240
- - Conjunction (0�)
241
- - Opposition (180�)
242
- - Trine (120�)
243
- - Square (90�)
244
- - Sextile (60�)
245
- - Quincunx (150�)
246
- - Semi-Sextile (30�)
247
- - Semi-Square (45�)
248
- - Sesquiquadrate (135�)
240
+
241
+ - Conjunction ()
242
+ - Opposition (180°)
243
+ - Trine (120°)
244
+ - Square (90°)
245
+ - Sextile (60°)
246
+ - Quincunx (150°)
247
+ - Semi-Sextile (30°)
248
+ - Semi-Square (45°)
249
+ - Sesquiquadrate (135°)
249
250
 
250
251
  ## Testing
251
252
 
@@ -268,11 +269,6 @@ bundle exec rspec spec/charts/natal_spec.rb
268
269
  - **daru**: Data Analysis in Ruby for data structuring
269
270
  - **tzinfo**: Timezone handling
270
271
 
271
- ### Optional Visualization
272
-
273
- - **apexcharts**: For analytical charts
274
- - **prawn**: For PDF and geometric drawing (chart wheels)
275
-
276
272
  ## Documentation
277
273
 
278
274
  - [Quick Start Guide](docs/QUICK_START.md) - Get started quickly with common use cases
@@ -289,19 +285,8 @@ bundle install
289
285
 
290
286
  # Run tests
291
287
  bundle exec rspec
292
-
293
- # Run console for experimentation
294
- bundle console
295
288
  ```
296
289
 
297
- ## Contributing
298
-
299
- 1. Fork it
300
- 2. Create your feature branch (`git checkout -b my-new-feature`)
301
- 3. Commit your changes (`git commit -am 'Add some feature'`)
302
- 4. Push to the branch (`git push origin my-new-feature`)
303
- 5. Create new Pull Request
304
-
305
290
  ## License
306
291
 
307
292
  MIT License
data/astrolith.gemspec CHANGED
@@ -1,6 +1,8 @@
1
+ require_relative "lib/astrolith/version"
2
+
1
3
  Gem::Specification.new do |spec|
2
4
  spec.name = "astrolith"
3
- spec.version = "0.1.0"
5
+ spec.version = Astrolith::VERSION
4
6
  spec.authors = ["Go-pye"]
5
7
  spec.email = ["Go-pye@users.noreply.github.com"]
6
8
 
@@ -25,10 +27,6 @@ Gem::Specification.new do |spec|
25
27
  spec.add_dependency "daru", "~> 0.3"
26
28
  spec.add_dependency "tzinfo", "~> 2.0"
27
29
 
28
- # Optional visualization dependencies
29
- spec.add_dependency "apexcharts", "~> 0.1"
30
- spec.add_dependency "prawn", "~> 2.4"
31
-
32
30
  # Development dependencies
33
31
  spec.add_development_dependency "rspec", "~> 3.12"
34
32
  spec.add_development_dependency "pry", "~> 0.14"
@@ -1,13 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require_relative '../lib/ruby_chart_engine'
3
+ require_relative '../lib/astrolith'
4
4
 
5
5
  # Example 1: Basic Natal Chart
6
6
  puts "=" * 80
7
7
  puts "Example 1: Basic Natal Chart"
8
8
  puts "=" * 80
9
9
 
10
- natal_chart = RubyChartEngine::Charts::Natal.new(
10
+ natal_chart = Astrolith::Charts::Natal.new(
11
11
  datetime: '1990-05-15T14:30:00',
12
12
  latitude: 40.7128,
13
13
  longitude: -74.0060,
@@ -41,7 +41,7 @@ puts "\n" + "=" * 80
41
41
  puts "Example 2: Solar Return Chart for 2024"
42
42
  puts "=" * 80
43
43
 
44
- solar_return = RubyChartEngine::Charts::SolarReturn.new(
44
+ solar_return = Astrolith::Charts::SolarReturn.new(
45
45
  natal_datetime: '1990-05-15T14:30:00',
46
46
  return_year: 2024,
47
47
  latitude: 40.7128,
@@ -58,7 +58,7 @@ puts "\n" + "=" * 80
58
58
  puts "Example 3: Composite Chart"
59
59
  puts "=" * 80
60
60
 
61
- composite = RubyChartEngine::Charts::Composite.new(
61
+ composite = Astrolith::Charts::Composite.new(
62
62
  chart1_params: {
63
63
  datetime: '1990-05-15T14:30:00',
64
64
  latitude: 40.7128,
@@ -84,7 +84,7 @@ puts "\n" + "=" * 80
84
84
  puts "Example 4: Transit Chart"
85
85
  puts "=" * 80
86
86
 
87
- transit = RubyChartEngine::Charts::Transit.new(
87
+ transit = Astrolith::Charts::Transit.new(
88
88
  natal_chart_params: natal_chart,
89
89
  transit_datetime: '2024-03-15T12:00:00'
90
90
  )
@@ -100,11 +100,11 @@ puts "Example 5: JSON Export"
100
100
  puts "=" * 80
101
101
 
102
102
  puts "\nNatal Chart as JSON (pretty):"
103
- json = RubyChartEngine::Serializers::JsonSerializer.serialize_pretty(natal_chart)
103
+ json = Astrolith::Serializers::JsonSerializer.serialize_pretty(natal_chart)
104
104
  puts json[0..500] + "..."
105
105
 
106
106
  puts "\nChart with filtered output (metadata and planets only):"
107
- filtered_json = RubyChartEngine::Serializers::JsonSerializer.serialize_with_options(
107
+ filtered_json = Astrolith::Serializers::JsonSerializer.serialize_with_options(
108
108
  natal_chart,
109
109
  include: [:metadata, :planets],
110
110
  pretty: true
@@ -117,7 +117,7 @@ puts "Example 6: Different Coordinate Formats"
117
117
  puts "=" * 80
118
118
 
119
119
  # Standard text format
120
- chart_text = RubyChartEngine::Charts::Natal.new(
120
+ chart_text = Astrolith::Charts::Natal.new(
121
121
  datetime: '1990-05-15T14:30:00',
122
122
  latitude: '40n43',
123
123
  longitude: '74w00',
@@ -136,7 +136,7 @@ puts "=" * 80
136
136
  house_systems = [:placidus, :koch, :whole_sign, :equal]
137
137
 
138
138
  house_systems.each do |system|
139
- chart = RubyChartEngine::Charts::Natal.new(
139
+ chart = Astrolith::Charts::Natal.new(
140
140
  datetime: '1990-05-15T14:30:00',
141
141
  latitude: 40.7128,
142
142
  longitude: -74.0060,
@@ -1,4 +1,4 @@
1
- module RubyChartEngine
1
+ module Astrolith
2
2
  module Calculations
3
3
  class Aspects
4
4
  # Standard aspect definitions with orbs
@@ -1,4 +1,4 @@
1
- module RubyChartEngine
1
+ module Astrolith
2
2
  module Calculations
3
3
  class Dignities
4
4
  # Essential dignities table
@@ -1,4 +1,4 @@
1
- module RubyChartEngine
1
+ module Astrolith
2
2
  module Calculations
3
3
  class Houses
4
4
  attr_reader :julian_day, :latitude, :longitude, :house_system
@@ -1,4 +1,4 @@
1
- module RubyChartEngine
1
+ module Astrolith
2
2
  module Calculations
3
3
  class Positions
4
4
  attr_reader :julian_day, :latitude, :longitude
@@ -1,4 +1,4 @@
1
- module RubyChartEngine
1
+ module Astrolith
2
2
  module Charts
3
3
  class BaseChart
4
4
  attr_reader :datetime, :coordinates, :timezone, :house_system,
@@ -1,6 +1,6 @@
1
1
  require_relative 'base_chart'
2
2
 
3
- module RubyChartEngine
3
+ module Astrolith
4
4
  module Charts
5
5
  class Composite < BaseChart
6
6
  attr_reader :chart1, :chart2
@@ -1,6 +1,6 @@
1
1
  require_relative 'base_chart'
2
2
 
3
- module RubyChartEngine
3
+ module Astrolith
4
4
  module Charts
5
5
  class Natal < BaseChart
6
6
  # Natal chart is the base chart type
@@ -1,6 +1,6 @@
1
1
  require_relative 'base_chart'
2
2
 
3
- module RubyChartEngine
3
+ module Astrolith
4
4
  module Charts
5
5
  class Progressed < BaseChart
6
6
  attr_reader :natal_datetime, :progression_date
@@ -1,6 +1,6 @@
1
1
  require_relative 'base_chart'
2
2
 
3
- module RubyChartEngine
3
+ module Astrolith
4
4
  module Charts
5
5
  class SolarReturn < BaseChart
6
6
  attr_reader :natal_sun_longitude
@@ -1,6 +1,6 @@
1
1
  require_relative 'base_chart'
2
2
 
3
- module RubyChartEngine
3
+ module Astrolith
4
4
  module Charts
5
5
  class Transit < BaseChart
6
6
  attr_reader :natal_chart, :transit_aspects
@@ -1,4 +1,4 @@
1
- module RubyChartEngine
1
+ module Astrolith
2
2
  module Input
3
3
  class Coordinates
4
4
  attr_reader :latitude, :longitude
@@ -1,6 +1,6 @@
1
1
  require 'time'
2
2
 
3
- module RubyChartEngine
3
+ module Astrolith
4
4
  module Input
5
5
  class DateTime
6
6
  attr_reader :year, :month, :day, :hour, :minute, :second, :datetime
@@ -1,6 +1,6 @@
1
1
  require 'tzinfo'
2
2
 
3
- module RubyChartEngine
3
+ module Astrolith
4
4
  module Input
5
5
  class Timezone
6
6
  attr_reader :timezone, :offset
@@ -1,4 +1,4 @@
1
- module RubyChartEngine
1
+ module Astrolith
2
2
  module Serializers
3
3
  class JsonSerializer
4
4
  def self.serialize(chart)
@@ -0,0 +1,3 @@
1
+ module Astrolith
2
+ VERSION = "0.2.1"
3
+ end
@@ -3,26 +3,26 @@ require 'ephemeris'
3
3
  require 'daru'
4
4
  require 'json'
5
5
 
6
- require_relative 'ruby_chart_engine/version'
7
- require_relative 'ruby_chart_engine/input/coordinates'
8
- require_relative 'ruby_chart_engine/input/datetime'
9
- require_relative 'ruby_chart_engine/input/timezone'
6
+ require_relative 'astrolith/version'
7
+ require_relative 'astrolith/input/coordinates'
8
+ require_relative 'astrolith/input/datetime'
9
+ require_relative 'astrolith/input/timezone'
10
10
 
11
- require_relative 'ruby_chart_engine/calculations/positions'
12
- require_relative 'ruby_chart_engine/calculations/houses'
13
- require_relative 'ruby_chart_engine/calculations/aspects'
14
- require_relative 'ruby_chart_engine/calculations/dignities'
11
+ require_relative 'astrolith/calculations/positions'
12
+ require_relative 'astrolith/calculations/houses'
13
+ require_relative 'astrolith/calculations/aspects'
14
+ require_relative 'astrolith/calculations/dignities'
15
15
 
16
- require_relative 'ruby_chart_engine/serializers/json_serializer'
16
+ require_relative 'astrolith/serializers/json_serializer'
17
17
 
18
- require_relative 'ruby_chart_engine/charts/base_chart'
19
- require_relative 'ruby_chart_engine/charts/natal'
20
- require_relative 'ruby_chart_engine/charts/solar_return'
21
- require_relative 'ruby_chart_engine/charts/progressed'
22
- require_relative 'ruby_chart_engine/charts/composite'
23
- require_relative 'ruby_chart_engine/charts/transit'
18
+ require_relative 'astrolith/charts/base_chart'
19
+ require_relative 'astrolith/charts/natal'
20
+ require_relative 'astrolith/charts/solar_return'
21
+ require_relative 'astrolith/charts/progressed'
22
+ require_relative 'astrolith/charts/composite'
23
+ require_relative 'astrolith/charts/transit'
24
24
 
25
- module RubyChartEngine
25
+ module Astrolith
26
26
  class Error < StandardError; end
27
27
 
28
28
  # Swiss Ephemeris object ID constants
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: astrolith
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Go-pye
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-12-16 00:00:00.000000000 Z
11
+ date: 2025-12-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: swe4r
@@ -66,34 +66,6 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '2.0'
69
- - !ruby/object:Gem::Dependency
70
- name: apexcharts
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '0.1'
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '0.1'
83
- - !ruby/object:Gem::Dependency
84
- name: prawn
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '2.4'
90
- type: :runtime
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '2.4'
97
69
  - !ruby/object:Gem::Dependency
98
70
  name: rspec
99
71
  requirement: !ruby/object:Gem::Requirement
@@ -135,22 +107,22 @@ files:
135
107
  - README.md
136
108
  - astrolith.gemspec
137
109
  - examples/example_usage.rb
138
- - lib/ruby_chart_engine.rb
139
- - lib/ruby_chart_engine/calculations/aspects.rb
140
- - lib/ruby_chart_engine/calculations/dignities.rb
141
- - lib/ruby_chart_engine/calculations/houses.rb
142
- - lib/ruby_chart_engine/calculations/positions.rb
143
- - lib/ruby_chart_engine/charts/base_chart.rb
144
- - lib/ruby_chart_engine/charts/composite.rb
145
- - lib/ruby_chart_engine/charts/natal.rb
146
- - lib/ruby_chart_engine/charts/progressed.rb
147
- - lib/ruby_chart_engine/charts/solar_return.rb
148
- - lib/ruby_chart_engine/charts/transit.rb
149
- - lib/ruby_chart_engine/input/coordinates.rb
150
- - lib/ruby_chart_engine/input/datetime.rb
151
- - lib/ruby_chart_engine/input/timezone.rb
152
- - lib/ruby_chart_engine/serializers/json_serializer.rb
153
- - lib/ruby_chart_engine/version.rb
110
+ - lib/astrolith.rb
111
+ - lib/astrolith/calculations/aspects.rb
112
+ - lib/astrolith/calculations/dignities.rb
113
+ - lib/astrolith/calculations/houses.rb
114
+ - lib/astrolith/calculations/positions.rb
115
+ - lib/astrolith/charts/base_chart.rb
116
+ - lib/astrolith/charts/composite.rb
117
+ - lib/astrolith/charts/natal.rb
118
+ - lib/astrolith/charts/progressed.rb
119
+ - lib/astrolith/charts/solar_return.rb
120
+ - lib/astrolith/charts/transit.rb
121
+ - lib/astrolith/input/coordinates.rb
122
+ - lib/astrolith/input/datetime.rb
123
+ - lib/astrolith/input/timezone.rb
124
+ - lib/astrolith/serializers/json_serializer.rb
125
+ - lib/astrolith/version.rb
154
126
  homepage: https://github.com/Go-pye/astrolith
155
127
  licenses:
156
128
  - MIT
@@ -1,3 +0,0 @@
1
- module RubyChartEngine
2
- VERSION = "0.1.0"
3
- end