@a5gard/asgard 0.0.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.
- package/.env +2 -0
- package/.gitignore copy +6 -0
- package/.vscode/ntrsync/.vscode/ocrmnavigator/id.txt +1 -0
- package/.vscode/ntrsync/.vscode/ocrmnavigator.code-snippets +3664 -0
- package/.vscode/ntrsync/00002_CRM URGENT_todo.md +79 -0
- package/.vscode/ntrsync/10005_notes repo url.md +3 -0
- package/.vscode/ntrsync/10012_vscode_color_settings.md +133 -0
- package/.vscode/ntrsync/10013_Googles Snapchat Upload Hack note.md +11 -0
- package/.vscode/ntrsync/10014_APP IDEA - Lawyer CRM.md +229 -0
- package/.vscode/ntrsync/10015_APP IDEA - Onlyfans.md +293 -0
- package/.vscode/ntrsync/10016_notes repo url.md +3 -0
- package/.vscode/ntrsync/10504_adhd symptom.md +3 -0
- package/.vscode/ntrsync/10505_APP IDEA - GMAIL.md +39 -0
- package/.vscode/ntrsync/10506_container home - build mats.md +18 -0
- package/.vscode/ntrsync/10507_cleint facing site meta and loader function.md +25 -0
- package/.vscode/ntrsync/10508_Sabaak VSCode 1-8 players - private teams, solo q, duos q.md +11 -0
- package/.vscode/ntrsync/10509_schema dump.md +80 -0
- package/.vscode/ntrsync/10510_APPT BEACONHILL_reminder.md +7 -0
- package/.vscode/ntrsync/10512_clipboard very usefull should use asap within all apps.md +101 -0
- package/.vscode/ntrsync/10516_DevStack_todo.md +130 -0
- package/.vscode/ntrsync/10517_CRM_todo.md +95 -0
- package/.vscode/ntrsync/10518_Catalyst POS_todo.md +73 -0
- package/.vscode/ntrsync/10519_Catalyst Software_todo.md +497 -0
- package/.vscode/ntrsync/10523_new note.md +6 -0
- package/.vscode/ntrsync/10524_New Reminder_reminder.md +5 -0
- package/.vscode/ntrsync/10525_Mobile - Notes, To-Dos And Things_todo.md +4 -0
- package/.vscode/ntrsync/90002_COMPLETED_todo.md +97 -0
- package/.vscode/ntrsync/README.md +1 -0
- package/.vscode/ocrmnavigator/id.txt +1 -0
- package/.vscode/ocrmnavigator.code-snippets +349 -0
- package/.vscode/settings.json +1 -0
- package/CHANGELOG.md +6 -0
- package/LICENSE.md +21 -0
- package/README.md +1612 -0
- package/bin/dev.cmd +3 -0
- package/bin/dev.js +17 -0
- package/bin/run.cmd +3 -0
- package/bin/run.js +5 -0
- package/config.asgard +8 -0
- package/dist/commands/add-source.d.ts +9 -0
- package/dist/commands/add-source.d.ts.map +1 -0
- package/dist/commands/add-source.js +68 -0
- package/dist/commands/add-source.js.map +1 -0
- package/dist/commands/baldr.d.ts +5 -0
- package/dist/commands/baldr.d.ts.map +1 -0
- package/dist/commands/baldr.js +35 -0
- package/dist/commands/baldr.js.map +1 -0
- package/dist/commands/combine-timelines.d.ts +5 -0
- package/dist/commands/combine-timelines.d.ts.map +1 -0
- package/dist/commands/combine-timelines.js +53 -0
- package/dist/commands/combine-timelines.js.map +1 -0
- package/dist/commands/create-project.d.ts +10 -0
- package/dist/commands/create-project.d.ts.map +1 -0
- package/dist/commands/create-project.js +195 -0
- package/dist/commands/create-project.js.map +1 -0
- package/dist/commands/create-timeline.d.ts +8 -0
- package/dist/commands/create-timeline.d.ts.map +1 -0
- package/dist/commands/create-timeline.js +54 -0
- package/dist/commands/create-timeline.js.map +1 -0
- package/dist/commands/delete-project.d.ts +5 -0
- package/dist/commands/delete-project.d.ts.map +1 -0
- package/dist/commands/delete-project.js +47 -0
- package/dist/commands/delete-project.js.map +1 -0
- package/dist/commands/delete-source.d.ts +8 -0
- package/dist/commands/delete-source.d.ts.map +1 -0
- package/dist/commands/delete-source.js +57 -0
- package/dist/commands/delete-source.js.map +1 -0
- package/dist/commands/delete-timeline.d.ts +8 -0
- package/dist/commands/delete-timeline.d.ts.map +1 -0
- package/dist/commands/delete-timeline.js +54 -0
- package/dist/commands/delete-timeline.js.map +1 -0
- package/dist/commands/delete-version.d.ts +8 -0
- package/dist/commands/delete-version.d.ts.map +1 -0
- package/dist/commands/delete-version.js +65 -0
- package/dist/commands/delete-version.js.map +1 -0
- package/dist/commands/download-file.d.ts +17 -0
- package/dist/commands/download-file.d.ts.map +1 -0
- package/dist/commands/download-file.js +87 -0
- package/dist/commands/download-file.js.map +1 -0
- package/dist/commands/download-folder.d.ts +18 -0
- package/dist/commands/download-folder.d.ts.map +1 -0
- package/dist/commands/download-folder.js +111 -0
- package/dist/commands/download-folder.js.map +1 -0
- package/dist/commands/download-source.d.ts +12 -0
- package/dist/commands/download-source.d.ts.map +1 -0
- package/dist/commands/download-source.js +46 -0
- package/dist/commands/download-source.js.map +1 -0
- package/dist/commands/gh-setup.d.ts +7 -0
- package/dist/commands/gh-setup.d.ts.map +1 -0
- package/dist/commands/gh-setup.js +106 -0
- package/dist/commands/gh-setup.js.map +1 -0
- package/dist/commands/load-project.d.ts +5 -0
- package/dist/commands/load-project.d.ts.map +1 -0
- package/dist/commands/load-project.js +56 -0
- package/dist/commands/load-project.js.map +1 -0
- package/dist/commands/menu.d.ts +5 -0
- package/dist/commands/menu.d.ts.map +1 -0
- package/dist/commands/menu.js +41 -0
- package/dist/commands/menu.js.map +1 -0
- package/dist/commands/midgardr.d.ts +5 -0
- package/dist/commands/midgardr.d.ts.map +1 -0
- package/dist/commands/midgardr.js +24 -0
- package/dist/commands/midgardr.js.map +1 -0
- package/dist/commands/publish-project.d.ts +5 -0
- package/dist/commands/publish-project.d.ts.map +1 -0
- package/dist/commands/publish-project.js +102 -0
- package/dist/commands/publish-project.js.map +1 -0
- package/dist/commands/replace-timeline.d.ts +8 -0
- package/dist/commands/replace-timeline.d.ts.map +1 -0
- package/dist/commands/replace-timeline.js +63 -0
- package/dist/commands/replace-timeline.js.map +1 -0
- package/dist/commands/restore-version.d.ts +8 -0
- package/dist/commands/restore-version.d.ts.map +1 -0
- package/dist/commands/restore-version.js +67 -0
- package/dist/commands/restore-version.js.map +1 -0
- package/dist/commands/save-project.d.ts +8 -0
- package/dist/commands/save-project.d.ts.map +1 -0
- package/dist/commands/save-project.js +43 -0
- package/dist/commands/save-project.js.map +1 -0
- package/dist/commands/set-source.d.ts +9 -0
- package/dist/commands/set-source.d.ts.map +1 -0
- package/dist/commands/set-source.js +59 -0
- package/dist/commands/set-source.js.map +1 -0
- package/dist/commands/switch-timeline.d.ts +8 -0
- package/dist/commands/switch-timeline.d.ts.map +1 -0
- package/dist/commands/switch-timeline.js +61 -0
- package/dist/commands/switch-timeline.js.map +1 -0
- package/dist/commands/sync-source.d.ts +5 -0
- package/dist/commands/sync-source.d.ts.map +1 -0
- package/dist/commands/sync-source.js +29 -0
- package/dist/commands/sync-source.js.map +1 -0
- package/dist/commands/upload-project+++.d.ts +5 -0
- package/dist/commands/upload-project+++.d.ts.map +1 -0
- package/dist/commands/upload-project+++.js +32 -0
- package/dist/commands/upload-project+++.js.map +1 -0
- package/dist/commands/upload-project++.d.ts +5 -0
- package/dist/commands/upload-project++.d.ts.map +1 -0
- package/dist/commands/upload-project++.js +33 -0
- package/dist/commands/upload-project++.js.map +1 -0
- package/dist/commands/upload-project+.d.ts +5 -0
- package/dist/commands/upload-project+.d.ts.map +1 -0
- package/dist/commands/upload-project+.js +40 -0
- package/dist/commands/upload-project+.js.map +1 -0
- package/dist/commands/upload-project.d.ts +5 -0
- package/dist/commands/upload-project.d.ts.map +1 -0
- package/dist/commands/upload-project.js +29 -0
- package/dist/commands/upload-project.js.map +1 -0
- package/dist/commands/view-timeline.d.ts +5 -0
- package/dist/commands/view-timeline.d.ts.map +1 -0
- package/dist/commands/view-timeline.js +39 -0
- package/dist/commands/view-timeline.js.map +1 -0
- package/dist/commands/view-versions.d.ts +5 -0
- package/dist/commands/view-versions.d.ts.map +1 -0
- package/dist/commands/view-versions.js +45 -0
- package/dist/commands/view-versions.js.map +1 -0
- package/dist/git/helpers.d.ts +10 -0
- package/dist/git/helpers.d.ts.map +1 -0
- package/dist/git/helpers.js +300 -0
- package/dist/git/helpers.js.map +1 -0
- package/dist/git/sync-repo.d.ts +2 -0
- package/dist/git/sync-repo.d.ts.map +1 -0
- package/dist/git/sync-repo.js +17 -0
- package/dist/git/sync-repo.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/utils/box.d.ts +11 -0
- package/dist/utils/box.d.ts.map +1 -0
- package/dist/utils/box.js +158 -0
- package/dist/utils/box.js.map +1 -0
- package/ideas.md +46 -0
- package/package.json +53 -0
- package/src/commands/add-source.js +72 -0
- package/src/commands/baldr.js +38 -0
- package/src/commands/combine-timelines.js +65 -0
- package/src/commands/create-project.js +216 -0
- package/src/commands/create-timeline.js +60 -0
- package/src/commands/delete-project.js +54 -0
- package/src/commands/delete-source.js +63 -0
- package/src/commands/delete-timeline.js +63 -0
- package/src/commands/delete-version.js +74 -0
- package/src/commands/download-file.js +101 -0
- package/src/commands/download-folder.js +123 -0
- package/src/commands/download-source.js +51 -0
- package/src/commands/gh-setup.js +77 -0
- package/src/commands/load-project.js +63 -0
- package/src/commands/menu.js +46 -0
- package/src/commands/midgardr.js +25 -0
- package/src/commands/publish-project.js +167 -0
- package/src/commands/replace-timeline.js +76 -0
- package/src/commands/restore-version.js +80 -0
- package/src/commands/save-project.js +48 -0
- package/src/commands/set-source.js +65 -0
- package/src/commands/switch-timeline.js +69 -0
- package/src/commands/sync-source.js +32 -0
- package/src/commands/upload-project+++.js +34 -0
- package/src/commands/upload-project++.js +35 -0
- package/src/commands/upload-project+.js +47 -0
- package/src/commands/upload-project.js +31 -0
- package/src/commands/view-timeline.js +43 -0
- package/src/commands/view-versions.js +50 -0
- package/src/git/helpers.js +333 -0
- package/src/git/sync-repo.js +16 -0
- package/src/index.js +2 -0
- package/src/utils/box.js +282 -0
- package/tsconfig.json +23 -0
package/README.md
ADDED
|
@@ -0,0 +1,1612 @@
|
|
|
1
|
+
# @a5gard/asgard
|
|
2
|
+
|
|
3
|
+
One library that is a github wrapper, icons library, ui components cli installer, platform installer, platform plugin system and custom css library that would replace tailwind css
|
|
4
|
+
|
|
5
|
+
> [!NOTE]
|
|
6
|
+
>
|
|
7
|
+
> To keep this libraries size to a minimum, the icons and ui components libraries are kept seperate and this libraries use of them acts as a pass through. If you prefer your more than welcome to use those libraries on their own.
|
|
8
|
+
|
|
9
|
+
## Installing
|
|
10
|
+
|
|
11
|
+
```sh
|
|
12
|
+
npm install @a5gard/asgard
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
To display the main menu / help screen
|
|
18
|
+
|
|
19
|
+
```sh
|
|
20
|
+
asgard menu
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Otherwise you can use the commands that are designed for each feature
|
|
24
|
+
|
|
25
|
+
> [!IMPORTANT]
|
|
26
|
+
> Currently in alpha, if you have never used my projects before so as to not waste time I conduct testing as I code, once an issue crosses my path it gets fixed immediatly. Your more than welcome to use this, but if you come across an issue before I do, this is why
|
|
27
|
+
|
|
28
|
+
# TOC
|
|
29
|
+
|
|
30
|
+
- [GitHub](#github)
|
|
31
|
+
- [Installing](#installing)
|
|
32
|
+
- [create-project](#create-project)
|
|
33
|
+
- [delete-project](#delete-project)
|
|
34
|
+
- [load-project](#load-project)
|
|
35
|
+
- [save-project](#save-project)
|
|
36
|
+
- [upload-project](#upload-project)
|
|
37
|
+
- [upload-project+](#upload-project+)
|
|
38
|
+
- [upload-project++](#upload-project++)
|
|
39
|
+
- [upload-project+++](#upload-project+++)
|
|
40
|
+
- [add-source](#add-source)
|
|
41
|
+
- [delete-source](#delete-source)
|
|
42
|
+
- [download-source](#download-source)
|
|
43
|
+
- [set-source](#set-source)
|
|
44
|
+
- [sync-source](#sync-source)
|
|
45
|
+
- [create-timeline](#create-timeline)
|
|
46
|
+
- [combine-timelines](#combine-timelines)
|
|
47
|
+
- [delete-timeline](#delete-timeline)
|
|
48
|
+
- [replace-timeline](#replace-timeline)
|
|
49
|
+
- [switch-timeline](#switch-timeline)
|
|
50
|
+
- [view-timeline](#view-timeline)
|
|
51
|
+
- [restore-version](#restore-version)
|
|
52
|
+
- [delete-version](#delete-version)
|
|
53
|
+
- [view-versions](#view-versions)
|
|
54
|
+
- [download-file](#download-file)
|
|
55
|
+
- [download-folder](#download-folder)
|
|
56
|
+
- [BALDR](#baldr)
|
|
57
|
+
- [BIFRÖST](#bifrost)
|
|
58
|
+
- [BIFRÖST PLUGIN](#bifrost-plugin)
|
|
59
|
+
- [MIÐGARÐR](#midgardr)
|
|
60
|
+
- [THOR](#thor)
|
|
61
|
+
|
|
62
|
+
# GitHub
|
|
63
|
+
|
|
64
|
+
## Overview
|
|
65
|
+
|
|
66
|
+
This library is for you if one of the following is true:
|
|
67
|
+
1. finds github too complicated
|
|
68
|
+
2. hates memorizing or having to look up commands whenever you go to use git/github
|
|
69
|
+
3. can't remember the exact commands or flags needed to run git commands
|
|
70
|
+
4. no longer wants to use git but doesn't want to actually use another platform for whatever reason
|
|
71
|
+
5. new to development
|
|
72
|
+
6. tired of git/github
|
|
73
|
+
7. would like a resource that handles more than just github
|
|
74
|
+
8. and the list goes on...
|
|
75
|
+
|
|
76
|
+
While this resource works with more than just github as I have merged my other libraries in with this one, instead of have 9 resources which is dumb...
|
|
77
|
+
|
|
78
|
+
This resource is for anyone who has to continue using github but doesn't actually want to use it, or if your new to development.
|
|
79
|
+
|
|
80
|
+
If your new to development, I urge you to use this library as it will save you from many headaches and time wasting excercises of dealing with github. It's a great platform and a great idea, they just really missed the mark when it comes to implementation and user experience. This is due to the fact that their naming conventions hold no meaning behind them for new people coming into the industry and the required commands to do anything you need to do... simply put, make no sense unless you either created the platform yourself or were one of the unlucky devs, like me, who had to bash their head against the wall in order to learn the platform.
|
|
81
|
+
|
|
82
|
+
For experienced devs, simply put, this will not only save you time but also save you from having to continue memorizing everything which will decrease the cognitive load of whenever you have to deal with github, which we use every day.
|
|
83
|
+
|
|
84
|
+
Either way as you can tell from the toc, the naming convention set forth by github has been replaced with a naming convention that not only makes sense but will actually hold meaning to you whether this is your first day or 10th year.
|
|
85
|
+
|
|
86
|
+
If this is your 10th year, the following breakdown will provide the conversions on the naming convention:
|
|
87
|
+
- project - is your local repo so anything project is referenced its refering to the local representation of your remote repo
|
|
88
|
+
- source - refers to remote, as it is the source of your project
|
|
89
|
+
- timeline - is your branch, timeline was chosen because whether you are new or not timeline immediatly tells someone that it can be temparay, can be deleted or can become the final project
|
|
90
|
+
- version - replacing tags, this name immediatly conveys a versioning system where as tags... simply does not
|
|
91
|
+
|
|
92
|
+
To help with chaotic nature that is github and remove the fear of pushing or pulling of any one thing, a system has been put in place to ease and remove these burdens. If your new and have never used github, just skip this part as you do not need to know about this since the fear I'm talking about only plagues people who have used github.
|
|
93
|
+
|
|
94
|
+
The system that has been put in place is a custom sync sequence that happens before a lot of commands are actually executed, thus removing the pop up prompts like rejected push and other similar prompts telling you that your push or sync has failed. For example, whenever you use upload-project, aka git add *, git commit.. and so on, before running the actual push commands it will first pull/fetch/rebase, merge it with your local, and finally push the local to your repo. This ensures that before any action is taken, whatever branch your currently on, is always up to date so as you will never experience a conflit in refs or heads. If your skeptical about never to experience this again, I don't blame you but to ease this concern in one of my other projects I have an extension that contains a notes and to do app. Simple in nature I know but it uses github as a source of truth, which to be honest I have never seen another dev do before. The notes and to do files are accessible in every single workspace and I can have 4 workspaces open and use the extension in each of them whether or not their are dirty or clean notes in any number of them. This was made 9-10 months ago and not once have I ever had a rejected push. This project will receive the same treatment.
|
|
95
|
+
|
|
96
|
+
The reason I can ensure this, is because I too will be using this resource and do you think that I... want to deal with this crap day in and day out? No... lol, I do not. But before you ask, yes I'm making this entirely for myself and making public so I can access it everywhere. The only reason for the docs is because... I tend to build larger than normal resources, so large that at times I need to refer to my own documentation in order to remember how to use it, seriously. My vscode extension contains 175+ worth of extensions features and functionality. Currently I have 9 npm libraries, and right before creating this github wrapper I was looking at it and said to myself, "this is stupid, why am I creating so many?" and those libraries will be merged with this one. In addition to that, any other idea or need that comes up will also be added to this library. The only reason why I make the docs so descriptive as I don't need this much information in order to remember how to use it is because even in my last career I always went out of my way to help my colleagues and since I'm already making the documentation I might as well make it right so that anyone else can use it too.
|
|
97
|
+
|
|
98
|
+
The only libraries I plan on keeping up are the ones that have seen a lot of use considering, I have never told anyone about any of them, otherwise they will be removed once they have been merged
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
> [!NOTE]
|
|
103
|
+
> Flags are not required and when left out it will prompt for the required information
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
## create-project
|
|
107
|
+
|
|
108
|
+
### With no arguments
|
|
109
|
+
|
|
110
|
+
```sh
|
|
111
|
+
asgard new-project
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
If you use the above command a series of prompts will be provided inquiring:
|
|
115
|
+
1. project name
|
|
116
|
+
2. which package manager you would like to use
|
|
117
|
+
3. license you would like to use
|
|
118
|
+
4. confirmation to pre install icons library
|
|
119
|
+
5. confirmation to pre install components library
|
|
120
|
+
|
|
121
|
+
Silently it will:
|
|
122
|
+
- create the new project folder
|
|
123
|
+
- cd into the project folder
|
|
124
|
+
- create readme.md
|
|
125
|
+
- create license.md
|
|
126
|
+
- create package.json
|
|
127
|
+
- create .env and .dev.env
|
|
128
|
+
- create .gitignore
|
|
129
|
+
- initialize github project
|
|
130
|
+
- create github repo
|
|
131
|
+
- push project to the new repo
|
|
132
|
+
- creates asgard.config with the provided values to be used later
|
|
133
|
+
|
|
134
|
+
Proving just how much easier life will become when using this resource, as this now perfectly sets you up to dive into whatever project you were planning on creating.
|
|
135
|
+
|
|
136
|
+
### With arguments
|
|
137
|
+
|
|
138
|
+
```sh
|
|
139
|
+
asgard new-project project-name
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Obviously you may replace project-name with whatever you would like to call your project, doing this skips the prompt process with a set of defaults:
|
|
143
|
+
- icons: false
|
|
144
|
+
- ui components: false
|
|
145
|
+
- license: MIT
|
|
146
|
+
- branch: main
|
|
147
|
+
- package manger: pnpm
|
|
148
|
+
|
|
149
|
+
This command will follow the same processs as the previous.
|
|
150
|
+
|
|
151
|
+
### With config
|
|
152
|
+
|
|
153
|
+
```sh
|
|
154
|
+
asgard new-project
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
You may provide your own config with whatever values you would like by first creating the projects folder and then creating the config file 'config.asgard' and running the above command.
|
|
158
|
+
|
|
159
|
+
### Fallbacks
|
|
160
|
+
|
|
161
|
+
If you have never used github before or using it for the first time on this station there are a few command that will ensure that you have the required values in order to run everything and if you don't currently have them it will start off by asking you to provide username/owner, email and github token. This will trigger before running the following commands:
|
|
162
|
+
|
|
163
|
+
- create-project
|
|
164
|
+
- download-file
|
|
165
|
+
- download-folder
|
|
166
|
+
- download-source
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
## delete-project
|
|
170
|
+
|
|
171
|
+
New: Removes saved temporary work that you previously set aside. Think of it like deleting a bookmark of your work in progress.
|
|
172
|
+
|
|
173
|
+
Exp: Removes a stash entry
|
|
174
|
+
|
|
175
|
+
```sh
|
|
176
|
+
asgard delete-project
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## load-project
|
|
180
|
+
|
|
181
|
+
New: Brings back work you temporarily set aside. Imagine you put some papers in a drawer to work on something else - this takes those papers back out and puts them on your desk.
|
|
182
|
+
|
|
183
|
+
Exp: Restores and removes a stash entry (pop operation)
|
|
184
|
+
|
|
185
|
+
```sh
|
|
186
|
+
asgard load-project
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## save-project
|
|
190
|
+
|
|
191
|
+
New: Packages up all your current changes, labels them with a note, and sends them to GitHub. It's like saving your video game progress to the cloud.
|
|
192
|
+
|
|
193
|
+
Exp: Stages all changes, commits with message, and pushes to remote
|
|
194
|
+
|
|
195
|
+
```sh
|
|
196
|
+
asgard save-project
|
|
197
|
+
asgard save-project -m "added login page"
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
## upload-project
|
|
201
|
+
|
|
202
|
+
New: Makes sure your local work matches what's on GitHub, then sends your changes up. Prevents conflicts by always checking first.
|
|
203
|
+
|
|
204
|
+
Exp: Syncs local with remote then pushes
|
|
205
|
+
|
|
206
|
+
```sh
|
|
207
|
+
asgard upload-project
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
## upload-project+
|
|
211
|
+
|
|
212
|
+
New: Sends your changes to GitHub and automatically updates your project's version number by one tiny step (like going from 1.0.5 to 1.0.6). Use this for small bug fixes.
|
|
213
|
+
|
|
214
|
+
Exp: Sync, bump patch version, commit, tag, push with tags
|
|
215
|
+
|
|
216
|
+
```sh
|
|
217
|
+
asgard upload-project+
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
## upload-project++
|
|
221
|
+
|
|
222
|
+
New: Sends your changes to GitHub and updates your version number for a new feature (like going from 1.2.0 to 1.3.0). Use this when you add something new but don't break existing features.
|
|
223
|
+
|
|
224
|
+
Exp: Sync, bump minor version, commit, tag, push with tags
|
|
225
|
+
|
|
226
|
+
```sh
|
|
227
|
+
asgard upload-project++
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
## upload-project+++
|
|
231
|
+
|
|
232
|
+
New: Sends your changes to GitHub and updates your version number for major changes (like going from 2.0.0 to 3.0.0). Use this when you make big changes that might break things for people using your code.
|
|
233
|
+
|
|
234
|
+
Exp: Sync, bump major version, commit, tag, push with tags
|
|
235
|
+
|
|
236
|
+
```sh
|
|
237
|
+
asgard upload-project+++
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
## delete-source
|
|
241
|
+
|
|
242
|
+
New: Removes a connection between your local project and a copy stored somewhere online. Like unlinking your phone from a cloud backup.
|
|
243
|
+
|
|
244
|
+
Exp: Removes a remote reference
|
|
245
|
+
|
|
246
|
+
```sh
|
|
247
|
+
asgard delete-source
|
|
248
|
+
asgard delete-source -n 'backup'
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
## download-source
|
|
252
|
+
|
|
253
|
+
New: Makes a complete copy of someone's project from GitHub onto your computer. Like downloading a complete folder from Google Drive.
|
|
254
|
+
|
|
255
|
+
Exp: Clones a repository to local machine
|
|
256
|
+
|
|
257
|
+
```sh
|
|
258
|
+
asgard download-source
|
|
259
|
+
asgard download-source owner/repo
|
|
260
|
+
asgard download-source -u 'https://github.com/owner/repo'
|
|
261
|
+
asgard download-source -o 'owner' -r 'repo' -d 'my-folder'
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
## set-source
|
|
265
|
+
|
|
266
|
+
New: Changes where your project sends and receives updates from. Like changing which cloud storage account your files sync with.
|
|
267
|
+
|
|
268
|
+
Exp: Updates remote URL
|
|
269
|
+
|
|
270
|
+
```sh
|
|
271
|
+
asgard set-source -u 'https://github.com/newowner/repo.git'
|
|
272
|
+
asgard set-source -r 'main' -u 'https://github.com/newowner/repo.git'
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
## sync-source
|
|
276
|
+
|
|
277
|
+
New: Downloads any new changes from GitHub and uploads your changes. Makes sure everyone is working with the same files.
|
|
278
|
+
|
|
279
|
+
Exp: Fetch, pull with rebase, auto-commit if needed, push
|
|
280
|
+
|
|
281
|
+
```sh
|
|
282
|
+
asgard sync-source
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
## create-timeline
|
|
286
|
+
|
|
287
|
+
New: Creates a separate workspace where you can experiment without affecting your main work. Like making a copy of your essay to try different edits.
|
|
288
|
+
|
|
289
|
+
Exp: Creates and checks out new branch after syncing
|
|
290
|
+
|
|
291
|
+
```sh
|
|
292
|
+
asgard create-timeline
|
|
293
|
+
asgard create-timeline -n 'dark-mode-feature'
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
## combine-timelines
|
|
297
|
+
|
|
298
|
+
New: Takes work from one experimental workspace and merges it into your current workspace. Both workspaces still exist after. Like copying chapters from one document into another.
|
|
299
|
+
|
|
300
|
+
Exp: Merges another branch into current branch
|
|
301
|
+
|
|
302
|
+
```sh
|
|
303
|
+
asgard combine-timelines
|
|
304
|
+
asgard combine-timelines -b 'dark-mode-feature'
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
## delete-timeline
|
|
308
|
+
|
|
309
|
+
New: Permanently deletes an experimental workspace. Use this when you're done with it or don't need it anymore.
|
|
310
|
+
|
|
311
|
+
Exp: Deletes a local branch
|
|
312
|
+
|
|
313
|
+
```sh
|
|
314
|
+
asgard delete-timeline
|
|
315
|
+
asgard delete-timeline -b 'old-experiment'
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
## replace-timeline
|
|
319
|
+
|
|
320
|
+
New: Combines an experimental workspace into your main workspace, then deletes the experimental one. Use this when your experiment is successful and you want to make it permanent.
|
|
321
|
+
|
|
322
|
+
Exp: Merges branch into main and deletes source branch
|
|
323
|
+
|
|
324
|
+
```sh
|
|
325
|
+
asgard replace-timeline
|
|
326
|
+
asgard replace-timeline -b 'finished-feature'
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
## switch-timeline
|
|
330
|
+
|
|
331
|
+
New: Moves you from one workspace to another. Like switching between different tabs in your browser - all your work is still there, you're just looking at a different one.
|
|
332
|
+
|
|
333
|
+
Exp: Checks out different branch after syncing
|
|
334
|
+
|
|
335
|
+
```sh
|
|
336
|
+
asgard switch-timeline
|
|
337
|
+
asgard switch-timeline -b 'dark-mode-feature'
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
## view-timeline
|
|
341
|
+
|
|
342
|
+
New: Shows you all the different workspaces you have in your project and which one you're currently in.
|
|
343
|
+
|
|
344
|
+
Exp: Lists all local branches
|
|
345
|
+
|
|
346
|
+
```sh
|
|
347
|
+
asgard view-timeline
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
## restore-version
|
|
351
|
+
|
|
352
|
+
New: Rewinds your entire project back to how it looked at a specific point in the past. Like using "undo" but for your whole project. WARNING: This erases everything after that point.
|
|
353
|
+
|
|
354
|
+
Exp: Hard reset to specific commit
|
|
355
|
+
|
|
356
|
+
```sh
|
|
357
|
+
asgard restore-version
|
|
358
|
+
asgard restore-version -h 'abc1234'
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
## delete-version
|
|
362
|
+
|
|
363
|
+
New: Removes a label you previously put on a specific version of your project. The actual version is still in your history, you're just removing the bookmark.
|
|
364
|
+
|
|
365
|
+
Exp: Deletes a git tag
|
|
366
|
+
|
|
367
|
+
```sh
|
|
368
|
+
asgard delete-version
|
|
369
|
+
asgard delete-version -t 'v1.0.0'
|
|
370
|
+
```
|
|
371
|
+
|
|
372
|
+
## view-versions
|
|
373
|
+
|
|
374
|
+
New: Shows all the labeled versions of your project. These are like bookmarks showing important moments in your project's history.
|
|
375
|
+
|
|
376
|
+
Exp: Lists all git tags
|
|
377
|
+
|
|
378
|
+
```sh
|
|
379
|
+
asgard view-versions
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
## download-file
|
|
383
|
+
|
|
384
|
+
New: Downloads just one specific file from someone's GitHub project instead of the whole thing. Like downloading a single photo from someone's album instead of the entire album.
|
|
385
|
+
|
|
386
|
+
Exp: Downloads single file from repository
|
|
387
|
+
|
|
388
|
+
```sh
|
|
389
|
+
asgard download-file
|
|
390
|
+
asgard download-file owner/repo src/index.js
|
|
391
|
+
asgard download-file -u 'https://github.com/owner/repo/blob/main/src/index.js'
|
|
392
|
+
asgard download-file -o 'owner' -r 'repo' -p 'src/index.js' -b 'main'
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
## download-folder
|
|
396
|
+
|
|
397
|
+
New: Downloads just one folder from someone's GitHub project instead of everything. Like downloading one folder from Dropbox instead of their entire account.
|
|
398
|
+
|
|
399
|
+
Exp: Downloads specific folder from repository using sparse checkout or raw HTTP
|
|
400
|
+
|
|
401
|
+
```sh
|
|
402
|
+
asgard download-folder
|
|
403
|
+
asgard download-folder owner/repo src/components
|
|
404
|
+
asgard download-folder -u 'https://github.com/owner/repo/tree/main/src/components'
|
|
405
|
+
asgard download-folder -o 'owner' -r 'repo' -p 'src/components' -b 'main'
|
|
406
|
+
asgard download-folder --raw -u 'https://github.com/owner/repo/tree/main/src/components'
|
|
407
|
+
```
|
|
408
|
+
|
|
409
|
+
## view-timeline
|
|
410
|
+
|
|
411
|
+
New: Shows you all the different workspaces you have in your project and which one you're currently in.
|
|
412
|
+
Exp: Lists all local branches
|
|
413
|
+
|
|
414
|
+
```sh
|
|
415
|
+
asgard view-timeline
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
## view-versions
|
|
419
|
+
|
|
420
|
+
New: Shows all the labeled versions of your project. These are like bookmarks showing important moments in your project's history.
|
|
421
|
+
Exp: Lists all git tags
|
|
422
|
+
|
|
423
|
+
```sh
|
|
424
|
+
asgard view-versions
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
## publish-project
|
|
429
|
+
|
|
430
|
+
New: Takes your existing project folder and creates a GitHub repo for it, then sends everything up. Like taking a project you've been working on locally and finally backing it up to the cloud.
|
|
431
|
+
|
|
432
|
+
Exp: Creates GitHub repository for existing local project, initializes git if needed, creates missing files (README, CHANGELOG, LICENSE, config.asgard), and pushes everything
|
|
433
|
+
|
|
434
|
+
```sh
|
|
435
|
+
asgard publish-project
|
|
436
|
+
```
|
|
437
|
+
|
|
438
|
+
# BIFRÖST
|
|
439
|
+
|
|
440
|
+
# BIFRÖST PLUGIN
|
|
441
|
+
|
|
442
|
+
# THOR
|
|
443
|
+
|
|
444
|
+
# MIÐGARÐR
|
|
445
|
+
|
|
446
|
+
A comprehensive React component library with 2500+ production-ready components for building modern web applications.
|
|
447
|
+
|
|
448
|
+
## UPDATE
|
|
449
|
+
|
|
450
|
+
Adding a new line option 'Configure Import Call'. Configures your package.json and tsconfig.json files to allow the use of '#baldr' and '#midgardr' in-place of the traditional '~/components/midgardr' and '@a5gard/baldr'
|
|
451
|
+
|
|
452
|
+
```javascript
|
|
453
|
+
import { Command, CommandGroup, CommandItem, CommandList, cn } from '#midgardr'
|
|
454
|
+
import { X } from '#baldr'
|
|
455
|
+
```
|
|
456
|
+
Selecting the full installation will also configure your project for this use as well.
|
|
457
|
+
|
|
458
|
+
### Quick Start
|
|
459
|
+
|
|
460
|
+
Install a single component:
|
|
461
|
+
|
|
462
|
+
```bash
|
|
463
|
+
asgard midgardr button
|
|
464
|
+
```
|
|
465
|
+
|
|
466
|
+
### Menu
|
|
467
|
+
|
|
468
|
+
```bash
|
|
469
|
+
asgard midgardr
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
Then select from the interactive menu:
|
|
473
|
+
- **Full Install** - Components + Libraries + Tailwind + PostCSS
|
|
474
|
+
- **Full Install with Ngin** - Includes 18,000 Tailwind config presets
|
|
475
|
+
- **Components + Libraries** - Install without config files
|
|
476
|
+
- **Configure Tailwind + PostCSS** - Setup only
|
|
477
|
+
- **Configure Tailwind + PostCSS w/ ngin** - Setup with preset that contains 18,000 configurations set with only 3 variables
|
|
478
|
+
- **Select Components** - Choose specific components
|
|
479
|
+
- **Create Config** - Creates config file that can be used in conjuction with the bunx command
|
|
480
|
+
|
|
481
|
+
### Flags
|
|
482
|
+
|
|
483
|
+
Running the command with flags
|
|
484
|
+
- `full-w-ngin` - installs all, includes preset ngin
|
|
485
|
+
- `full-install` - full install
|
|
486
|
+
- `select-components` - provides a list with toggable items to install
|
|
487
|
+
- `comps-and-libs` - just installs the components and required libraries
|
|
488
|
+
- `create-config` - create config wizard
|
|
489
|
+
- `configure-tailwind-postcss` - installs tailwind v3, postcss and configures each for you
|
|
490
|
+
- `configure-ngin` - before installing ngin, prompts you for 3 values, creating the file with them instead of having to manually editing them
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
## Premium Access
|
|
494
|
+
|
|
495
|
+
Unlock the full component library with a premium access key:
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
Premium features include:
|
|
499
|
+
- Access to all 2000+ components
|
|
500
|
+
- Advanced interactive components
|
|
501
|
+
- Specialized tools and utilities
|
|
502
|
+
- Priority updates
|
|
503
|
+
|
|
504
|
+
## Component Categories
|
|
505
|
+
|
|
506
|
+
### Primitives
|
|
507
|
+
Core UI components following modern design patterns:
|
|
508
|
+
- Button, Input, Select, Checkbox, Radio, Switch
|
|
509
|
+
- Dialog, Sheet, Popover, Tooltip
|
|
510
|
+
- Card, Badge, Avatar, Separator
|
|
511
|
+
- Accordion, Tabs, Collapsible
|
|
512
|
+
- And more...
|
|
513
|
+
|
|
514
|
+
### Forms
|
|
515
|
+
Advanced form components with validation:
|
|
516
|
+
- Input variants (masked, OTP, password)
|
|
517
|
+
- Date pickers and calendars
|
|
518
|
+
- File uploads and dropzone
|
|
519
|
+
- Toggle groups and button groups
|
|
520
|
+
|
|
521
|
+
### Data Display
|
|
522
|
+
Components for presenting data:
|
|
523
|
+
- Tables with sorting and filtering
|
|
524
|
+
- Charts and data visualizations
|
|
525
|
+
- Timeline and progress indicators
|
|
526
|
+
- Empty states and skeletons
|
|
527
|
+
|
|
528
|
+
### Navigation
|
|
529
|
+
Navigation and layout components:
|
|
530
|
+
- Menus and navigation bars
|
|
531
|
+
- Breadcrumbs and pagination
|
|
532
|
+
- Sidebars and dual sidebars
|
|
533
|
+
- Command palette
|
|
534
|
+
|
|
535
|
+
### Feedback
|
|
536
|
+
User feedback components:
|
|
537
|
+
- Alerts and notifications
|
|
538
|
+
- Toast messages
|
|
539
|
+
- Loading spinners
|
|
540
|
+
- Progress indicators
|
|
541
|
+
|
|
542
|
+
### Interactive
|
|
543
|
+
Advanced interactive elements:
|
|
544
|
+
- Drag and drop
|
|
545
|
+
- Resizable panels
|
|
546
|
+
- Image zoom and crop
|
|
547
|
+
- Code editors with syntax highlighting
|
|
548
|
+
|
|
549
|
+
### Utilities
|
|
550
|
+
Helper components and hooks:
|
|
551
|
+
- Custom hooks (useTimer, useCopyToClipboard, etc.)
|
|
552
|
+
- Auth utilities
|
|
553
|
+
- Server middleware
|
|
554
|
+
- Context management
|
|
555
|
+
|
|
556
|
+
## Package Managers
|
|
557
|
+
|
|
558
|
+
Catalyst UI automatically detects and uses your package manager:
|
|
559
|
+
- npm
|
|
560
|
+
- pnpm
|
|
561
|
+
- yarn
|
|
562
|
+
|
|
563
|
+
## Configuration
|
|
564
|
+
|
|
565
|
+
### Config File (Optional)
|
|
566
|
+
|
|
567
|
+
Create a `config.midgardr` file in your project root to customize installation behavior:
|
|
568
|
+
|
|
569
|
+
```bash
|
|
570
|
+
asgard midgardr
|
|
571
|
+
# Select: Create Config File
|
|
572
|
+
```
|
|
573
|
+
|
|
574
|
+
Or create it manually:
|
|
575
|
+
|
|
576
|
+
```jsonc
|
|
577
|
+
{
|
|
578
|
+
"theme": "blue", // presetting the theme
|
|
579
|
+
"preset": "MODERN", // presetting the preset
|
|
580
|
+
"font": "Geist", // presetting the font
|
|
581
|
+
"all-components": false, // auto-install all on `asgard midgardr`
|
|
582
|
+
"install-tailwind": true, // install Tailwind dependencies
|
|
583
|
+
"configure-tailwind": true, // create and paste .css file
|
|
584
|
+
"configure-tailwind.config": true, // true, "ngin", or false
|
|
585
|
+
"install-postcss": true, // install PostCSS dependencies
|
|
586
|
+
"configure-postcss": true, // create postcss.config.js
|
|
587
|
+
"css": "app/routes/styles/tailwind.css", // CSS file location
|
|
588
|
+
"components": "app/" // components folder location
|
|
589
|
+
}
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
### Config Options Explained
|
|
593
|
+
|
|
594
|
+
| Option | Type | Default | Description |
|
|
595
|
+
|--------|------|---------|-------------|
|
|
596
|
+
| `theme` | string | `"blue"` | Default theme color |
|
|
597
|
+
| `preset` | string | `"MODERN"` | Default preset style |
|
|
598
|
+
| `font` | string | `"Geist"` | Default font family |
|
|
599
|
+
| `all-components` | boolean | `false` | Auto-install all components when running `asgard midgardr` |
|
|
600
|
+
| `install-tailwind` | boolean | `true` | Install Tailwind CSS and related dependencies |
|
|
601
|
+
| `configure-tailwind` | boolean | `true` | Create the tailwind.css file at specified location |
|
|
602
|
+
| `configure-tailwind.config` | boolean\|"ngin" | `true` | `true` for basic config, `"ngin"` for 18k presets, `false` for none |
|
|
603
|
+
| `install-postcss` | boolean | `true` | Install PostCSS dependencies |
|
|
604
|
+
| `configure-postcss` | boolean | `true` | Create postcss.config.js file |
|
|
605
|
+
| `css` | string | `"app/routes/styles/tailwind.css"` | Path and filename for tailwind.css |
|
|
606
|
+
| `components` | string | `"app/"` | Base directory for components folder |
|
|
607
|
+
|
|
608
|
+
### Auto-Install with Config
|
|
609
|
+
|
|
610
|
+
Once you have a config file with `"all-components": true`, simply run:
|
|
611
|
+
|
|
612
|
+
```bash
|
|
613
|
+
asgard midgardr
|
|
614
|
+
```
|
|
615
|
+
|
|
616
|
+
This will automatically:
|
|
617
|
+
1. Install all components to your specified components directory
|
|
618
|
+
2. Install required dependencies (if enabled)
|
|
619
|
+
3. Configure Tailwind CSS (if enabled)
|
|
620
|
+
4. Configure PostCSS (if enabled)
|
|
621
|
+
5. Create utils file
|
|
622
|
+
|
|
623
|
+
No menu selection needed!
|
|
624
|
+
|
|
625
|
+
### Tailwind Setup
|
|
626
|
+
|
|
627
|
+
Catalyst UI includes pre-configured Tailwind setups:
|
|
628
|
+
|
|
629
|
+
**Standard Configuration:**
|
|
630
|
+
```bash
|
|
631
|
+
asgard midgardr
|
|
632
|
+
# Select: Configure Tailwind + PostCSS
|
|
633
|
+
```
|
|
634
|
+
|
|
635
|
+
**Ngin Configuration** (18,000 presets):
|
|
636
|
+
```bash
|
|
637
|
+
asgard midgardr
|
|
638
|
+
# Select: Configure with Ngin
|
|
639
|
+
```
|
|
640
|
+
|
|
641
|
+
Or set in config:
|
|
642
|
+
```jsonc
|
|
643
|
+
{
|
|
644
|
+
"configure-tailwind.config": "ngin"
|
|
645
|
+
}
|
|
646
|
+
```
|
|
647
|
+
|
|
648
|
+
## Examples
|
|
649
|
+
|
|
650
|
+
### Installing a Button Component
|
|
651
|
+
|
|
652
|
+
```bash
|
|
653
|
+
asgard midgardr button
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
This will:
|
|
657
|
+
1. Create `/components/midgardr/primitives/button.tsx`
|
|
658
|
+
2. Install required dependencies (extracted from component imports)
|
|
659
|
+
3. Create `utils/utils.ts` if it doesn't exist
|
|
660
|
+
|
|
661
|
+
### Using the Button Component
|
|
662
|
+
|
|
663
|
+
```tsx
|
|
664
|
+
import { Button } from '~/components/midgardr';
|
|
665
|
+
|
|
666
|
+
export default function MyPage() {
|
|
667
|
+
return (
|
|
668
|
+
<Button
|
|
669
|
+
variant="default"
|
|
670
|
+
size="lg"
|
|
671
|
+
onClick={() => console.log('clicked')}
|
|
672
|
+
>
|
|
673
|
+
Click Me
|
|
674
|
+
</Button>
|
|
675
|
+
);
|
|
676
|
+
}
|
|
677
|
+
```
|
|
678
|
+
|
|
679
|
+
### Installing Multiple Components
|
|
680
|
+
|
|
681
|
+
```bash
|
|
682
|
+
asgard midgardr
|
|
683
|
+
# Select: Select Components
|
|
684
|
+
# Choose from the list
|
|
685
|
+
```
|
|
686
|
+
|
|
687
|
+
## Component Import Paths
|
|
688
|
+
|
|
689
|
+
All components use the centralized import path:
|
|
690
|
+
|
|
691
|
+
```tsx
|
|
692
|
+
import { Button, Card, Dialog } from '~/components/midgardr';
|
|
693
|
+
```
|
|
694
|
+
|
|
695
|
+
Or import directly from category folders:
|
|
696
|
+
|
|
697
|
+
```tsx
|
|
698
|
+
import { Button } from '~/components/midgardr/primitives';
|
|
699
|
+
import { useTimer } from '~/components/midgardr/hooks';
|
|
700
|
+
```
|
|
701
|
+
|
|
702
|
+
If you would rather a much easier import path to use, I have recently adopted the following and can be configured in your project using the flag 'easy-paths'
|
|
703
|
+
|
|
704
|
+
```tsx
|
|
705
|
+
import { Button, Card, Dialog } from '#midgardr';
|
|
706
|
+
```
|
|
707
|
+
|
|
708
|
+
## Features
|
|
709
|
+
|
|
710
|
+
- **TypeScript First** - Full TypeScript support with type definitions
|
|
711
|
+
- **Accessible** - Built with accessibility in mind following WAI-ARIA standards
|
|
712
|
+
- **Customizable** - Highly customizable with Tailwind CSS
|
|
713
|
+
- **Tree-shakeable** - Import only what you need
|
|
714
|
+
- **Dark Mode** - Built-in dark mode support
|
|
715
|
+
- **Responsive** - Mobile-first responsive design
|
|
716
|
+
- **Zero Config** - Works out of the box with sensible defaults
|
|
717
|
+
|
|
718
|
+
|
|
719
|
+
## File Structure
|
|
720
|
+
|
|
721
|
+
After installation, your project will have:
|
|
722
|
+
|
|
723
|
+
```
|
|
724
|
+
your-project/
|
|
725
|
+
├── components/
|
|
726
|
+
│ └── midgardr/
|
|
727
|
+
│ ├── primitives/
|
|
728
|
+
│ ├── forms/
|
|
729
|
+
│ ├── overlays/
|
|
730
|
+
│ ├── hooks/
|
|
731
|
+
│ ├── utils/
|
|
732
|
+
│ │ └── utils.ts
|
|
733
|
+
│ └── index.ts
|
|
734
|
+
└── (optional config files)
|
|
735
|
+
├── tailwind.config.js
|
|
736
|
+
└── postcss.config.js
|
|
737
|
+
```
|
|
738
|
+
|
|
739
|
+
|
|
740
|
+
# BALDR ICONS
|
|
741
|
+
|
|
742
|
+
## React Icon Library
|
|
743
|
+
|
|
744
|
+
This is a programmatically generated React icon library designed for simplicity and accuracy.
|
|
745
|
+
|
|
746
|
+
### Key Features
|
|
747
|
+
|
|
748
|
+
* **No Website Needed:** Icons are visually similar across libraries, so a dedicated showcase website is omitted.
|
|
749
|
+
* **Script-Generated & Verified:** The entire library is built using scripts. Upon completion, it automatically scans the icon directory to generate the list below, guaranteeing that every listed icon is available.
|
|
750
|
+
* **Two Search Methods:**
|
|
751
|
+
1. **Browser Search:** Use your browser's find function (`Ctrl+F` / `Cmd+F`) to search the list on this page.
|
|
752
|
+
2. **VS Code Extension:** Use the "DevStack" extension from the marketplace for a quick-pick search. It inserts the icon component and adds the necessary import automatically.
|
|
753
|
+
|
|
754
|
+
### Naming Convention
|
|
755
|
+
|
|
756
|
+
Icons are named intuitively, so you don't need to memorize their original names. The structure is:
|
|
757
|
+
|
|
758
|
+
`[Main Theme][Container/Feature][Filled]`
|
|
759
|
+
|
|
760
|
+
* **Main Theme:** The core subject of the icon (e.g., `ExclamationPoint`, `Text`).
|
|
761
|
+
* **Container/Feature:** An encompassing shape or added feature (e.g., `Circle`, `File`, `Wrap`).
|
|
762
|
+
* **Filled:** Appended only if the icon has a filled variant.
|
|
763
|
+
|
|
764
|
+
**Examples:**
|
|
765
|
+
* `ExclamationPointCircle`
|
|
766
|
+
* `TextWrap`
|
|
767
|
+
* `ExclamationPointFile`
|
|
768
|
+
* `QuestionMarkFileFilled`
|
|
769
|
+
|
|
770
|
+
## Installation
|
|
771
|
+
|
|
772
|
+
```bash
|
|
773
|
+
npm install @a5gard/baldr
|
|
774
|
+
# or
|
|
775
|
+
pnpm add @a5gard/baldr
|
|
776
|
+
```
|
|
777
|
+
|
|
778
|
+
## Usage
|
|
779
|
+
|
|
780
|
+
```javascript
|
|
781
|
+
import { ArrowBadgeRight } from '@a5gard/baldr'
|
|
782
|
+
|
|
783
|
+
<ArrowBadgeRight />
|
|
784
|
+
```
|
|
785
|
+
|
|
786
|
+
<!-- icon start -->
|
|
787
|
+
|
|
788
|
+
## Icons
|
|
789
|
+
|
|
790
|
+
- Abc
|
|
791
|
+
- Ac
|
|
792
|
+
- Ace
|
|
793
|
+
- Aleph
|
|
794
|
+
- Algiz
|
|
795
|
+
- Alien
|
|
796
|
+
- AlignCenter
|
|
797
|
+
- AlignEndVertical
|
|
798
|
+
- AlignJustified
|
|
799
|
+
- AlignJustify
|
|
800
|
+
- AlignLeft
|
|
801
|
+
- AlignRight
|
|
802
|
+
- Alpha
|
|
803
|
+
- Amazon
|
|
804
|
+
- AmericanExpress
|
|
805
|
+
- Android
|
|
806
|
+
- Ansuz
|
|
807
|
+
- Anthropic
|
|
808
|
+
- AppWindow
|
|
809
|
+
- Apple
|
|
810
|
+
- Archive
|
|
811
|
+
- ArchiveX
|
|
812
|
+
- ArrowBadgeDown
|
|
813
|
+
- ArrowBadgeLeft
|
|
814
|
+
- ArrowBadgeRight
|
|
815
|
+
- ArrowBadgeUp
|
|
816
|
+
- ArrowBigDown
|
|
817
|
+
- ArrowBigLeft
|
|
818
|
+
- ArrowBigRight
|
|
819
|
+
- ArrowBigUp
|
|
820
|
+
- ArrowDown
|
|
821
|
+
- ArrowDownFromLine
|
|
822
|
+
- ArrowDownLeft
|
|
823
|
+
- ArrowDownRight
|
|
824
|
+
- ArrowLeft
|
|
825
|
+
- ArrowLeftRight
|
|
826
|
+
- ArrowRight
|
|
827
|
+
- ArrowUp
|
|
828
|
+
- ArrowUpDown
|
|
829
|
+
- ArrowUpFromLine
|
|
830
|
+
- ArrowUpNarrowWide
|
|
831
|
+
- ArrowUpRight
|
|
832
|
+
- Assemblyai
|
|
833
|
+
- Asterisk
|
|
834
|
+
- Astro
|
|
835
|
+
- At
|
|
836
|
+
- AtSign
|
|
837
|
+
- Atari
|
|
838
|
+
- AudioWaveform
|
|
839
|
+
- Award
|
|
840
|
+
- Aws
|
|
841
|
+
- Azure
|
|
842
|
+
- Badge
|
|
843
|
+
- BadgeCheck
|
|
844
|
+
- Ban
|
|
845
|
+
- Banknote
|
|
846
|
+
- BarChart
|
|
847
|
+
- BarChartArea
|
|
848
|
+
- BarChartAreaBig
|
|
849
|
+
- BarChartFile
|
|
850
|
+
- Baseten
|
|
851
|
+
- Bat
|
|
852
|
+
- Bed
|
|
853
|
+
- BeggarsHand
|
|
854
|
+
- Bell
|
|
855
|
+
- Berkano
|
|
856
|
+
- Beta
|
|
857
|
+
- Beth
|
|
858
|
+
- Biohazard
|
|
859
|
+
- Biome
|
|
860
|
+
- Bitcoin
|
|
861
|
+
- Bitcoin2
|
|
862
|
+
- Blackforestlabs
|
|
863
|
+
- Blackforestlabs1
|
|
864
|
+
- Blocks
|
|
865
|
+
- Bluetooth
|
|
866
|
+
- Bmw
|
|
867
|
+
- Bold
|
|
868
|
+
- Book
|
|
869
|
+
- BookOpen
|
|
870
|
+
- BookOpenText
|
|
871
|
+
- Bookmark
|
|
872
|
+
- Bot
|
|
873
|
+
- Bower
|
|
874
|
+
- Box
|
|
875
|
+
- Boxes
|
|
876
|
+
- Braces
|
|
877
|
+
- BracketsAngle
|
|
878
|
+
- Brain
|
|
879
|
+
- BrandAstro
|
|
880
|
+
- Briefcase
|
|
881
|
+
- BrightnessDown
|
|
882
|
+
- BrightnessUp
|
|
883
|
+
- Browser
|
|
884
|
+
- Brush
|
|
885
|
+
- Bug
|
|
886
|
+
- Building
|
|
887
|
+
- Bun
|
|
888
|
+
- Burger
|
|
889
|
+
- C
|
|
890
|
+
- Calc
|
|
891
|
+
- CalcDoubled
|
|
892
|
+
- Calculator
|
|
893
|
+
- Calendar
|
|
894
|
+
- CalendarCheck
|
|
895
|
+
- CalendarCheck2
|
|
896
|
+
- CalendarDays
|
|
897
|
+
- CalendarPlus
|
|
898
|
+
- Camera
|
|
899
|
+
- Capture
|
|
900
|
+
- Car
|
|
901
|
+
- CarFront
|
|
902
|
+
- CaretDown
|
|
903
|
+
- CaretLeft
|
|
904
|
+
- CaretRight
|
|
905
|
+
- CaretUp
|
|
906
|
+
- Cb
|
|
907
|
+
- Cen
|
|
908
|
+
- Cerebras
|
|
909
|
+
- Check
|
|
910
|
+
- CheckCircle
|
|
911
|
+
- CheckSquare
|
|
912
|
+
- Checkbox
|
|
913
|
+
- CheckboxCheckedFilled
|
|
914
|
+
- ChefHat
|
|
915
|
+
- ChevronDown
|
|
916
|
+
- ChevronLeft
|
|
917
|
+
- ChevronRight
|
|
918
|
+
- ChevronUp
|
|
919
|
+
- ChevronsDown
|
|
920
|
+
- ChevronsLeft
|
|
921
|
+
- ChevronsLeftRight
|
|
922
|
+
- ChevronsRight
|
|
923
|
+
- ChevronsUpDown
|
|
924
|
+
- Circle
|
|
925
|
+
- CircleOff
|
|
926
|
+
- CirclePlus
|
|
927
|
+
- Circleci
|
|
928
|
+
- Cirrus
|
|
929
|
+
- Claude
|
|
930
|
+
- Clipboard
|
|
931
|
+
- ClipboardCheck
|
|
932
|
+
- ClipboardData
|
|
933
|
+
- ClipboardText
|
|
934
|
+
- Clock
|
|
935
|
+
- Cloud
|
|
936
|
+
- CloudRain
|
|
937
|
+
- CloudUpload
|
|
938
|
+
- Code
|
|
939
|
+
- Codemirror
|
|
940
|
+
- Coffeescript
|
|
941
|
+
- Cog
|
|
942
|
+
- Cohere
|
|
943
|
+
- ColorPicker
|
|
944
|
+
- ColorSwatch
|
|
945
|
+
- ColoredStar
|
|
946
|
+
- Columns
|
|
947
|
+
- Columns3
|
|
948
|
+
- Columns4
|
|
949
|
+
- Command
|
|
950
|
+
- CommandK
|
|
951
|
+
- Compass
|
|
952
|
+
- Component
|
|
953
|
+
- Component1
|
|
954
|
+
- Computer
|
|
955
|
+
- ComputerChip
|
|
956
|
+
- Construction
|
|
957
|
+
- Cookie
|
|
958
|
+
- Coolermaster
|
|
959
|
+
- Copy
|
|
960
|
+
- CornerUpLeft
|
|
961
|
+
- CornerUpRight
|
|
962
|
+
- Cplusplus
|
|
963
|
+
- Cpu
|
|
964
|
+
- CreditCard
|
|
965
|
+
- Crown
|
|
966
|
+
- Css
|
|
967
|
+
- Cssmodules
|
|
968
|
+
- Cva
|
|
969
|
+
- Cweord
|
|
970
|
+
- Dagaz
|
|
971
|
+
- Dart
|
|
972
|
+
- Dashboard
|
|
973
|
+
- Database
|
|
974
|
+
- Datefns
|
|
975
|
+
- Deepgram
|
|
976
|
+
- Deepinfra
|
|
977
|
+
- Deepmind
|
|
978
|
+
- Deepseek
|
|
979
|
+
- Delete
|
|
980
|
+
- Delta
|
|
981
|
+
- DeviceCode
|
|
982
|
+
- Digamma
|
|
983
|
+
- DirectDebit
|
|
984
|
+
- Discord
|
|
985
|
+
- Discover
|
|
986
|
+
- Docker
|
|
987
|
+
- Docusaurus
|
|
988
|
+
- Dog
|
|
989
|
+
- DollarSign
|
|
990
|
+
- Dot
|
|
991
|
+
- Dotenv
|
|
992
|
+
- Dots
|
|
993
|
+
- DotsVertical
|
|
994
|
+
- Download
|
|
995
|
+
- Droplets
|
|
996
|
+
- EPassport
|
|
997
|
+
- Ear
|
|
998
|
+
- Editorconfig
|
|
999
|
+
- Ehwaz
|
|
1000
|
+
- Electron
|
|
1001
|
+
- Elevenlabs
|
|
1002
|
+
- Embla
|
|
1003
|
+
- Epsilon
|
|
1004
|
+
- Eraser
|
|
1005
|
+
- Eslint
|
|
1006
|
+
- Eta
|
|
1007
|
+
- Etcd
|
|
1008
|
+
- ExclamationPointMessageCircle
|
|
1009
|
+
- ExclamationPointOctagon
|
|
1010
|
+
- ExclamationPointTriangle
|
|
1011
|
+
- Expand
|
|
1012
|
+
- ExternalLink
|
|
1013
|
+
- Eye
|
|
1014
|
+
- EyeClosed
|
|
1015
|
+
- EyeOff
|
|
1016
|
+
- Facebook
|
|
1017
|
+
- Fal
|
|
1018
|
+
- Figma
|
|
1019
|
+
- File
|
|
1020
|
+
- FileCode
|
|
1021
|
+
- FileExport
|
|
1022
|
+
- FileImage
|
|
1023
|
+
- FileInput
|
|
1024
|
+
- FileJson
|
|
1025
|
+
- FileOutput
|
|
1026
|
+
- FilePlay
|
|
1027
|
+
- FilePlus
|
|
1028
|
+
- FileSpreadsheet
|
|
1029
|
+
- FileText
|
|
1030
|
+
- FileTypeBmp
|
|
1031
|
+
- FileTypeCss
|
|
1032
|
+
- FileTypeCsv
|
|
1033
|
+
- FileTypeDoc
|
|
1034
|
+
- FileTypeDocx
|
|
1035
|
+
- FileTypeHtml
|
|
1036
|
+
- FileTypeJpg
|
|
1037
|
+
- FileTypeJs
|
|
1038
|
+
- FileTypeJsx
|
|
1039
|
+
- FileTypePdf
|
|
1040
|
+
- FileTypePhp
|
|
1041
|
+
- FileTypePng
|
|
1042
|
+
- FileTypePpt
|
|
1043
|
+
- FileTypeRs
|
|
1044
|
+
- FileTypeSql
|
|
1045
|
+
- FileTypeSvg
|
|
1046
|
+
- FileTypeTs
|
|
1047
|
+
- FileTypeTsx
|
|
1048
|
+
- FileTypeTxt
|
|
1049
|
+
- FileTypeVue
|
|
1050
|
+
- FileTypeXls
|
|
1051
|
+
- FileTypeXml
|
|
1052
|
+
- FileTypeZip
|
|
1053
|
+
- FileTypography
|
|
1054
|
+
- FileX
|
|
1055
|
+
- Filter
|
|
1056
|
+
- Fireworks
|
|
1057
|
+
- FishBone
|
|
1058
|
+
- Flag
|
|
1059
|
+
- Flame
|
|
1060
|
+
- FloppyDisk
|
|
1061
|
+
- Focus
|
|
1062
|
+
- Folder
|
|
1063
|
+
- FolderCheck
|
|
1064
|
+
- FolderClosed
|
|
1065
|
+
- FolderDown
|
|
1066
|
+
- FolderOpen
|
|
1067
|
+
- FolderPlus
|
|
1068
|
+
- FolderRoot
|
|
1069
|
+
- FolderSearch
|
|
1070
|
+
- FolderTree
|
|
1071
|
+
- FolderUp
|
|
1072
|
+
- FolderUpload
|
|
1073
|
+
- Foobar2000
|
|
1074
|
+
- Footprints
|
|
1075
|
+
- Forward
|
|
1076
|
+
- FourOhFour
|
|
1077
|
+
- Frame
|
|
1078
|
+
- Funnel
|
|
1079
|
+
- FuseJs
|
|
1080
|
+
- GalleryVerticalEnd
|
|
1081
|
+
- Gamepad
|
|
1082
|
+
- Gamepad2
|
|
1083
|
+
- Gamma
|
|
1084
|
+
- Gar
|
|
1085
|
+
- Gatsby
|
|
1086
|
+
- Gauge
|
|
1087
|
+
- Gavel
|
|
1088
|
+
- Gebo
|
|
1089
|
+
- Gem
|
|
1090
|
+
- Gemini
|
|
1091
|
+
- Gemini1
|
|
1092
|
+
- Ger
|
|
1093
|
+
- Ghost
|
|
1094
|
+
- GhostFilled
|
|
1095
|
+
- GhostFloating
|
|
1096
|
+
- GhostFloatingFilled
|
|
1097
|
+
- Gift
|
|
1098
|
+
- GitBranch
|
|
1099
|
+
- GitCommitVertical
|
|
1100
|
+
- Github
|
|
1101
|
+
- Gitignoredotio
|
|
1102
|
+
- Gitlab
|
|
1103
|
+
- Gladia
|
|
1104
|
+
- Globe
|
|
1105
|
+
- GlobeLock
|
|
1106
|
+
- Gnubash
|
|
1107
|
+
- Go
|
|
1108
|
+
- Golang
|
|
1109
|
+
- Google
|
|
1110
|
+
- Googledataproc
|
|
1111
|
+
- Googlegemini
|
|
1112
|
+
- Googlejules
|
|
1113
|
+
- GraduationCap
|
|
1114
|
+
- Graphql
|
|
1115
|
+
- GreekDelta
|
|
1116
|
+
- Grid
|
|
1117
|
+
- Grid3X3
|
|
1118
|
+
- GripVertical
|
|
1119
|
+
- Grok
|
|
1120
|
+
- Grunt
|
|
1121
|
+
- Gulp
|
|
1122
|
+
- H1
|
|
1123
|
+
- H2
|
|
1124
|
+
- H3
|
|
1125
|
+
- H4
|
|
1126
|
+
- H5
|
|
1127
|
+
- H6
|
|
1128
|
+
- Hackaday
|
|
1129
|
+
- Haglaz
|
|
1130
|
+
- Hammer
|
|
1131
|
+
- Handlebarsdotjs
|
|
1132
|
+
- HardDrive
|
|
1133
|
+
- HardHat
|
|
1134
|
+
- Hash
|
|
1135
|
+
- Heading
|
|
1136
|
+
- Headphones
|
|
1137
|
+
- Heart
|
|
1138
|
+
- HeartHandshake
|
|
1139
|
+
- Hexagon
|
|
1140
|
+
- Highlight
|
|
1141
|
+
- Home
|
|
1142
|
+
- Html
|
|
1143
|
+
- Html5
|
|
1144
|
+
- Huggingface
|
|
1145
|
+
- Hume
|
|
1146
|
+
- ICircle
|
|
1147
|
+
- Image
|
|
1148
|
+
- Import
|
|
1149
|
+
- Inbox
|
|
1150
|
+
- IndentDecrease
|
|
1151
|
+
- IndentIncrease
|
|
1152
|
+
- Ingwaz
|
|
1153
|
+
- InputOtp
|
|
1154
|
+
- Instagram
|
|
1155
|
+
- Ior
|
|
1156
|
+
- Isaz
|
|
1157
|
+
- Italic
|
|
1158
|
+
- Iwaz
|
|
1159
|
+
- Jack
|
|
1160
|
+
- Javascript
|
|
1161
|
+
- Jcb
|
|
1162
|
+
- Jest
|
|
1163
|
+
- Json
|
|
1164
|
+
- Kanban
|
|
1165
|
+
- Kaph
|
|
1166
|
+
- Kappa
|
|
1167
|
+
- Key
|
|
1168
|
+
- Keyboard
|
|
1169
|
+
- King
|
|
1170
|
+
- Klarna
|
|
1171
|
+
- Koppa
|
|
1172
|
+
- Kotlin
|
|
1173
|
+
- Lambda
|
|
1174
|
+
- Laptop
|
|
1175
|
+
- Laukaz
|
|
1176
|
+
- Layers
|
|
1177
|
+
- LayoutGrid
|
|
1178
|
+
- Less
|
|
1179
|
+
- LetterCaseLower
|
|
1180
|
+
- LetterCaseToggle
|
|
1181
|
+
- LetterCaseUpper
|
|
1182
|
+
- Lexical
|
|
1183
|
+
- Library
|
|
1184
|
+
- LifeBuoy
|
|
1185
|
+
- Lightbulb
|
|
1186
|
+
- LineDashed
|
|
1187
|
+
- LineHeight
|
|
1188
|
+
- Link
|
|
1189
|
+
- Linkedin
|
|
1190
|
+
- List
|
|
1191
|
+
- ListCheck
|
|
1192
|
+
- ListChecks
|
|
1193
|
+
- ListFilter
|
|
1194
|
+
- ListFilterPlus
|
|
1195
|
+
- ListMusic
|
|
1196
|
+
- ListOrdered
|
|
1197
|
+
- ListRestart
|
|
1198
|
+
- Lmnt
|
|
1199
|
+
- Loader
|
|
1200
|
+
- LoaderCircle
|
|
1201
|
+
- Lock
|
|
1202
|
+
- LockOpen
|
|
1203
|
+
- LogIn
|
|
1204
|
+
- LogOut
|
|
1205
|
+
- Loki
|
|
1206
|
+
- Lota
|
|
1207
|
+
- Lucide
|
|
1208
|
+
- Luma
|
|
1209
|
+
- Maestro
|
|
1210
|
+
- Mail
|
|
1211
|
+
- MailCheck
|
|
1212
|
+
- Mannaz
|
|
1213
|
+
- Map
|
|
1214
|
+
- MapPin
|
|
1215
|
+
- Markdown
|
|
1216
|
+
- Marko
|
|
1217
|
+
- MasterCard
|
|
1218
|
+
- Maximize
|
|
1219
|
+
- Mdx
|
|
1220
|
+
- Megaphone
|
|
1221
|
+
- Mem
|
|
1222
|
+
- Menu
|
|
1223
|
+
- MessageCircle
|
|
1224
|
+
- MessagePlus
|
|
1225
|
+
- MessageSquare
|
|
1226
|
+
- MessagesSquare
|
|
1227
|
+
- Messenger
|
|
1228
|
+
- Mic
|
|
1229
|
+
- MicrochipBoard
|
|
1230
|
+
- Microphone
|
|
1231
|
+
- Microsoft
|
|
1232
|
+
- Microsoft1
|
|
1233
|
+
- Minimize
|
|
1234
|
+
- Mintlify
|
|
1235
|
+
- Minus
|
|
1236
|
+
- Mistralai
|
|
1237
|
+
- Mocha
|
|
1238
|
+
- MonacoEditor
|
|
1239
|
+
- Monitor
|
|
1240
|
+
- MoodBoy
|
|
1241
|
+
- Moon
|
|
1242
|
+
- MousePointer
|
|
1243
|
+
- Move
|
|
1244
|
+
- Mu
|
|
1245
|
+
- Music
|
|
1246
|
+
- Mysql
|
|
1247
|
+
- Naudiz
|
|
1248
|
+
- Navigation
|
|
1249
|
+
- Newspaper
|
|
1250
|
+
- Nextdotjs
|
|
1251
|
+
- Nextjs
|
|
1252
|
+
- Nodejs
|
|
1253
|
+
- NotebookText
|
|
1254
|
+
- NotepadText
|
|
1255
|
+
- Npm
|
|
1256
|
+
- Nu
|
|
1257
|
+
- Number20Small
|
|
1258
|
+
- Nun
|
|
1259
|
+
- Odin
|
|
1260
|
+
- Odin2
|
|
1261
|
+
- Ollama
|
|
1262
|
+
- Omicron
|
|
1263
|
+
- OpenSource
|
|
1264
|
+
- Openai
|
|
1265
|
+
- Os
|
|
1266
|
+
- Othalan
|
|
1267
|
+
- Package
|
|
1268
|
+
- Pacman
|
|
1269
|
+
- Paintbrush
|
|
1270
|
+
- Palette
|
|
1271
|
+
- PanelLeft
|
|
1272
|
+
- PanelLeftClose
|
|
1273
|
+
- PanelLeftOpen
|
|
1274
|
+
- PanelRight
|
|
1275
|
+
- Paperclip
|
|
1276
|
+
- Pause
|
|
1277
|
+
- Paypal
|
|
1278
|
+
- Pdf
|
|
1279
|
+
- Pe
|
|
1280
|
+
- Pen
|
|
1281
|
+
- PenTool
|
|
1282
|
+
- Pencil
|
|
1283
|
+
- PencilCheck
|
|
1284
|
+
- Percent
|
|
1285
|
+
- Perl
|
|
1286
|
+
- Perplexity
|
|
1287
|
+
- Pertho
|
|
1288
|
+
- Phone
|
|
1289
|
+
- Photo
|
|
1290
|
+
- PhotoCircle
|
|
1291
|
+
- Php
|
|
1292
|
+
- Pi
|
|
1293
|
+
- PictureInPicture
|
|
1294
|
+
- PieChart
|
|
1295
|
+
- PiggyBank
|
|
1296
|
+
- Pin
|
|
1297
|
+
- Pipecat
|
|
1298
|
+
- Plane
|
|
1299
|
+
- Platformio
|
|
1300
|
+
- Play
|
|
1301
|
+
- PlayerSkipForward
|
|
1302
|
+
- PlayerTrackNext
|
|
1303
|
+
- PlayerTrackPrev
|
|
1304
|
+
- Playstation
|
|
1305
|
+
- Plus
|
|
1306
|
+
- Pnpm
|
|
1307
|
+
- Pointer
|
|
1308
|
+
- Popcorn
|
|
1309
|
+
- Porsche
|
|
1310
|
+
- Postcss
|
|
1311
|
+
- Power
|
|
1312
|
+
- Powershell
|
|
1313
|
+
- Prescription
|
|
1314
|
+
- Prettier
|
|
1315
|
+
- Printer
|
|
1316
|
+
- Prisma
|
|
1317
|
+
- Pug
|
|
1318
|
+
- PuzzlePiece
|
|
1319
|
+
- Python
|
|
1320
|
+
- Qoph
|
|
1321
|
+
- QrCode
|
|
1322
|
+
- Queen
|
|
1323
|
+
- QuestionMarkCircle
|
|
1324
|
+
- QuestionMarkMessageCircle
|
|
1325
|
+
- Quote
|
|
1326
|
+
- R
|
|
1327
|
+
- Radar
|
|
1328
|
+
- Radio
|
|
1329
|
+
- Radixui
|
|
1330
|
+
- Raido
|
|
1331
|
+
- RatingStar
|
|
1332
|
+
- Razer
|
|
1333
|
+
- React
|
|
1334
|
+
- ReactArea
|
|
1335
|
+
- ReactAria
|
|
1336
|
+
- ReactDayPicker
|
|
1337
|
+
- Readme
|
|
1338
|
+
- Reason
|
|
1339
|
+
- Redis
|
|
1340
|
+
- Redo
|
|
1341
|
+
- RefreshCcw
|
|
1342
|
+
- RefreshCw
|
|
1343
|
+
- Remark
|
|
1344
|
+
- Remix
|
|
1345
|
+
- Repeat
|
|
1346
|
+
- Replicate
|
|
1347
|
+
- Reply
|
|
1348
|
+
- ReplyAll
|
|
1349
|
+
- Res
|
|
1350
|
+
- Revai
|
|
1351
|
+
- Rho
|
|
1352
|
+
- Rive
|
|
1353
|
+
- RobotFace
|
|
1354
|
+
- Rocket
|
|
1355
|
+
- Rollupdotjs
|
|
1356
|
+
- RotateCcw
|
|
1357
|
+
- RotateCw
|
|
1358
|
+
- Ruby
|
|
1359
|
+
- Ruler
|
|
1360
|
+
- Rust
|
|
1361
|
+
- Sade
|
|
1362
|
+
- Samekh
|
|
1363
|
+
- San
|
|
1364
|
+
- Sanity
|
|
1365
|
+
- Sass
|
|
1366
|
+
- Save
|
|
1367
|
+
- Scala
|
|
1368
|
+
- Scale
|
|
1369
|
+
- Scan
|
|
1370
|
+
- ScanLine
|
|
1371
|
+
- Scissors
|
|
1372
|
+
- Search
|
|
1373
|
+
- SearchX
|
|
1374
|
+
- Selector
|
|
1375
|
+
- Send
|
|
1376
|
+
- Sentry
|
|
1377
|
+
- Server
|
|
1378
|
+
- Settings
|
|
1379
|
+
- Shadcnui
|
|
1380
|
+
- Share
|
|
1381
|
+
- Sharp
|
|
1382
|
+
- Shield
|
|
1383
|
+
- Ship
|
|
1384
|
+
- ShoppingBag
|
|
1385
|
+
- ShoppingCart
|
|
1386
|
+
- Sidebar
|
|
1387
|
+
- SidebarRight
|
|
1388
|
+
- Sigel
|
|
1389
|
+
- Sigma
|
|
1390
|
+
- SkipBack
|
|
1391
|
+
- SkipForward
|
|
1392
|
+
- Skype
|
|
1393
|
+
- Slack
|
|
1394
|
+
- SlidersHorizontal
|
|
1395
|
+
- Smartphone
|
|
1396
|
+
- Smile
|
|
1397
|
+
- SmilePlus
|
|
1398
|
+
- Solo
|
|
1399
|
+
- Sony
|
|
1400
|
+
- SortAscending
|
|
1401
|
+
- SortDescending
|
|
1402
|
+
- Sparkles
|
|
1403
|
+
- Split
|
|
1404
|
+
- Spotify
|
|
1405
|
+
- Square
|
|
1406
|
+
- SquareSplitHorizontal
|
|
1407
|
+
- SquareTerminal
|
|
1408
|
+
- Stan
|
|
1409
|
+
- Star
|
|
1410
|
+
- StarOff
|
|
1411
|
+
- Steam
|
|
1412
|
+
- Stopwatch
|
|
1413
|
+
- Store
|
|
1414
|
+
- Storybook
|
|
1415
|
+
- Strikethrough
|
|
1416
|
+
- Stripe
|
|
1417
|
+
- Stylelint
|
|
1418
|
+
- Sublimetext
|
|
1419
|
+
- Subscript
|
|
1420
|
+
- Subtitles
|
|
1421
|
+
- Sun
|
|
1422
|
+
- Superscript
|
|
1423
|
+
- Svelte
|
|
1424
|
+
- Svg
|
|
1425
|
+
- Swift
|
|
1426
|
+
- Switch
|
|
1427
|
+
- Table
|
|
1428
|
+
- TableColumn
|
|
1429
|
+
- TableRow
|
|
1430
|
+
- Tabler
|
|
1431
|
+
- Tablet
|
|
1432
|
+
- Tag
|
|
1433
|
+
- Tailwindcss
|
|
1434
|
+
- Tally1
|
|
1435
|
+
- Tally2
|
|
1436
|
+
- Tally3
|
|
1437
|
+
- Tally4
|
|
1438
|
+
- Tally5
|
|
1439
|
+
- Target
|
|
1440
|
+
- Tau
|
|
1441
|
+
- Terminal
|
|
1442
|
+
- Terminal2
|
|
1443
|
+
- Testinglibrary
|
|
1444
|
+
- TextCursorInput
|
|
1445
|
+
- TextDecrease
|
|
1446
|
+
- TextIncrease
|
|
1447
|
+
- TextSize
|
|
1448
|
+
- TextWrap
|
|
1449
|
+
- TextWrapColumn
|
|
1450
|
+
- TextWrapDisabled
|
|
1451
|
+
- Theodinproject
|
|
1452
|
+
- Theta
|
|
1453
|
+
- ThumbsDown
|
|
1454
|
+
- ThumbsUp
|
|
1455
|
+
- Ticket
|
|
1456
|
+
- Tilde
|
|
1457
|
+
- Timer
|
|
1458
|
+
- Tiwaz
|
|
1459
|
+
- TogetherAi
|
|
1460
|
+
- Toml
|
|
1461
|
+
- Trash
|
|
1462
|
+
- Trash2
|
|
1463
|
+
- TrendingDown
|
|
1464
|
+
- TrendingUp
|
|
1465
|
+
- Trophy
|
|
1466
|
+
- Truck
|
|
1467
|
+
- Tsnode
|
|
1468
|
+
- Tv
|
|
1469
|
+
- Twitch
|
|
1470
|
+
- Twitter
|
|
1471
|
+
- Type
|
|
1472
|
+
- Typescript
|
|
1473
|
+
- Underline
|
|
1474
|
+
- Undo
|
|
1475
|
+
- Upload
|
|
1476
|
+
- Upsilon
|
|
1477
|
+
- Uruz
|
|
1478
|
+
- User
|
|
1479
|
+
- UserCheck
|
|
1480
|
+
- UserCircle
|
|
1481
|
+
- UserDown
|
|
1482
|
+
- UserHeart
|
|
1483
|
+
- UserMinus
|
|
1484
|
+
- UserPlus
|
|
1485
|
+
- UserSettings
|
|
1486
|
+
- UserSquareRounded
|
|
1487
|
+
- UserStar
|
|
1488
|
+
- Users
|
|
1489
|
+
- UsersGroup
|
|
1490
|
+
- Utensils
|
|
1491
|
+
- UtensilsCrossed
|
|
1492
|
+
- Vercel
|
|
1493
|
+
- Vertex
|
|
1494
|
+
- Video
|
|
1495
|
+
- VideoOff
|
|
1496
|
+
- View360
|
|
1497
|
+
- Visa
|
|
1498
|
+
- VisaElectron
|
|
1499
|
+
- Vite
|
|
1500
|
+
- Volume
|
|
1501
|
+
- Volume2
|
|
1502
|
+
- VolumeDown
|
|
1503
|
+
- VolumeOff
|
|
1504
|
+
- VolumeUp
|
|
1505
|
+
- VolumeX
|
|
1506
|
+
- Vue
|
|
1507
|
+
- Vuedotjs
|
|
1508
|
+
- Vulknut
|
|
1509
|
+
- Walk
|
|
1510
|
+
- Wallet
|
|
1511
|
+
- Wallpaper
|
|
1512
|
+
- Wand
|
|
1513
|
+
- Waveform
|
|
1514
|
+
- Waves
|
|
1515
|
+
- Webassembly
|
|
1516
|
+
- WesternUnion
|
|
1517
|
+
- Wifi
|
|
1518
|
+
- Wireshark
|
|
1519
|
+
- World
|
|
1520
|
+
- Wrench
|
|
1521
|
+
- Wunjo
|
|
1522
|
+
- X
|
|
1523
|
+
- XAi
|
|
1524
|
+
- XCircle
|
|
1525
|
+
- Yaml
|
|
1526
|
+
- Yarn
|
|
1527
|
+
- Yodh
|
|
1528
|
+
- Youtube
|
|
1529
|
+
- Yr
|
|
1530
|
+
- Zap
|
|
1531
|
+
- Zeta
|
|
1532
|
+
- ZoomIn
|
|
1533
|
+
- ZoomOut
|
|
1534
|
+
|
|
1535
|
+
<!-- icon end -->
|
|
1536
|
+
|
|
1537
|
+
## Basic Usage
|
|
1538
|
+
|
|
1539
|
+
### Import specific icons
|
|
1540
|
+
|
|
1541
|
+
```tsx
|
|
1542
|
+
import { Home, User } from '@a5gard/baldr';
|
|
1543
|
+
|
|
1544
|
+
function App() {
|
|
1545
|
+
return (
|
|
1546
|
+
<div>
|
|
1547
|
+
<Home className="text-primary" size={24} />
|
|
1548
|
+
<User className="text-gray-500" size={32} strokeWidth={1.5} />
|
|
1549
|
+
</div>
|
|
1550
|
+
);
|
|
1551
|
+
}
|
|
1552
|
+
```
|
|
1553
|
+
|
|
1554
|
+
### Dynamic icon rendering
|
|
1555
|
+
|
|
1556
|
+
```tsx
|
|
1557
|
+
import { Icon, icons } from '@a5gard/baldr';
|
|
1558
|
+
|
|
1559
|
+
function DynamicIcon({ iconName }: { iconName: string }) {
|
|
1560
|
+
return <Icon name={iconName} icons={icons} className="text-blue-500" />;
|
|
1561
|
+
}
|
|
1562
|
+
```
|
|
1563
|
+
|
|
1564
|
+
## Props
|
|
1565
|
+
|
|
1566
|
+
All icons accept the following props:
|
|
1567
|
+
|
|
1568
|
+
- `size`: number | string (default: 24) - Size of the icon
|
|
1569
|
+
- `color`: string (default: 'currentColor') - Stroke color
|
|
1570
|
+
- `strokeWidth`: number | string (default: 2) - Width of the stroke
|
|
1571
|
+
- `className`: string - CSS classes (works with Tailwind!)
|
|
1572
|
+
- All standard SVG attributes
|
|
1573
|
+
|
|
1574
|
+
## Tailwind CSS Integration
|
|
1575
|
+
|
|
1576
|
+
Works seamlessly with Tailwind:
|
|
1577
|
+
|
|
1578
|
+
```tsx
|
|
1579
|
+
<Home className="w-6 h-6 text-blue-500 hover:text-blue-700" />
|
|
1580
|
+
<User className="text-primary dark:text-primary-dark" size={20} />
|
|
1581
|
+
```
|
|
1582
|
+
|
|
1583
|
+
|
|
1584
|
+
|
|
1585
|
+
|
|
1586
|
+
|
|
1587
|
+
|
|
1588
|
+
|
|
1589
|
+
|
|
1590
|
+
|
|
1591
|
+
|
|
1592
|
+
|
|
1593
|
+
|
|
1594
|
+
|
|
1595
|
+
|
|
1596
|
+
|
|
1597
|
+
|
|
1598
|
+
|
|
1599
|
+
|
|
1600
|
+
|
|
1601
|
+
|
|
1602
|
+
|
|
1603
|
+
|
|
1604
|
+
|
|
1605
|
+
|
|
1606
|
+
|
|
1607
|
+
|
|
1608
|
+
|
|
1609
|
+
|
|
1610
|
+
|
|
1611
|
+
|
|
1612
|
+
|