autogen_sindb 0.1.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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: dd58b50afea4e63b75f923fafa0d0e30123266997396fb754a0f5a99859617cf
4
+ data.tar.gz: 24586b9df9baa76e647949b51ed38e44fd0301b984e99362af40047c01d1bae8
5
+ SHA512:
6
+ metadata.gz: a06f9d3567f049c163a7ec888f85a69268ea25d48719f2a75f3fc28161abc77d304f879e2874c66d24b5748e33c5bea2771e5e8085a2d05327c8f29fabee8a8a
7
+ data.tar.gz: fa7fe1da5c218010bf39f24413498c79b3f800a728da778de11e9ad7764ad80bbe5eb798555580b8819911b8d331689dd09b7edaa48af58ff6eaccbfdecd60c9
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require_relative '../config/env'
4
+
5
+ SinatrabaseFs::StructureMe.new.gen
6
+
@@ -0,0 +1,7 @@
1
+ # LIBRARIES
2
+ require 'fileutils'
3
+ require 'pry'
4
+
5
+ # MAIN ENVIRONMENT
6
+ require_relative "../lib/sinatrabase_fs/version"
7
+ require_relative "../lib/sinatrabase_fs/structure_me"
@@ -0,0 +1,6 @@
1
+ require "sinatrabase_fs/version"
2
+
3
+ module SinatrabaseFs
4
+ class Error < StandardError; end
5
+ # Your code goes here...
6
+ end
@@ -0,0 +1,88 @@
1
+ class SinatrabaseFs::StructureMe
2
+
3
+ def gen
4
+ make_dirs
5
+ make_dir_files
6
+ write_to_app_controllers_app_rb
7
+ write_to_app_models_model_rb
8
+ write_to_app_views_erb_file_erb
9
+ write_to_config_environment_rb
10
+ write_to_config_ru
11
+ write_to_gemfile
12
+ write_to_rakefile
13
+ end
14
+
15
+ def make_dirs
16
+ curr_dir = Dir.pwd
17
+ # root = "/sinatrabase_fs"
18
+
19
+ FileUtils.cd(curr_dir) do |dir|
20
+ %w(app app/controllers app/models app/views config public public/css public/images public/js db/migrate spec).each do |directory|
21
+ FileUtils.mkdir_p(directory)
22
+ end
23
+ end
24
+ end
25
+
26
+ def make_dir_files
27
+ %w(app/controllers/app.rb app/models/model.rb app/views/erb_file.erb config/environment.rb spec/test.rb config.ru Gemfile Rakefile README.md).each do |file|
28
+ FileUtils.touch file
29
+ end
30
+ end
31
+
32
+ def write_to_app_controllers_app_rb
33
+ FileUtils.cd(Dir.pwd) do |dir|
34
+ file = File.open("app/controllers/app.rb", 'w')
35
+ file.puts "require_relative 'config/environment'\n\nclass App < Sinatra::Base\nend"
36
+ file.close
37
+ end
38
+ end
39
+
40
+ def write_to_app_models_model_rb
41
+ FileUtils.cd(Dir.pwd) do |dir|
42
+ file = File.open("app/models/model.rb", 'w')
43
+ file.puts "#WRITE YOUR MODEL HERE"
44
+ file.close
45
+ end
46
+ end
47
+
48
+ def write_to_app_views_erb_file_erb
49
+ FileUtils.cd(Dir.pwd) do |dir|
50
+ file = File.open("app/views/erb_file.erb", 'w')
51
+ file.puts "#WRITE YOUR TEMPLATE HERE"
52
+ file.close
53
+ end
54
+ end
55
+
56
+ def write_to_config_environment_rb
57
+ FileUtils.cd(Dir.pwd) do |dir|
58
+ file = File.open("config/environment.rb", 'w')
59
+ file.puts "ENV['SINATRA_ENV'] ||= \"development\"\n\nrequire 'bundler/setup'\nBundler.require(:default, ENV['SINATRA_ENV'])\n\n# SET CONNECTION TO DATABASE\nconfigure :development do\n\tset :database, 'sqlite3:db/database.db'\nend\n\nrequire './app'"
60
+ file.close
61
+ end
62
+ end
63
+
64
+ def write_to_config_ru
65
+ FileUtils.cd(Dir.pwd) do |dir|
66
+ file = File.open("config.ru", 'w')
67
+ file.puts "require './config/environment'\n\nrun App # or whatever the app controller module/class name you want eg. Application"
68
+ file.close
69
+ end
70
+ end
71
+
72
+ def write_to_gemfile
73
+ FileUtils.cd(Dir.pwd) do |dir|
74
+ file = File.open("Gemfile", 'w')
75
+ file.puts "source 'https://rubygems.org'\n\ngem 'sinatra'\ngem 'thin'\ngem 'require_all'\ngem 'activerecord', '5.2'\ngem 'sinatra-activerecord'\ngem 'rake'\n\ngroup :development do\n\tgem 'shotgun'\n\tgem 'pry'\n\tgem 'tux'\n\tgem 'sqlite3', '~> 1.3.6'\nend"
76
+ file.close
77
+ end
78
+ end
79
+
80
+ def write_to_rakefile
81
+ FileUtils.cd(Dir.pwd) do |dir|
82
+ file = File.open("Rakefile", 'w')
83
+ file.puts "require \"./config/environment\"\nrequire \"sinatra/activerecord/rake\""
84
+ file.close
85
+ end
86
+ end
87
+
88
+ end
@@ -0,0 +1,3 @@
1
+ module SinatrabaseFs
2
+ VERSION = "0.1.0"
3
+ end
metadata ADDED
@@ -0,0 +1,95 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: autogen_sindb
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Naya Willis
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-11-23 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.0'
55
+ description: This gem auto-generates a Sinatra and Database file structure. Modify
56
+ at your discretion
57
+ email:
58
+ - greedybrain18@gmail.com
59
+ executables:
60
+ - autogen_sindb
61
+ extensions: []
62
+ extra_rdoc_files: []
63
+ files:
64
+ - bin/autogen_sindb
65
+ - config/env.rb
66
+ - lib/sinatrabase_fs.rb
67
+ - lib/sinatrabase_fs/structure_me.rb
68
+ - lib/sinatrabase_fs/version.rb
69
+ homepage: https://github.com/greedybrain/AutoGenSinatraAndDatabaseFS
70
+ licenses:
71
+ - MIT
72
+ metadata:
73
+ homepage_uri: https://github.com/greedybrain/AutoGenSinatraAndDatabaseFS
74
+ source_code_uri: https://github.com/greedybrain/AutoGenSinatraAndDatabaseFS
75
+ changelog_uri: https://github.com/greedybrain/AutoGenSinatraAndDatabaseFS
76
+ post_install_message:
77
+ rdoc_options: []
78
+ require_paths:
79
+ - lib
80
+ required_ruby_version: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ required_rubygems_version: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ requirements: []
91
+ rubygems_version: 3.0.3
92
+ signing_key:
93
+ specification_version: 4
94
+ summary: This gem auto-generates a Sinatra and Database file structure.
95
+ test_files: []