rails_app_generator 0.0.6 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.builders/boot.rb +1 -0
  3. data/.builders/generators/project-plan.rb +47 -0
  4. data/CHANGELOG.md +24 -0
  5. data/after_templates/README.md +3 -0
  6. data/after_templates/___base_template.rb +1 -0
  7. data/after_templates/___r7_hotwire.rb +1 -0
  8. data/after_templates/rag_bootstrap/application-yield.html.erb +5 -0
  9. data/after_templates/rag_bootstrap/application.html.erb +4 -0
  10. data/after_templates/rag_bootstrap/component-cards-fancy.css +84 -0
  11. data/after_templates/rag_bootstrap/component-cards-fancy.html +80 -0
  12. data/after_templates/rag_bootstrap/component-cards-staff.css +90 -0
  13. data/after_templates/rag_bootstrap/component-cards-staff.html +140 -0
  14. data/after_templates/rag_bootstrap/component-cards-styled.html +31 -0
  15. data/after_templates/rag_bootstrap/component-footer.html +34 -0
  16. data/after_templates/rag_bootstrap/component-hero.html +15 -0
  17. data/after_templates/rag_bootstrap/component-nav.html +36 -0
  18. data/after_templates/rag_bootstrap/custom-bootstrap-import.scss +5 -0
  19. data/after_templates/rag_bootstrap/custom-using-css.css +3 -0
  20. data/after_templates/rag_bootstrap/custom-using-scss.scss +5 -0
  21. data/after_templates/rag_bootstrap/manifest.js +3 -0
  22. data/after_templates/rag_bootstrap.rb +1 -0
  23. data/after_templates/rag_simple.rb +25 -0
  24. data/after_templates/rag_tailwind/component-cta.html +17 -0
  25. data/after_templates/rag_tailwind/component-faq.html +151 -0
  26. data/after_templates/rag_tailwind/component-footer.html +73 -0
  27. data/after_templates/rag_tailwind/component-hero.html +25 -0
  28. data/after_templates/rag_tailwind/component-nav.html +101 -0
  29. data/after_templates/rag_tailwind/component-section-begin.html +0 -0
  30. data/after_templates/rag_tailwind/component-section-end.html +0 -0
  31. data/after_templates/rag_tailwind.rb +76 -0
  32. data/docs/project-plan/project.drawio +56 -0
  33. data/docs/project-plan/project_done.svg +3 -0
  34. data/docs/project-plan/project_in_progress.svg +3 -0
  35. data/docs/project-plan/project_todo.svg +3 -0
  36. data/docs/project-plan.md +24 -0
  37. data/exe/rag +41 -0
  38. data/lib/rails_app_generator/add_on.rb +0 -1
  39. data/lib/rails_app_generator/app_builder.rb +5 -3
  40. data/lib/rails_app_generator/app_generator.rb +72 -13
  41. data/lib/rails_app_generator/notes/a2.txt +14 -1
  42. data/lib/rails_app_generator/options/rails_options.rb +1 -1
  43. data/lib/rails_app_generator/version.rb +1 -1
  44. data/lib/rails_app_generator.rb +3 -3
  45. data/package-lock.json +2 -2
  46. data/package.json +1 -1
  47. data/profiles/rag-add-some-pages.json +11 -0
  48. data/profiles/rag-bootstrap.json +12 -0
  49. data/profiles/rag-simple.json +11 -0
  50. data/profiles/rag-tailwind.json +12 -0
  51. data/templates/README.md.erb +43 -0
  52. metadata +56 -4
  53. data/exe/rails_app_generator +0 -51
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Rails 7 with Bootstrap CSS and custom CSS
4
+ # https://www.youtube.com/watch?v=tYr8yn7yRKw
5
+
6
+ require 'pry'
7
+
8
+ self.local_template_path = File.join(File.dirname(__FILE__), 'rag_simple')
9
+
10
+ gac 'base rails 7 image created'
11
+
12
+ def application_html
13
+ <<-HTML
14
+ <div class="container">
15
+ <div class="row">
16
+ <%= yield %>
17
+ </div>
18
+ </div>
19
+ HTML
20
+ end
21
+
22
+ gsub_file 'app/views/layouts/application.html.erb' , %( <%= yield %>), application_html
23
+
24
+ # after_bundle do
25
+ # end
@@ -0,0 +1,17 @@
1
+ <!-- This example requires Tailwind CSS v2.0+ -->
2
+ <div class="bg-gray-50">
3
+ <div class="max-w-7xl mx-auto py-12 px-4 sm:px-6 lg:py-16 lg:px-8 lg:flex lg:items-center lg:justify-between">
4
+ <h2 class="text-3xl font-extrabold tracking-tight text-gray-900 sm:text-4xl">
5
+ <span class="block">Ready to dive in?</span>
6
+ <span class="block text-indigo-600">Start your free trial today.</span>
7
+ </h2>
8
+ <div class="mt-8 flex lg:mt-0 lg:flex-shrink-0">
9
+ <div class="inline-flex rounded-md shadow">
10
+ <a href="#" class="inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-medium rounded-md text-white bg-indigo-600 hover:bg-indigo-700"> Get started </a>
11
+ </div>
12
+ <div class="ml-3 inline-flex rounded-md shadow">
13
+ <a href="#" class="inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-medium rounded-md text-indigo-600 bg-white hover:bg-indigo-50"> Learn more </a>
14
+ </div>
15
+ </div>
16
+ </div>
17
+ </div>
@@ -0,0 +1,151 @@
1
+ <section class="bg-white dark:bg-gray-900">
2
+ <div class="container px-6 py-12 mx-auto">
3
+ <h1 class="text-2xl font-semibold text-gray-800 lg:text-4xl dark:text-white">Frequently asked questions.</h1>
4
+
5
+ <div class="grid grid-cols-1 gap-8 mt-8 lg:mt-16 md:grid-cols-2 xl:grid-cols-3">
6
+ <div>
7
+ <div class="inline-block p-3 text-white bg-blue-600 rounded-lg">
8
+ <svg xmlns="http://www.w3.org/2000/svg" class="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
9
+ <path
10
+ stroke-linecap="round"
11
+ stroke-linejoin="round"
12
+ stroke-width="2"
13
+ d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
14
+ />
15
+ </svg>
16
+ </div>
17
+
18
+ <div>
19
+ <h1 class="text-xl font-semibold text-gray-700 dark:text-white">
20
+ What can i expect at my first consultation?
21
+ </h1>
22
+
23
+ <p class="mt-2 text-sm text-gray-500 dark:text-gray-300">
24
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident placeat, consequatur eveniet veritatis
25
+ quos dignissimos beatae dolores exercitationem laboriosam officia magnam atque blanditiis illum doloremque
26
+ magni ex corrupti tempora quis.
27
+ </p>
28
+ </div>
29
+ </div>
30
+
31
+ <div>
32
+ <div class="inline-block p-3 text-white bg-blue-600 rounded-lg">
33
+ <svg xmlns="http://www.w3.org/2000/svg" class="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
34
+ <path
35
+ stroke-linecap="round"
36
+ stroke-linejoin="round"
37
+ stroke-width="2"
38
+ d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
39
+ />
40
+ </svg>
41
+ </div>
42
+
43
+ <div>
44
+ <h1 class="text-xl font-semibold text-gray-700 dark:text-white">What are your opening house?</h1>
45
+
46
+ <p class="mt-2 text-sm text-gray-500 dark:text-gray-300">
47
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident placeat, consequatur eveniet veritatis
48
+ quos dignissimos beatae dolores exercitationem laboriosam officia magnam atque blanditiis illum doloremque
49
+ magni ex corrupti tempora quis.
50
+ </p>
51
+ </div>
52
+ </div>
53
+
54
+ <div>
55
+ <div class="inline-block p-3 text-white bg-blue-600 rounded-lg">
56
+ <svg xmlns="http://www.w3.org/2000/svg" class="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
57
+ <path
58
+ stroke-linecap="round"
59
+ stroke-linejoin="round"
60
+ stroke-width="2"
61
+ d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
62
+ />
63
+ </svg>
64
+ </div>
65
+
66
+ <div>
67
+ <h1 class="text-xl font-semibold text-gray-700 dark:text-white">Do i need a referral?</h1>
68
+
69
+ <p class="mt-2 text-sm text-gray-500 dark:text-gray-300">
70
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident placeat, consequatur eveniet veritatis
71
+ quos dignissimos beatae dolores exercitationem laboriosam officia magnam atque blanditiis illum doloremque
72
+ magni ex corrupti tempora quis.
73
+ </p>
74
+ </div>
75
+ </div>
76
+
77
+ <div>
78
+ <div class="inline-block p-3 text-white bg-blue-600 rounded-lg">
79
+ <svg xmlns="http://www.w3.org/2000/svg" class="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
80
+ <path
81
+ stroke-linecap="round"
82
+ stroke-linejoin="round"
83
+ stroke-width="2"
84
+ d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
85
+ />
86
+ </svg>
87
+ </div>
88
+
89
+ <div>
90
+ <h1 class="text-xl font-semibold text-gray-700 dark:text-white">
91
+ Is the cost of the appoinment covered by private health insurance?
92
+ </h1>
93
+
94
+ <p class="mt-2 text-sm text-gray-500 dark:text-gray-300">
95
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident placeat, consequatur eveniet veritatis
96
+ quos dignissimos beatae dolores exercitationem laboriosam officia magnam atque blanditiis illum doloremque
97
+ magni ex corrupti tempora quis.
98
+ </p>
99
+ </div>
100
+ </div>
101
+
102
+ <div>
103
+ <div class="inline-block p-3 text-white bg-blue-600 rounded-lg">
104
+ <svg xmlns="http://www.w3.org/2000/svg" class="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
105
+ <path
106
+ stroke-linecap="round"
107
+ stroke-linejoin="round"
108
+ stroke-width="2"
109
+ d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
110
+ />
111
+ </svg>
112
+ </div>
113
+
114
+ <div>
115
+ <h1 class="text-xl font-semibold text-gray-700 dark:text-white">What is your cancellation policy?</h1>
116
+
117
+ <p class="mt-2 text-sm text-gray-500 dark:text-gray-300">
118
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident placeat, consequatur eveniet veritatis
119
+ quos dignissimos beatae dolores exercitationem laboriosam officia magnam atque blanditiis illum doloremque
120
+ magni ex corrupti tempora quis.
121
+ </p>
122
+ </div>
123
+ </div>
124
+
125
+ <div>
126
+ <div class="inline-block p-3 text-white bg-blue-600 rounded-lg">
127
+ <svg xmlns="http://www.w3.org/2000/svg" class="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
128
+ <path
129
+ stroke-linecap="round"
130
+ stroke-linejoin="round"
131
+ stroke-width="2"
132
+ d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
133
+ />
134
+ </svg>
135
+ </div>
136
+
137
+ <div>
138
+ <h1 class="text-xl font-semibold text-gray-700 dark:text-white">
139
+ What are the parking and public transport options?
140
+ </h1>
141
+
142
+ <p class="mt-2 text-sm text-gray-500 dark:text-gray-300">
143
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident placeat, consequatur eveniet veritatis
144
+ quos dignissimos beatae dolores exercitationem laboriosam officia magnam atque blanditiis illum doloremque
145
+ magni ex corrupti tempora quis.
146
+ </p>
147
+ </div>
148
+ </div>
149
+ </div>
150
+ </div>
151
+ </section>
@@ -0,0 +1,73 @@
1
+
2
+ <footer class="p-4 bg-white sm:p-6 dark:bg-gray-900">
3
+ <div class="md:flex md:justify-between">
4
+ <div class="mb-6 md:mb-0">
5
+ <a href="https://flowbite.com/" class="flex items-center">
6
+ <img src="https://flowbite.com/docs/images/logo.svg" class="mr-3 h-8" alt="FlowBite Logo">
7
+ <span class="self-center text-2xl font-semibold whitespace-nowrap dark:text-white">Flowbite</span>
8
+ </a>
9
+ </div>
10
+ <div class="grid grid-cols-2 gap-8 sm:gap-6 sm:grid-cols-3">
11
+ <div>
12
+ <h2 class="mb-6 text-sm font-semibold text-gray-900 uppercase dark:text-white">Resources</h2>
13
+ <ul class="text-gray-600 dark:text-gray-400">
14
+ <li class="mb-4">
15
+ <a href="https://flowbite.com/" class="hover:underline">Flowbite</a>
16
+ </li>
17
+ <li>
18
+ <a href="https://tailwindcss.com/" class="hover:underline">Tailwind CSS</a>
19
+ </li>
20
+ </ul>
21
+ </div>
22
+ <div>
23
+ <h2 class="mb-6 text-sm font-semibold text-gray-900 uppercase dark:text-white">Follow us</h2>
24
+ <ul class="text-gray-600 dark:text-gray-400">
25
+ <li class="mb-4">
26
+ <a href="https://github.com/themesberg/flowbite" class="hover:underline ">Github</a>
27
+ </li>
28
+ <li>
29
+ <a href="https://discord.gg/4eeurUVvTy" class="hover:underline">Discord</a>
30
+ </li>
31
+ </ul>
32
+ </div>
33
+ <div>
34
+ <h2 class="mb-6 text-sm font-semibold text-gray-900 uppercase dark:text-white">Legal</h2>
35
+ <ul class="text-gray-600 dark:text-gray-400">
36
+ <li class="mb-4">
37
+ <a href="#" class="hover:underline">Privacy Policy</a>
38
+ </li>
39
+ <li>
40
+ <a href="#" class="hover:underline">Terms &amp; Conditions</a>
41
+ </li>
42
+ </ul>
43
+ </div>
44
+ </div>
45
+ </div>
46
+ <hr class="my-6 border-gray-200 sm:mx-auto dark:border-gray-700 lg:my-8">
47
+ <div class="sm:flex sm:items-center sm:justify-between">
48
+ <span class="text-sm text-gray-500 sm:text-center dark:text-gray-400">© 2022 <a href="https://flowbite.com/" class="hover:underline">Flowbite™</a>. All Rights Reserved.
49
+ </span>
50
+ <div class="flex mt-4 space-x-6 sm:justify-center sm:mt-0">
51
+ <a href="#" class="text-gray-500 hover:text-gray-900 dark:hover:text-white">
52
+ <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true"><path fill-rule="evenodd" d="M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z" clip-rule="evenodd"></path></svg>
53
+ <span class="sr-only">Facebook page</span>
54
+ </a>
55
+ <a href="#" class="text-gray-500 hover:text-gray-900 dark:hover:text-white">
56
+ <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true"><path fill-rule="evenodd" d="M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z" clip-rule="evenodd"></path></svg>
57
+ <span class="sr-only">Instagram page</span>
58
+ </a>
59
+ <a href="#" class="text-gray-500 hover:text-gray-900 dark:hover:text-white">
60
+ <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true"><path d="M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84"></path></svg>
61
+ <span class="sr-only">Twitter page</span>
62
+ </a>
63
+ <a href="#" class="text-gray-500 hover:text-gray-900 dark:hover:text-white">
64
+ <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true"><path fill-rule="evenodd" d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z" clip-rule="evenodd"></path></svg>
65
+ <span class="sr-only">GitHub account</span>
66
+ </a>
67
+ <a href="#" class="text-gray-500 hover:text-gray-900 dark:hover:text-white">
68
+ <svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true"><path fill-rule="evenodd" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c5.51 0 10-4.48 10-10S17.51 2 12 2zm6.605 4.61a8.502 8.502 0 011.93 5.314c-.281-.054-3.101-.629-5.943-.271-.065-.141-.12-.293-.184-.445a25.416 25.416 0 00-.564-1.236c3.145-1.28 4.577-3.124 4.761-3.362zM12 3.475c2.17 0 4.154.813 5.662 2.148-.152.216-1.443 1.941-4.48 3.08-1.399-2.57-2.95-4.675-3.189-5A8.687 8.687 0 0112 3.475zm-3.633.803a53.896 53.896 0 013.167 4.935c-3.992 1.063-7.517 1.04-7.896 1.04a8.581 8.581 0 014.729-5.975zM3.453 12.01v-.26c.37.01 4.512.065 8.775-1.215.25.477.477.965.694 1.453-.109.033-.228.065-.336.098-4.404 1.42-6.747 5.303-6.942 5.629a8.522 8.522 0 01-2.19-5.705zM12 20.547a8.482 8.482 0 01-5.239-1.8c.152-.315 1.888-3.656 6.703-5.337.022-.01.033-.01.054-.022a35.318 35.318 0 011.823 6.475 8.4 8.4 0 01-3.341.684zm4.761-1.465c-.086-.52-.542-3.015-1.659-6.084 2.679-.423 5.022.271 5.314.369a8.468 8.468 0 01-3.655 5.715z" clip-rule="evenodd"></path></svg>
69
+ <span class="sr-only">Dribbbel account</span>
70
+ </a>
71
+ </div>
72
+ </div>
73
+ </footer>
@@ -0,0 +1,25 @@
1
+ <section class="text-gray-700 body-font">
2
+ <div class="container px-8 pt-48 pb-24 mx-auto lg:px-4">
3
+ <div class="flex flex-col w-full mb-12 text-left lg:text-center">
4
+ <h2
5
+ class="mb-1 text-xs font-semibold tracking-widest text-blue-600 uppercase title-font">
6
+ a great
7
+ header right here
8
+ </h2>
9
+ <h1
10
+ class="mb-6 text-2xl font-semibold tracking-tighter sm:text-5xl title-font bg-clip-text text-transparent bg-gradient-to-r from-green-400 to-blue-500">
11
+ A centered medium lenght display headline.
12
+ </h1>
13
+ <p
14
+ class="mx-auto text-base font-medium leading-relaxed text-gray-700 lg:w-2/3">
15
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
16
+ eiusmod tempor incididunt ut labore et incididunt ut labore et
17
+ incididunt ut labore et dolore magna aliqua.
18
+ </p>
19
+ </div>
20
+ <div class="flex lg:justify-center">
21
+ <button
22
+ class="inline-flex px-4 py-2 font-semibold text-white transition duration-500 ease-in-out transform rounded-lg shadow-xl bg-gradient-to-r from-blue-700 hover:from-blue-600 to-blue-600 hover:to-blue-700 focus:shadow-outline focus:outline-none">Button</button>
23
+ </div>
24
+ </div>
25
+ </section>
@@ -0,0 +1,101 @@
1
+ <!-- This example requires Tailwind CSS v2.0+ -->
2
+ <nav class="bg-gray-800">
3
+ <div class="max-w-7xl mx-auto px-2 sm:px-6 lg:px-8">
4
+ <div class="relative flex items-center justify-between h-16">
5
+ <div class="absolute inset-y-0 left-0 flex items-center sm:hidden">
6
+ <!-- Mobile menu button-->
7
+ <button type="button" class="inline-flex items-center justify-center p-2 rounded-md text-gray-400 hover:text-white hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-white" aria-controls="mobile-menu" aria-expanded="false">
8
+ <span class="sr-only">Open main menu</span>
9
+ <!--
10
+ Icon when menu is closed.
11
+
12
+ Heroicon name: outline/menu
13
+
14
+ Menu open: "hidden", Menu closed: "block"
15
+ -->
16
+ <svg class="block h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" aria-hidden="true">
17
+ <path stroke-linecap="round" stroke-linejoin="round" d="M4 6h16M4 12h16M4 18h16" />
18
+ </svg>
19
+ <!--
20
+ Icon when menu is open.
21
+
22
+ Heroicon name: outline/x
23
+
24
+ Menu open: "block", Menu closed: "hidden"
25
+ -->
26
+ <svg class="hidden h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" aria-hidden="true">
27
+ <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
28
+ </svg>
29
+ </button>
30
+ </div>
31
+ <div class="flex-1 flex items-center justify-center sm:items-stretch sm:justify-start">
32
+ <div class="flex-shrink-0 flex items-center">
33
+ <img class="block lg:hidden h-8 w-auto" src="https://tailwindui.com/img/logos/workflow-mark-indigo-500.svg" alt="Workflow">
34
+ <img class="hidden lg:block h-8 w-auto" src="https://tailwindui.com/img/logos/workflow-logo-indigo-500-mark-white-text.svg" alt="Workflow">
35
+ </div>
36
+ <div class="hidden sm:block sm:ml-6">
37
+ <div class="flex space-x-4">
38
+ <!-- Current: "bg-gray-900 text-white", Default: "text-gray-300 hover:bg-gray-700 hover:text-white" -->
39
+ <a href="#" class="bg-gray-900 text-white px-3 py-2 rounded-md text-sm font-medium" aria-current="page">Dashboard</a>
40
+
41
+ <a href="#" class="text-gray-300 hover:bg-gray-700 hover:text-white px-3 py-2 rounded-md text-sm font-medium">Team</a>
42
+
43
+ <a href="#" class="text-gray-300 hover:bg-gray-700 hover:text-white px-3 py-2 rounded-md text-sm font-medium">Projects</a>
44
+
45
+ <a href="#" class="text-gray-300 hover:bg-gray-700 hover:text-white px-3 py-2 rounded-md text-sm font-medium">Calendar</a>
46
+ </div>
47
+ </div>
48
+ </div>
49
+ <div class="absolute inset-y-0 right-0 flex items-center pr-2 sm:static sm:inset-auto sm:ml-6 sm:pr-0">
50
+ <button type="button" class="bg-gray-800 p-1 rounded-full text-gray-400 hover:text-white focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-gray-800 focus:ring-white">
51
+ <span class="sr-only">View notifications</span>
52
+ <!-- Heroicon name: outline/bell -->
53
+ <svg class="h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" aria-hidden="true">
54
+ <path stroke-linecap="round" stroke-linejoin="round" d="M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9" />
55
+ </svg>
56
+ </button>
57
+
58
+ <!-- Profile dropdown -->
59
+ <div class="ml-3 relative">
60
+ <div>
61
+ <button type="button" class="bg-gray-800 flex text-sm rounded-full focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-gray-800 focus:ring-white" id="user-menu-button" aria-expanded="false" aria-haspopup="true">
62
+ <span class="sr-only">Open user menu</span>
63
+ <img class="h-8 w-8 rounded-full" src="https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80" alt="">
64
+ </button>
65
+ </div>
66
+
67
+ <!--
68
+ Dropdown menu, show/hide based on menu state.
69
+
70
+ Entering: "transition ease-out duration-100"
71
+ From: "transform opacity-0 scale-95"
72
+ To: "transform opacity-100 scale-100"
73
+ Leaving: "transition ease-in duration-75"
74
+ From: "transform opacity-100 scale-100"
75
+ To: "transform opacity-0 scale-95"
76
+ -->
77
+ <div class="origin-top-right absolute right-0 mt-2 w-48 rounded-md shadow-lg py-1 bg-white ring-1 ring-black ring-opacity-5 focus:outline-none" role="menu" aria-orientation="vertical" aria-labelledby="user-menu-button" tabindex="-1">
78
+ <!-- Active: "bg-gray-100", Not Active: "" -->
79
+ <a href="#" class="block px-4 py-2 text-sm text-gray-700" role="menuitem" tabindex="-1" id="user-menu-item-0">Your Profile</a>
80
+ <a href="#" class="block px-4 py-2 text-sm text-gray-700" role="menuitem" tabindex="-1" id="user-menu-item-1">Settings</a>
81
+ <a href="#" class="block px-4 py-2 text-sm text-gray-700" role="menuitem" tabindex="-1" id="user-menu-item-2">Sign out</a>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ </div>
86
+ </div>
87
+
88
+ <!-- Mobile menu, show/hide based on menu state. -->
89
+ <div class="sm:hidden" id="mobile-menu">
90
+ <div class="px-2 pt-2 pb-3 space-y-1">
91
+ <!-- Current: "bg-gray-900 text-white", Default: "text-gray-300 hover:bg-gray-700 hover:text-white" -->
92
+ <a href="#" class="bg-gray-900 text-white block px-3 py-2 rounded-md text-base font-medium" aria-current="page">Dashboard</a>
93
+
94
+ <a href="#" class="text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium">Team</a>
95
+
96
+ <a href="#" class="text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium">Projects</a>
97
+
98
+ <a href="#" class="text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium">Calendar</a>
99
+ </div>
100
+ </div>
101
+ </nav>
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Rails 7 with Bootstrap CSS and custom CSS
4
+ # resources:
5
+ # https://www.youtube.com/watch?v=tYr8yn7yRKw
6
+ # https://youtu.be/phOUsR0dm5s?t=493
7
+ # https://www.youtube.com/watch?v=nxKDTtuKOo4
8
+
9
+ require 'pry'
10
+
11
+ self.local_template_path = File.join(File.dirname(__FILE__), 'rag_tailwind')
12
+
13
+ gac 'base rails 7 image created'
14
+
15
+ add_controller('home', 'index', 'about')
16
+ route("root 'home#index'")
17
+
18
+ index_content = join_templates(
19
+ 'component-section-begin.html',
20
+ 'component-nav.html',
21
+ 'component-hero.html',
22
+ 'component-cta.html',
23
+ 'component-faq.html',
24
+ 'component-cta.html',
25
+ 'component-footer.html',
26
+ 'component-section-end.html'
27
+ )
28
+ # join: "</section>\n\n<section>\n"
29
+
30
+ create_file 'app/views/home/index.html.erb', index_content, force: true
31
+
32
+ # move the nav bar into
33
+ # 'app/views/shared/_navbar.html.erb'
34
+ # and add the nav bar to the layout
35
+ # 'app/views/layouts/application.html.erb'
36
+ # <%= render partial: 'shared/navbar' %>
37
+
38
+ # gem 'sassc-rails'
39
+
40
+ after_bundle do
41
+ gsub_file 'app/views/layouts/application.html.erb', %(container mx-auto mt-28 px-5 flex), 'container mx-auto px-5'
42
+ # add_css_customizations
43
+
44
+ # add_crud_people
45
+
46
+ # rails_command("db:migrate")
47
+ end
48
+
49
+ def add_css_customizations
50
+ # Update the manifest to include the stylesheets
51
+ append_to_file 'app/assets/config/manifest.js' , read_template('manifest.js')
52
+
53
+ # This is how you would add custom styling via @import in the application.bootstrap.css
54
+ append_to_file 'app/assets/stylesheets/application.bootstrap.scss' , "@import 'custom-bootstrap-import.scss';"
55
+ create_file 'app/assets/stylesheets/custom-bootstrap-import.scss' , read_template('custom-bootstrap-import.scss')
56
+
57
+ # This is how you would add custom styling using standard CSS
58
+ create_file 'app/assets/stylesheets/custom-using-css.css' , read_template('custom-using-css.css')
59
+
60
+ # This is how you would add custom styling using standard SAAS/SCSS
61
+ create_file 'app/assets/stylesheets/custom-using-scss.scss' , read_template('custom-using-scss.scss')
62
+
63
+ # This is custom CSS for the fancier components
64
+ create_file 'app/assets/stylesheets/custom-component.css' , join_templates('component-cards-fancy.css', 'component-cards-staff.css')
65
+
66
+ # Update the layout so that the stylesheets are included
67
+ insert_into_file 'app/views/layouts/application.html.erb', read_template('application.html.erb'),
68
+ before: %( <%= javascript_include_tag "application", "data-turbo-track": "reload", defer: true %>)
69
+ gsub_file 'app/views/layouts/application.html.erb', %( <%= yield %>), read_template('application-yield.html.erb')
70
+ end
71
+
72
+ def add_crud_people
73
+ # Need to get the bootstrap form styling working
74
+ # Follow the instructions at: https://youtu.be/phOUsR0dm5s?t=493
75
+ add_scaffold('people', 'first_name', 'last_name', 'age:integer', 'address:text')
76
+ end
@@ -0,0 +1,56 @@
1
+ <mxfile host="aLZ">
2
+ <diagram id="pvH" name="In progress">
3
+ <mxGraphModel dx="0" dy="0" background="#FFFAFA" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
4
+ <root>
5
+ <mxCell id="page_root_pvH" parent="pvH"/>
6
+ <mxCell id="node_root_pvH" parent="page_root_pvH"/>
7
+ <mxCell id="pvH-1" value="DrawIO DSL" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fontColor=#1F2D3D;text;fontSize=28;fontStyle=1;fillColor=none" vertex="1" parent="node_root_pvH">
8
+ <mxGeometry x="300" y="0" width="400" height="80" as="geometry"/>
9
+ </mxCell>
10
+ <mxCell id="pvH-3" value="" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#333333" vertex="1" parent="node_root_pvH">
11
+ <mxGeometry x="10" y="10" width="300" height="60" as="geometry"/>
12
+ </mxCell>
13
+ </root>
14
+ </mxGraphModel>
15
+ </diagram>
16
+ <diagram id="U3w" name="To Do">
17
+ <mxGraphModel dx="0" dy="0" background="#FFFAFA" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
18
+ <root>
19
+ <mxCell id="page_root_U3w" parent="U3w"/>
20
+ <mxCell id="node_root_U3w" parent="page_root_U3w"/>
21
+ <mxCell id="U3w-1" value="add diff tool with support" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_U3w">
22
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
23
+ </mxCell>
24
+ <mxCell id="U3w-2" value="add diff tool left hand side only option" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_U3w">
25
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
26
+ </mxCell>
27
+ <mxCell id="U3w-3" value="add diff tool right hand side only option" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_U3w">
28
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
29
+ </mxCell>
30
+ <mxCell id="U3w-4" value="add diff tool lhs/rhs differences" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_U3w">
31
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
32
+ </mxCell>
33
+ <mxCell id="U3w-5" value="add diff tool open in vscode option" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_U3w">
34
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
35
+ </mxCell>
36
+ <mxCell id="U3w-6" value="rag new should work like rails new" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_U3w">
37
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
38
+ </mxCell>
39
+ <mxCell id="U3w-7" value="rag profile is the default option" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_U3w">
40
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
41
+ </mxCell>
42
+ </root>
43
+ </mxGraphModel>
44
+ </diagram>
45
+ <diagram id="CMT" name="Done">
46
+ <mxGraphModel dx="0" dy="0" background="#FFFAFA" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
47
+ <root>
48
+ <mxCell id="page_root_CMT" parent="CMT"/>
49
+ <mxCell id="node_root_CMT" parent="page_root_CMT"/>
50
+ <mxCell id="CMT-1" value="add project plan to do list" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_CMT">
51
+ <mxGeometry x="0" y="0" width="300" height="60" as="geometry"/>
52
+ </mxCell>
53
+ </root>
54
+ </mxGraphModel>
55
+ </diagram>
56
+ </mxfile>
@@ -0,0 +1,3 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="302px" height="62px" viewBox="-0.5 -0.5 302 62"><defs><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-0.9-ffffff-0.1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.9;"/><stop offset="100%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.1;"/></linearGradient></defs><g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">add project plan to do list</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add project plan to do list</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>
@@ -0,0 +1,3 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="692px" height="82px" viewBox="-0.5 -0.5 692 82"><defs><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-0.9-ffffff-0.1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.9;"/><stop offset="100%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.1;"/></linearGradient></defs><g><rect x="290" y="0" width="400" height="80" rx="12" ry="12" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 398px; height: 1px; padding-top: 7px; margin-left: 292px;"><div data-drawio-colors="color: #1F2D3D; " style="box-sizing: border-box; font-size: 0px; text-align: left;"><div style="display: inline-block; font-size: 28px; font-family: Helvetica; color: rgb(31, 45, 61); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">DrawIO DSL</div></div></div></foreignObject><text x="292" y="35" fill="#1F2D3D" font-family="Helvetica" font-size="28px" font-weight="bold">DrawIO DSL</text></switch></g><rect x="0" y="10" width="300" height="60" rx="9" ry="9" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/><path d="M 10.15 9 Q -1 9 -1 20.15 L -1 34 Q 150 52 301 34 L 301 20.15 Q 301 9 289.85 9 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>
@@ -0,0 +1,3 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="302px" height="62px" viewBox="-0.5 -0.5 302 62"><defs><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-0.9-ffffff-0.1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.9;"/><stop offset="100%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.1;"/></linearGradient></defs><g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">add diff tool with support</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool with support</text></switch></g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">add diff tool left hand side only option</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool left hand side only option</text></switch></g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">add diff tool right hand side only option</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool right hand side only option</text></switch></g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">add diff tool lhs/rhs differences</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool lhs/rhs differences</text></switch></g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">add diff tool open in vscode option</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool open in vscode option</text></switch></g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">rag new should work like rails new</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">rag new should work like rails new</text></switch></g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">rag profile is the default option</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">rag profile is the default option</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>
@@ -0,0 +1,24 @@
1
+ # Drawio Dsl - Project Plan
2
+
3
+ ## In Progress
4
+
5
+ The next ticket to work on
6
+
7
+ ![](project-plan/project_in_progress.svg)
8
+
9
+ ## To Do
10
+
11
+ List of tickets to do
12
+
13
+ ![](project-plan/project_todo.svg)
14
+
15
+ ## Complete
16
+
17
+ List of completed tickets
18
+
19
+ ![](project-plan/project_done.svg)
20
+
21
+
22
+ ## Copyright
23
+
24
+ Copyright (c) David Cruwys. See [MIT License](LICENSE.txt) for further details.