Creare una struttura ad albero
rails g scaffold Branches parent_id: position:integer note:references
rails g scaffold Link
Flowpulse (la struttura)
business
link business note
├── Contenuti o note
├── Tree
├── Tag
├── Vettori
│ ├── Libri ebook
│ ├── Corsi online in autonomia
│ ├── Corsi in gruppo
│ ├── Percorsi in gruppo
operatori
ruoli
centri accreditati
servizi
prezzi
professionisti accreditati
formazione
1impegno
└── users
├── sessions
└── profiles
├── tasks
│ └── invites
│ └── transactions
├── contacts
└── locations
Posturacorretta
├── Blog
├── Risorse
│ ├── Professionisti tipo
│ │ ├── della salute Stop al dolore | cura | riabilitazione
│ │ ├── benessere Integrato
│ │ │ ├── Benessere Discipline Bionaturali
│ │ │ └── cura del corpo
│ │ └── Posturacorretta educazione alla salute con la postura operatori posturacorretta
│ ├── Professioni
│ ├── Metodiche
│ ├── Servizi
│ ├── Prodotti
│ ├── Professionista
│ └── Centri
├── Prenotazioni | Professionista Tipo Professioni |Metodiche |Servizi |Professionista |centro
├── Corsi
│ ├── Patologia
│ │ ├── Mal di schiena
│ ├── Attività svolta categoria professionale
│ │ ├── Prepararsi al Paddel
│ └── Percorso postura e fisiologia
│ ├── Area 1 Recupero e terapie manuali coscienza corporea
│ │ ├── Igiene posturale ecc.
│ │ │ ├── Introduzione
│ ├── Area 2 Allenamento e movimento
│ ├── Area 3 Emotivo e Mentale energetico
│ ├── Area 4 Piante officinali Integratori e Farmaci
│ └── Area 5 Nutrire
|
└── Percorso personalizzato
├── Stop al dolore
│ ├── Upselling Corso per la fase acuta
│ ├── Presa in carico professionista salute
│ │ └── Diagnosi
│ │ └── Soluzione per la fase acuta
│ └── Valutazione sintomi approfondita
│ └── Sistemi compromessi
│ └── Programma personalizzato
├── Diario della salute
├── Benessere Integrato
│ └── Stato di salute
│ └── Aree della salute
│ └── Percorso integrato professionisti
│ └── Scegli professionista con servizi e programmi
└── Upselling Percorso Postura e fisiologia
MarkPostura
├── Blog
├── Business
│ ├── Posturacorretta
│ ├── Giardino del corpo
│ ├── Rils 4 business ecc..
Ecc.
Atman (Sé supremo)
├── Koshas (Gusci dell'essere)
│ ├── Annamaya Kosha (Corpo fisico)
│ ├── Pranamaya Kosha (Corpo energetico o della prana)
│ ├── Manomaya Kosha (Corpo mentale)
│ ├── Vijnanamaya Kosha (Corpo dell'intelletto o discernimento)
│ └── Anandamaya Kosha (Corpo della beatitudine)
└── Karana (Strumenti)
├── Antahkarana (Organo interno della mente)
│ ├── Manas (Mente sensoriale)
│ ├── Buddhi (Intelletto)
│ ├── Chitta (Memoria)
│ └── Ahankara (Ego)
└── Bahiranga Karana (Organi esterni)
├── Organi sensoriali (Vista, Udito, Olfatto, Gusto, Tatto)
└── Organi motori (Strutture per l'azione fisica)
Tao (Principio Supremo)
├─ Wu Xing (Cinque Movimenti o Elementi)
│ ├─ Legno (Fegato – Cistifellea)
│ ├─ Fuoco (Cuore – Intestino Tenue)
│ ├─ Terra (Milza – Stomaco)
│ ├─ Metallo (Polmoni – Intestino Crasso)
│ └─ Acqua (Reni – Vescica)
│
├─ San Bao (Tre Tesori – Fondamenti della Vita)
│ ├─ Jing (Essenza vitale) – Base materiale della vita, energia ereditaria e rigenerativa
│ ├─ Qi (Energia vitale) – Flusso vitale che anima il corpo e la mente
│ └─ Shen (Spirito) – Consapevolezza, coscienza, emozioni, connessione con il divino
│
├─ San Jiao (Tre Riscaldatori – Divisioni energetiche del corpo)
│ ├─ Jiao Superiore (Cuore e Polmoni – Distribuzione del Qi e del Sangue)
│ ├─ Jiao Medio (Milza e Stomaco – Digestione e trasformazione dell’energia)
│ └─ Jiao Inferiore (Reni, Vescica, Intestino – Eliminazione e riproduzione)
│
└─ Shen (Organi Zang) e Fu (Organi Fu)
├─ Organi Zang (Yin – Produzione e conservazione dell’energia vitale)
│ ├─ Fegato (Hun – Spirito etereo)
│ ├─ Cuore (Shen – Mente e coscienza)
│ ├─ Milza (Yi – Pensiero e concentrazione)
│ ├─ Polmoni (Po – Anima corporea, istinti)
│ └─ Reni (Zhi – Volontà e determinazione)
│
└─ Organi Fu (Yang – Trasformazione e trasporto dell’energia)
├─ Cistifellea
├─ Intestino Tenue
├─ Stomaco
├─ Intestino Crasso
├─ Vescica
└─ San Jiao (Triplice Riscaldatore – Regolazione energetica)
Struttura del video:
Modello di conoscenza dell'essere umano: Modello sensazione pensiero sentimento Intuito
- Cosa dice il modello
- 1 sensazione organi di senso e pnl (Visivo auditivo e cinestetico che riassume tatto gusto olfatto e considera anche la propriocezione)
- 2 pensiero
- 3 Sentimento
- 4 Intuito
- Modelli di dati
- vettoriale
- albero
- rete
- tag categorie
- Rapporto con fisiologia e postura
- Cosa dice il modello del movimento preso dal modello corpo e coscienza
- 1 Spontaneo
- 2 Controllato riflessi
- 3 Espressivo
- 4 Istintivo arcaico
- Rappresentazione delle strutture anatomiche interessate
- Sna afferente efferente Percepire
- Snc
- Snavegetativo
- Snaenterico
- Mark Postura App Landing Page
- Il giardino del corpo
- Soppravvivenza | Salute #2bff00
- Salute #0091ff
- Diario della salute
- produttività in autonomia
- servizi professionisti
- Stato di salute
- Stop al Dolore @programma
- Richiesta Problema Cliente @todo
- Tutor Proposta soluzione @service
- Scelta specialista / specialisti repsonsabili @todo
- Valutazione e diagnosi specialista @service
- Creazione percorso per uscire dalla fase acuta. @service
- Diario Salute @event
- Patologie
- Corsi con suggerimenti per gestire la fase acuta in alcune patologie #000000
- Scelta corsi dai contenuti
- Valutazione BenessereIntegrato per lo stato di salute
- Valutazione PosturaCorretta per capire le cause del dolore e i sistemi colpiti
- Benessere Integrato #4dd912
- Valutazione del tuo stato di salute
- chiocciola della salute #000000
- Aree della slaute
- Attività Percorso Integrato con i Professionisti #3cf609
- Consulenza / Servizio professionista b.i. #000000
- Attività per la salute in autonomia #07641e
- Postura Corretta #0062ff
- Percorso Personalizzato #4ba2b4
- Valutazione PosturaCorretta
- Globale approfondita per spiegare le cause del problema #c9c9c9
- Stato dei sistemi
- Biomeccanica Comportamentale gds
- Corpo e coscienza
- Proposta Programma
- Obiettivi
- Programma settimanale
- Sedute individuali @diario_salute
- Scheda seduta trattamento
- (contenuti posturacorretta o altri)
- Standard
- Personalizzato #635f6d
- Sedute in Gruppo @diario_salute
- (posturacorretta o altri)
- Sedute autonomia @diario_salute
- Scheda autonomia con gli esercizi (Meccanismo fisiologico proposta)
- Esercizio (spiegazione meccanismo fisiologico)
- Contenuti PosturaCorretta
- Piattaforma
- Percorso Standard Postura e Fisiologia #8599ff
- Recupero Terapie Manuali e Tecniche Corporee, Coscienza corporea #1997e6
- Igiene posturale
- Mobilità articolare #000000
- Alleggerisci le tensioni da spalle e collo #000000
- Riequilibria le 3 vie di discesa #000000
- Riattiva i tuoi recettori e il tuo schema corporeo #000000
- Principi di fisioterapia Esercizi Base per #ffffff
- il Sistema Respiratorio #000000
- il sistema nervoso #000000
- il sistema muscolo scheletrico #000000
- il sistema Cardiocircolatorio #000000
- l'apparato linfatico e il sistema digerente #000000
- Principi di osteopatia #000000
- Introduzione alla Biomeccanica Comportamentale #000000
- Introduzione alla chinesiologia #000000
- Altre metodiche posturali #000000
- Movimento e Allenamento #5a04fb
- Danza Ballo #000000
- Lotta #000000
- Movimento Arcaico #000000
- Consapevolezza: Pensieri Emozioni e ascolto per la percezione del sistema Energetico #000000
- Alimentare e Nutrire i corpi #000000
- Piante Officinali, Integratori, Farmaci, e la medicina dei semplici #000000
- Scheda trattamento Uki -> Tori Obiettivo | spiegazione fisiologica sistemi | tecnica
- Schede lavori in gruppo
- Scheda Esercizi in autonomia
- Corsi Stop al dolore Patologie
- Canale Youtube
- Contenuti benessere_integrato
- Professioni
- Metodiche scuole
- 1impegno.it https://chatgpt.com/share/67c19d4e-eba0-8002-871e-7ea300de0d88
- Risorse
- Tempo energia attenzione
- Antichi Mestieri riconquista la sovranità dell'ambiente in cui vivi #000000
- Interrelazione | Soldi #ff0000
- Le 4 arti dell'armonia #ff6161
- Canta che ti passa Musica #000000
- Gioco e strategia #000000
- la Poesia Calligrafia #000000
- Il disegno e la pittura #000000
- Viaggi Tradizione e Culture #000000
- Rails4business Come realizzare i progetti
- Componenti Business Attività #000000
- Formazione #a2ad00
- Informatica e Tecnologica #000000
- Business #000000
- Eventi Presentazione #d6c400
- Progetti #000000
- Servizi #000000
- Flowpulse struttura progetti - https://chatgpt.com/share/67c19d4e-eba0-8002-871e-7ea300de0d88
- Pagamenti e servizi business
- Note
- Mapspath
- Differenziazione | Formazione #0062ff
Esperienze Teatrali, La sapienza dell'uso della voce delle parole e delle storie #000000
Voce Pensare
Il discorso perfetto
storie parole ecc
Pensare Come Leonardo alla scoperta delle capacità cognitive umane #000000
Inside Advernture Incontri con i maestri #000000
- Conoscere come funzioni #ffffff
- Scoprire i tuoi talenti #000000
- Come funzionano ruoli e gruppi #000000
Con flowpulse realizziamo un:
- Albero dei branch a cui si possono aggiungere delle note
- Vettorializzazione dei contenuti Numerazione dell’albero branch
Sarebbe da valutare:
Come si crea un app per analisi semantica vettorializzare
Risposta Semantica pgvector
Questo è lato server poi si possono Controllare e costruire i diversi business
Implementando un Bot whats app
1️⃣ Creazione del progetto Rails 8
rails new flowpulse -d postgresql
cd flowpulse
1️⃣ Tailwindcss
./bin/bundle add tailwindcss-ruby
./bin/bundle add tailwindcss-rails
./bin/rails tailwindcss:install
DaisyUI
This method is recommended if you are not using Node.js. This works as a Tailwind CSS plugin so only the class names you need will be added to your CSS file.
Run this code to download latest verison of daisyUI as a single js file
curl -sLo app/assets/tailwind/daisyui.js https://esm.run/daisyui@5/index.js
app/assets/tailwind/application.css
@import "tailwindcss";
@plugin "./daisyui.js";
1️⃣ Pages Home
rails g controller Pages home
“2” Authentication
- https://guides.rubyonrails.org/getting_started.html#adding-authentication
rails g authentication
User.create(email_address: "mario@mario.it", password: "123456")
“3” Create Branchs
rails g scaffold Branch user:references name parent_id:integer position:integer
“3” Helper per trovare la root
branchs_helper.rb
def root_id(id)
branch = Branch.find(id)
array_ancestry_id = []
if !branch.parent_id.nil? && branch.parent_id != 0
until branch.parent_id.nil?
branch = Branch.find(branch.parent_id)
array_ancestry_id << branch.id
end
end
array_ancestry_id
end
_ancestry.html.ern
<div class="lg:w-64 bg-base-100 flex shrink-0 flex-col items-center gap-4 p-6 pb-20 md:sticky md:top-16 md:h-[calc(100vh-4rem)] md:items-start md:overflow-y-scroll lg:items-stretch max-md:hidden">
<ul class="timeline timeline-vertical timeline-compact">
<% lista_ancestry_ids = ancestry_ids(@branch.id) %>
<% lista_ancestry_ids.each_with_index do |id, index|%>
<% branch = Branch.find(id)%>
<li>
<% if index != 0 %>
<hr class="bg-primary">
<% end%>
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-primary"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<%= link_to branch, class:"timeline-end timeline-box" do %>
<%= branch.name %>
<% end %>
<%# if (index + 1) != (lista_ancestry_ids).count %>
<hr class="bg-primary">
<%# end %>
</li>
<% end %>
<li>
<% if lista_ancestry_ids.count != 0 %>
<hr class="bg-primary">
<% end %>
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<%= link_to @branch, class:"timeline-end timeline-box" do %>
<%= @branch.name %>
<% end %>
</li>
<!--li><hr class="bg-primary">
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-primary"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<div class="timeline-end timeline-box">Harry Potter and Chamber of Servers</div>
<hr class="bg-primary"></!--li>
<li><hr class="bg-primary">
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-primary"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<div class="timeline-end timeline-box">Harry Potter and Prisoner of Azure</div>
<hr class="bg-primary"></li>
<li><hr class="bg-primary">
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-primary"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<div class="timeline-end timeline-box">Harry Potter and Goblet of Firebase</div>
<hr></li>
<li><hr>
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<div class="timeline-end timeline-box">Harry Potter and Elixir of Phoenix</div>
<hr></li>
<li><hr>
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<div class="timeline-end timeline-box">Harry Potter and Half-Deployed App</div>
<hr></li>
<li><hr>
<div class="timeline-middle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path></svg></div>
<div class="timeline-end timeline-box">Harry Potter and Deathly Frameworks</div>
</li -->
</ul>
</div>
_children.html.ern
<div class="ml-4 flex-grow p-2">
<% Current.user.branchs.where(parent_id: parent.id).each_with_index do |child, index| %>
<div class="collapse border border-base-300 bg-base-100 m-2">
<input type="checkbox" id="collapse-<%= index %>" class="peer" />
<div class="collapse-title bg-primary text-primary-content peer-checked:bg-secondary peer-checked:text-secondary-content">
<%= child.name %>
</div>
<div class="collapse-content bg-primary text-primary-content peer-checked:bg-secondary peer-checked:text-secondary-content">
<%= render "children", parent: child %>
<!-- Nested Collapse -->
</div>
</div>
<% end %>
</div>
_button.html.erb
tree.html.erb
gem ‘acts_as_list’
branch.rb
class Branch < ApplicationRecord
belongs_to :user
acts_as_list scope: :parent
has_many :children, class_name: "Branch", foreign_key: "parent_id", dependent: :destroy
belongs_to :parent, class_name: "Branch", optional: true
validates :name, presence: true
validate :no_cyclic_parent
def ancestors
node, nodes = self, []
while node.parent
return [] if nodes.include?(node.parent) # Evita loop infiniti
nodes << node.parent
node = node.parent
end
nodes
end
def descendants
children.map { |child| [child] + child.descendants }.flatten
end
# Trova la radice (root) di un nodo
def root
node = self
node = node.parent while node.parent
node
end
# Verifica se il branch è la radice
def root?
parent.nil?
end
private
def no_cyclic_parent
if ancestors.include?(self)
errors.add(:parent_id, "creerebbe un ciclo nella gerarchia")
end
end
end
Note
rails g scaffold Note user:references branch:references title description content:text visibility:integer data_pubblicazione:datetime stato:integer
note.rb
enum :visibility, { privato: 0, iscritti: 1, pubblico: 2 }
enum :stato, { bozza: 0, revisione: 1, pubblicato: 2 }
EasyMDE
application.html.erb
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/easymde/dist/easymde.min.css"
/>
<script src="https://cdn.jsdelivr.net/npm/easymde/dist/easymde.min.js"></script>
Calcolo indice
<% numerazione = [] %>
<% numerazione << (index + 1) %>
rails g scaffold Business branch:reference nome url provider scadenza_url note:text
Project breadcrumb Programma -> Scheda -> Esercizio
Flowpulse potrebbe essere
- business
- corsi schede
- eventi attività
Le note devono essere messe ad albero nestate ricorsive così possono andare a livelli infiniti.
Le note si stratificano con il parent_id e il child_id è usato nel caso voglia collegarmi a un albero o a un ramo esterno perciò il child_id interrompe l’albero mettendo in link alla risorsa e aprendone un altra
Service name price:decimal profile:references note:references
Contact profile:references riferiot_a_profile_id:integer nome cognome email data_nascita luogo_nascita tel link_social
Ogni contact ha i Datifiscal contact:references Event profile:references service:references note:references event_type:[slot_prenotazione, gruppo, invito] parent_id:integer contact:references accettato_profile_id:references data_accettazione:datetime
Gli eventi possono essere di 3 tipi:
- Slot prenotabili
- Gruppo il primo evento che ha sotto altri eventi
- Invito un evento in cui si invita l’altra persona o a cui si chiede di accedere
Transacion event:references note value:float valuta:euro/dash data from_contact_id to_contact_id service:references mi creeresti il prompt migliore da salvare in un file md con gli step e poi da inserire qui per creare l’applicazione passo passo con gli scaffold dall viste ai model controller helper ai test? considerando il file .cursor.sh mi salvi il file in REcommand.md
Comandi per la creazione dell’app FlowPulse Profile
Per creare l’app FlowPulse Profile, segui i passaggi qui sotto:
1️⃣ Creare una nuova app Rails con PostgreSQL:
rails new flowpulse_component -d postgresql
2️⃣ Aggiungere e installare il gemma CSS Zero per il layout minimalista:
3️⃣ Generare l’autenticazione per l’app (con Rails Authentication):
rails g authentication
4️⃣ Creare un utente di esempio (con email e password):
User.create(email_address: "mario@mario.it", password: "123456")
5️⃣ Generare il modello “Profile” per memorizzare i dati utente:
rails g scaffold Profile user:references username:string descriptions:text avatar_img_url:string visibility:integer
3. Creazione dello scafold Note con Struttura ad Albero
il campo child_id è un link che collega altri punti o altre note e se una nota ha @note.id: 2 @note.child_id: 1 es non possono esserci altre_note.parent_id: 2
crea una pagina Dashboard progetti dove vedo le note senza parent_id
gem ‘acts_as_list’ gem ‘ancestry’
rails g migration add_ancestry_to_notes ancestry:string:index
# app/models/note.rb
class Note < ApplicationRecord
belongs_to :profile
has_many :businesses
has_many :services
has_many :events
has_many :transactions
acts_as_list
# Relazioni per la struttura ad albero
belongs_to :parent, class_name: "Note", optional: true
has_many :children, class_name: "Note", foreign_key: "parent_id", dependent: :destroy
# Relazione per il collegamento esterno
belongs_to :child, class_name: "Note", optional: true
# Validazioni
validates :nome, presence: true
end
4. Creazione del Modello Business
# Genera il modello Business
rails g model Business nome:string note:references url:string
rails db:migrate
5. Creazione del Modello Service
# Genera il modello Service
rails g model Service name:string price:decimal profile:references note:references
rails db:migrate