From 79b9e8ef119f36f96da97ec4d74242108ece0425 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20B=C3=B6hm?= Date: Wed, 31 Jul 2024 15:11:45 +0200 Subject: [PATCH] Initial Commit --- Database.dia | Bin 0 -> 4276 bytes Database.dia~ | Bin 0 -> 4264 bytes Rails.md | 36 ++++++++++++++++++++++++++++++++++++ fabitapp.md | 33 +++++++++++++++++++++++++++++++++ 4 files changed, 69 insertions(+) create mode 100644 Database.dia create mode 100644 Database.dia~ create mode 100644 Rails.md create mode 100644 fabitapp.md diff --git a/Database.dia b/Database.dia new file mode 100644 index 0000000000000000000000000000000000000000..8b55c084e5d01455a1a04f6f03e402f6e512ebfd GIT binary patch literal 4276 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 Q+36Mcpo$8^(KV9)0IvK`DF6Tf literal 0 HcmV?d00001 diff --git a/Database.dia~ b/Database.dia~ new file mode 100644 index 0000000000000000000000000000000000000000..08ed1b65b798838cac42df69dc51e7337636bd03 GIT binary patch literal 4264 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 literal 0 HcmV?d00001 diff --git a/Rails.md b/Rails.md new file mode 100644 index 0000000..e54df2a --- /dev/null +++ b/Rails.md @@ -0,0 +1,36 @@ +# Ruby on Rails + +## Nützliche URLs + +- [API Doc](https://api.rubyonrails.org/) API Documentation + +## Interessante Plugins + +- [Ransack](https://github.com/activerecord-hackery/ransack) Object-based searching +- [Pagy](https://github.com/ddnexus/pagy) The Best Pagination Ruby Gem +- [Faker](https://github.com/faker-ruby/faker) Faker helps you generate realistic test data, and populate your database with more than a couple of records while you're doing development. +- [Devise](https://github.com/heartcombo/devise) Devise is a flexible authentication solution for Rails based on Warden +- [Positioning](https://github.com/brendon/positioning) Positioning supports multiple lists per model with global, simple, and complex scopes + +## Interessante Javascript Plugins + +- [Slim-Select](https://www.youtube.com/watch?v=F0au2jk7Skw) SlimSelect is in the process of adding a few framework integrations + +## Nützliche Videos + +- [SupeRails Youtube](https://www.youtube.com/@SupeRails) Very useful videos! +- [SuperRails](https://blog.corsego.com/) Text versions +- [SupeRails](https://superails.com/) Homepage +- [Tables with Javascript CSR](https://www.youtube.com/watch?v=JUI2Y5tFxj4) +- [Search with infinite Pagination](https://www.youtube.com/watch?v=A9q6YwhLCyI) +- [Tailwind](https://www.youtube.com/watch?v=oP5yKkKxLvE) Tailwind CSS: Build and Deploy a Fully Responsive Website with Modern UI/UX + +## Nützliche Libaries + +### Tailwind + +- [SimpleCSS](https://simplecss.org/) A CSS framework that makes semantic HTML look good +- [Tailwind Homepage](https://tailwindcss.com/) Rapidly build modern websites without ever leaving your HTML +- [Tailwind Cheat Sheet](https://nerdcave.com/tailwind-cheat-sheet) Cheat Sheet +- [DaisyUI](https://daisyui.com/) The most popular component library for Tailwind CSS +- [shadonUI](https://ui.shadcn.com/) Beautifully designed components that you can copy and paste into your apps diff --git a/fabitapp.md b/fabitapp.md new file mode 100644 index 0000000..4f599b2 --- /dev/null +++ b/fabitapp.md @@ -0,0 +1,33 @@ +# FAB-Verwaltung APP + +- [Gitea](https://gitnada.dnshome.de) +- [Git Repo App](https://gitnada.dnshome.de/daboh/fabitapp.git) fabitapp repo +- [Git Repo Meta](https://gitnada.dnshome.de/daboh/fabitapp-meta.git) fabitapp meta repo + +## Einsatzweck + +Dokumentation von Hardware, Hardware per Benutzer, Arbeitsplätze, Bestellungen, Hardware + +### Primäre Umsetzung + +Erfassung der Mitarbeiter, Inventar (Laptops, Monitor, Peripherie,...), Arbeitsräume, Bestellungen, Pakete + +- Mitarbeiter has_many Inventar +- Arbeitsplatz has_many Inventar, Mitarbeiter +- Bestellungen has_many Inventar, Pakete + +### Models/Database + +See Database.dia + +### Use Cases + +- Create new Inventory +- Set new Location for Inventory : Employee or Workspace +- Search vor Inventory +- Show all Inventory of Workspace / Employee + +# TODO + +- Install git docker on omv +- Install rails docker on omv