├── .gitignore
├── README.md
├── banner.png
├── mydjango01
├── .gitignore
├── .vscode
│ ├── extensions.json
│ ├── launch.json
│ └── settings.json
├── manage.py
└── mysite
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── mydjango02
├── main01.py
├── main02.py
├── melon-20230906.sqlite3
├── mydjango.py
└── templates
│ └── index.html
├── mydjango03-hottrack
├── hottrack
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── converters.py
│ ├── management
│ │ └── commands
│ │ │ └── load_melon_songs.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ └── hottrack
│ │ │ ├── _song.html
│ │ │ └── index.html
│ ├── tests.py
│ ├── urls.py
│ ├── utils
│ │ ├── cover.py
│ │ └── melon.py
│ └── views.py
├── manage.py
├── mysite
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── requirements.txt
├── mydjango04
├── accounts
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_superuser_profile.py
│ │ ├── 0003_profile_point_alter_profile_user.py
│ │ ├── 0004_user_follower_set_user_friend_set.py
│ │ ├── 0005_profile_photo.py
│ │ ├── 0006_profile_phone_number.py
│ │ ├── 0007_profile_birth_date_alter_profile_phone_number.py
│ │ ├── 0008_alter_profile_birth_date.py
│ │ ├── 0009_profile_location_point.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ └── accounts
│ │ │ ├── login_form.html
│ │ │ ├── password_change_form.html
│ │ │ ├── password_reset_email.html
│ │ │ ├── profile_form.html
│ │ │ ├── profile_wizard.html
│ │ │ └── signup_form.html
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── blog
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── management
│ │ └── commands
│ │ │ ├── load_blog_posts.py
│ │ │ └── load_blog_tags.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_post_author.py
│ │ ├── 0003_category_post_category.py
│ │ ├── 0004_post_slug.py
│ │ ├── 0005_post_unique_slug.py
│ │ ├── 0006_accesslog.py
│ │ ├── 0007_article.py
│ │ ├── 0008_review_alter_post_options_and_more.py
│ │ ├── 0009_tag.py
│ │ ├── 0010_alter_tag_options_tag_blog_tag_name_43b6ed_idx.py
│ │ ├── 0011_accesslog_created_at_accesslog_updated_at_and_more.py
│ │ ├── 0012_alter_post_options.py
│ │ ├── 0013_alter_review_table_comment.py
│ │ ├── 0014_remove_tag_blog_tag_name_43b6ed_idx_and_more.py
│ │ ├── 0015_remove_tag_blog_tag_name_unique_and_more.py
│ │ ├── 0016_course_student_enrollment.py
│ │ ├── 0017_enrollment_blog_enrollment_uniq.py
│ │ ├── 0018_comment_author_comment_parent_post_tag_set.py
│ │ ├── 0019_alter_post_author_alter_post_tag_set.py
│ │ ├── 0020_posttagrelation_and_more.py
│ │ ├── 0021_remove_post_tag_set.py
│ │ ├── 0022_post_tag_set.py
│ │ ├── 0023_alter_post_updated_at.py
│ │ ├── 0024_memo.py
│ │ ├── 0025_memo_author.py
│ │ ├── 0026_memogroup_remove_memo_author_memo_group.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ └── blog
│ │ │ ├── _tag_form.html
│ │ │ ├── _tag_list.html
│ │ │ ├── _tag_list_item.html
│ │ │ ├── base.html
│ │ │ ├── demo_form.html
│ │ │ ├── demo_form_field.html
│ │ │ ├── memo_form.html
│ │ │ ├── post_list.html
│ │ │ ├── post_new.html
│ │ │ ├── review_detail.html
│ │ │ ├── review_form.html
│ │ │ ├── review_list.html
│ │ │ ├── search.html
│ │ │ ├── tag_form.html
│ │ │ ├── tag_list.html
│ │ │ └── test.html
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── cafe
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── migrations
│ │ └── __init__.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── components
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── migrations
│ │ └── __init__.py
│ ├── models.py
│ ├── src-django-components
│ │ ├── hello_world
│ │ │ ├── hello_world.css
│ │ │ ├── hello_world.html
│ │ │ ├── hello_world.js
│ │ │ └── hello_world.py
│ │ ├── modal_form
│ │ │ ├── modal_form.html
│ │ │ ├── modal_form.js
│ │ │ └── modal_form.py
│ │ └── observe-node-insertion.js
│ ├── static
│ │ └── components-pure
│ │ │ ├── hello-world.css
│ │ │ └── hello-world.js
│ ├── templates
│ │ └── components-pure
│ │ │ └── hello-world.html
│ ├── tests.py
│ └── views.py
├── core
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── context_processors.py
│ ├── crispy_bootstrap5_ext
│ │ ├── layout.py
│ │ └── templates
│ │ │ └── core
│ │ │ └── crispy_bootstrap5_ext
│ │ │ └── layout
│ │ │ └── tab.html
│ ├── decorators.py
│ ├── forms
│ │ ├── fields.py
│ │ ├── renderers.py
│ │ └── widgets.py
│ ├── migrations
│ │ └── __init__.py
│ ├── model_fields.py
│ ├── models.py
│ ├── static
│ │ └── core
│ │ │ ├── forms
│ │ │ └── widgets
│ │ │ │ └── ios_form_switch.css
│ │ │ ├── star-rating-js
│ │ │ ├── 4.3.0
│ │ │ │ ├── star-rating.cjs.js
│ │ │ │ ├── star-rating.css
│ │ │ │ ├── star-rating.esm.js
│ │ │ │ ├── star-rating.esm.min.js
│ │ │ │ ├── star-rating.js
│ │ │ │ ├── star-rating.min.css
│ │ │ │ └── star-rating.min.js
│ │ │ └── img
│ │ │ │ ├── star-empty.svg
│ │ │ │ └── star-full.svg
│ │ │ └── toast-messages.js
│ ├── templates
│ │ └── core
│ │ │ ├── _messages_as_event.html
│ │ │ ├── _messages_as_toast.html
│ │ │ ├── forms
│ │ │ └── widgets
│ │ │ │ ├── counter_text.html
│ │ │ │ ├── date_picker.html
│ │ │ │ ├── horizontal_radio.html
│ │ │ │ ├── naver_map_point.html
│ │ │ │ ├── preview_clearable_file.html
│ │ │ │ └── star_rating_select.html
│ │ │ └── index.html
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── docker-compose.yml
├── hottrack
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── converters.py
│ ├── filters.py
│ ├── management
│ │ └── commands
│ │ │ └── load_melon_songs.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_comment.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ └── hottrack
│ │ │ ├── _pagination.html
│ │ │ ├── _song.html
│ │ │ ├── base.html
│ │ │ ├── index.html
│ │ │ ├── song_archive.html
│ │ │ ├── song_archive_day.html
│ │ │ ├── song_archive_month.html
│ │ │ ├── song_archive_week.html
│ │ │ ├── song_archive_year.html
│ │ │ └── song_detail.html
│ ├── tests.py
│ ├── urls.py
│ ├── utils
│ │ ├── cover.py
│ │ └── melon.py
│ └── views.py
├── html
│ ├── csrf_attack
│ │ └── csrf_attack_using_img.html
│ ├── form1.html
│ └── form2.html
├── manage.py
├── mysite
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── templates
│ │ └── root.html
│ ├── urls.py
│ └── wsgi.py
├── requirements.txt
├── school
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── fixtures.json
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ └── __init__.py
│ ├── models.py
│ ├── tests.py
│ └── views.py
├── shop
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── assets
│ │ └── zipcode_db
│ │ │ └── 20231205
│ │ │ └── 서울특별시.txt
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_insert_zipcode_data.py
│ │ ├── 0003_auto_20231214_0823.py
│ │ ├── 0004_auto_20231214_0823.py
│ │ ├── 0005_auto_20231214_0823.py
│ │ ├── 0006_auto_20231214_0823.py
│ │ ├── 0007_junioremployee_post.py
│ │ ├── 0008_product_alter_post_author_order.py
│ │ ├── 0009_event_ticket.py
│ │ └── __init__.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── weblog
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_comment_rating.py
│ │ ├── 0003_post_content_post_created_date_post_photo_and_more.py
│ │ ├── 0004_post_ip.py
│ │ ├── 0005_post_tag_set.py
│ │ ├── 0006_post_is_public.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ └── weblog
│ │ │ ├── index.html
│ │ │ ├── post_confirm_delete.html
│ │ │ ├── post_detail.html
│ │ │ └── post_form.html
│ ├── tests.py
│ ├── urls.py
│ └── views.py
└── zipcode_sample_download.py
├── mynextjs
├── .eslintrc.json
├── .gitignore
├── README.md
├── jsconfig.json
├── next.config.mjs
├── package-lock.json
├── package.json
├── pages
│ ├── _document.jsx
│ └── blog
│ │ └── index.js
├── postcss.config.mjs
├── public
│ ├── next.svg
│ └── vercel.svg
├── src
│ └── app
│ │ ├── favicon.ico
│ │ ├── globals.css
│ │ ├── layout.js
│ │ └── page.js
└── tailwind.config.js
├── myproj
├── .gitignore
├── accounts
│ ├── __init__.py
│ ├── admin.py
│ ├── api.py
│ ├── apps.py
│ ├── forms.py
│ ├── management
│ │ └── commands
│ │ │ └── test_send_welcome_email.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_profile.py
│ │ ├── 0003_user_following_user_set.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ ├── accounts
│ │ │ ├── base.html
│ │ │ ├── profile.html
│ │ │ └── welcome_email
│ │ │ │ ├── content.txt
│ │ │ │ └── subject.txt
│ │ └── test.html
│ ├── tests.py
│ ├── tests
│ │ ├── __init__.py
│ │ └── factories.py
│ ├── urls.py
│ ├── utils.py
│ └── views.py
├── api-test.http
├── blog
│ ├── __init__.py
│ ├── admin.py
│ ├── api.py
│ ├── apps.py
│ ├── forms.py
│ ├── management
│ │ └── commands
│ │ │ └── create_fake_posts.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_todo.py
│ │ └── __init__.py
│ ├── models.py
│ ├── serializers.py
│ ├── templates
│ │ └── blog
│ │ │ ├── _todo_form.html
│ │ │ └── index.html
│ ├── tests.py
│ ├── tests
│ │ ├── __init__.py
│ │ ├── factories.py
│ │ └── test_api.py
│ ├── urls.py
│ └── views.py
├── config
│ └── nginx.conf
├── core
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── decorators.py
│ ├── management
│ │ └── commands
│ │ │ └── react-components.py
│ ├── middleware.py
│ ├── migrations
│ │ └── __init__.py
│ ├── mixins.py
│ ├── models.py
│ ├── pagination.py
│ ├── permissions.py
│ ├── react_components_map.py
│ ├── renderers.py
│ ├── src-django-components
│ │ ├── __init__.py
│ │ ├── carousel
│ │ │ ├── carousel.css
│ │ │ ├── carousel.html
│ │ │ ├── carousel.js
│ │ │ └── carousel.py
│ │ ├── hello_world
│ │ │ ├── hello_world.html
│ │ │ └── hello_world.py
│ │ ├── image_overlay
│ │ │ ├── image_overlay.css
│ │ │ ├── image_overlay.html
│ │ │ └── image_overlay.py
│ │ ├── modal_form
│ │ │ ├── __init__.py
│ │ │ ├── modal_form.html
│ │ │ ├── modal_form.js
│ │ │ └── modal_form.py
│ │ └── react_dist
│ │ │ ├── hello_world.38d394c2.css
│ │ │ ├── hello_world.771e87f6.js
│ │ │ └── hello_world.html
│ ├── src-react-components
│ │ ├── package-lock.json
│ │ ├── package.json
│ │ └── src
│ │ │ ├── base.js
│ │ │ ├── hello_world.html
│ │ │ ├── hello_world.js
│ │ │ └── hello_world.module.css
│ ├── static
│ │ ├── bootstrap-icons
│ │ │ └── 1.11.3
│ │ │ │ ├── 0-circle-fill.svg
│ │ │ │ ├── 0-circle.svg
│ │ │ │ ├── 0-square-fill.svg
│ │ │ │ ├── 0-square.svg
│ │ │ │ ├── 1-circle-fill.svg
│ │ │ │ ├── 1-circle.svg
│ │ │ │ ├── 1-square-fill.svg
│ │ │ │ ├── 1-square.svg
│ │ │ │ ├── 123.svg
│ │ │ │ ├── 2-circle-fill.svg
│ │ │ │ ├── 2-circle.svg
│ │ │ │ ├── 2-square-fill.svg
│ │ │ │ ├── 2-square.svg
│ │ │ │ ├── 3-circle-fill.svg
│ │ │ │ ├── 3-circle.svg
│ │ │ │ ├── 3-square-fill.svg
│ │ │ │ ├── 3-square.svg
│ │ │ │ ├── 4-circle-fill.svg
│ │ │ │ ├── 4-circle.svg
│ │ │ │ ├── 4-square-fill.svg
│ │ │ │ ├── 4-square.svg
│ │ │ │ ├── 5-circle-fill.svg
│ │ │ │ ├── 5-circle.svg
│ │ │ │ ├── 5-square-fill.svg
│ │ │ │ ├── 5-square.svg
│ │ │ │ ├── 6-circle-fill.svg
│ │ │ │ ├── 6-circle.svg
│ │ │ │ ├── 6-square-fill.svg
│ │ │ │ ├── 6-square.svg
│ │ │ │ ├── 7-circle-fill.svg
│ │ │ │ ├── 7-circle.svg
│ │ │ │ ├── 7-square-fill.svg
│ │ │ │ ├── 7-square.svg
│ │ │ │ ├── 8-circle-fill.svg
│ │ │ │ ├── 8-circle.svg
│ │ │ │ ├── 8-square-fill.svg
│ │ │ │ ├── 8-square.svg
│ │ │ │ ├── 9-circle-fill.svg
│ │ │ │ ├── 9-circle.svg
│ │ │ │ ├── 9-square-fill.svg
│ │ │ │ ├── 9-square.svg
│ │ │ │ ├── activity.svg
│ │ │ │ ├── airplane-engines-fill.svg
│ │ │ │ ├── airplane-engines.svg
│ │ │ │ ├── airplane-fill.svg
│ │ │ │ ├── airplane.svg
│ │ │ │ ├── alarm-fill.svg
│ │ │ │ ├── alarm.svg
│ │ │ │ ├── alexa.svg
│ │ │ │ ├── align-bottom.svg
│ │ │ │ ├── align-center.svg
│ │ │ │ ├── align-end.svg
│ │ │ │ ├── align-middle.svg
│ │ │ │ ├── align-start.svg
│ │ │ │ ├── align-top.svg
│ │ │ │ ├── alipay.svg
│ │ │ │ ├── alphabet-uppercase.svg
│ │ │ │ ├── alphabet.svg
│ │ │ │ ├── alt.svg
│ │ │ │ ├── amazon.svg
│ │ │ │ ├── amd.svg
│ │ │ │ ├── android.svg
│ │ │ │ ├── android2.svg
│ │ │ │ ├── app-indicator.svg
│ │ │ │ ├── app.svg
│ │ │ │ ├── apple.svg
│ │ │ │ ├── archive-fill.svg
│ │ │ │ ├── archive.svg
│ │ │ │ ├── arrow-90deg-down.svg
│ │ │ │ ├── arrow-90deg-left.svg
│ │ │ │ ├── arrow-90deg-right.svg
│ │ │ │ ├── arrow-90deg-up.svg
│ │ │ │ ├── arrow-bar-down.svg
│ │ │ │ ├── arrow-bar-left.svg
│ │ │ │ ├── arrow-bar-right.svg
│ │ │ │ ├── arrow-bar-up.svg
│ │ │ │ ├── arrow-clockwise.svg
│ │ │ │ ├── arrow-counterclockwise.svg
│ │ │ │ ├── arrow-down-circle-fill.svg
│ │ │ │ ├── arrow-down-circle.svg
│ │ │ │ ├── arrow-down-left-circle-fill.svg
│ │ │ │ ├── arrow-down-left-circle.svg
│ │ │ │ ├── arrow-down-left-square-fill.svg
│ │ │ │ ├── arrow-down-left-square.svg
│ │ │ │ ├── arrow-down-left.svg
│ │ │ │ ├── arrow-down-right-circle-fill.svg
│ │ │ │ ├── arrow-down-right-circle.svg
│ │ │ │ ├── arrow-down-right-square-fill.svg
│ │ │ │ ├── arrow-down-right-square.svg
│ │ │ │ ├── arrow-down-right.svg
│ │ │ │ ├── arrow-down-short.svg
│ │ │ │ ├── arrow-down-square-fill.svg
│ │ │ │ ├── arrow-down-square.svg
│ │ │ │ ├── arrow-down-up.svg
│ │ │ │ ├── arrow-down.svg
│ │ │ │ ├── arrow-left-circle-fill.svg
│ │ │ │ ├── arrow-left-circle.svg
│ │ │ │ ├── arrow-left-right.svg
│ │ │ │ ├── arrow-left-short.svg
│ │ │ │ ├── arrow-left-square-fill.svg
│ │ │ │ ├── arrow-left-square.svg
│ │ │ │ ├── arrow-left.svg
│ │ │ │ ├── arrow-repeat.svg
│ │ │ │ ├── arrow-return-left.svg
│ │ │ │ ├── arrow-return-right.svg
│ │ │ │ ├── arrow-right-circle-fill.svg
│ │ │ │ ├── arrow-right-circle.svg
│ │ │ │ ├── arrow-right-short.svg
│ │ │ │ ├── arrow-right-square-fill.svg
│ │ │ │ ├── arrow-right-square.svg
│ │ │ │ ├── arrow-right.svg
│ │ │ │ ├── arrow-through-heart-fill.svg
│ │ │ │ ├── arrow-through-heart.svg
│ │ │ │ ├── arrow-up-circle-fill.svg
│ │ │ │ ├── arrow-up-circle.svg
│ │ │ │ ├── arrow-up-left-circle-fill.svg
│ │ │ │ ├── arrow-up-left-circle.svg
│ │ │ │ ├── arrow-up-left-square-fill.svg
│ │ │ │ ├── arrow-up-left-square.svg
│ │ │ │ ├── arrow-up-left.svg
│ │ │ │ ├── arrow-up-right-circle-fill.svg
│ │ │ │ ├── arrow-up-right-circle.svg
│ │ │ │ ├── arrow-up-right-square-fill.svg
│ │ │ │ ├── arrow-up-right-square.svg
│ │ │ │ ├── arrow-up-right.svg
│ │ │ │ ├── arrow-up-short.svg
│ │ │ │ ├── arrow-up-square-fill.svg
│ │ │ │ ├── arrow-up-square.svg
│ │ │ │ ├── arrow-up.svg
│ │ │ │ ├── arrows-angle-contract.svg
│ │ │ │ ├── arrows-angle-expand.svg
│ │ │ │ ├── arrows-collapse-vertical.svg
│ │ │ │ ├── arrows-collapse.svg
│ │ │ │ ├── arrows-expand-vertical.svg
│ │ │ │ ├── arrows-expand.svg
│ │ │ │ ├── arrows-fullscreen.svg
│ │ │ │ ├── arrows-move.svg
│ │ │ │ ├── arrows-vertical.svg
│ │ │ │ ├── arrows.svg
│ │ │ │ ├── aspect-ratio-fill.svg
│ │ │ │ ├── aspect-ratio.svg
│ │ │ │ ├── asterisk.svg
│ │ │ │ ├── at.svg
│ │ │ │ ├── award-fill.svg
│ │ │ │ ├── award.svg
│ │ │ │ ├── back.svg
│ │ │ │ ├── backpack-fill.svg
│ │ │ │ ├── backpack.svg
│ │ │ │ ├── backpack2-fill.svg
│ │ │ │ ├── backpack2.svg
│ │ │ │ ├── backpack3-fill.svg
│ │ │ │ ├── backpack3.svg
│ │ │ │ ├── backpack4-fill.svg
│ │ │ │ ├── backpack4.svg
│ │ │ │ ├── backspace-fill.svg
│ │ │ │ ├── backspace-reverse-fill.svg
│ │ │ │ ├── backspace-reverse.svg
│ │ │ │ ├── backspace.svg
│ │ │ │ ├── badge-3d-fill.svg
│ │ │ │ ├── badge-3d.svg
│ │ │ │ ├── badge-4k-fill.svg
│ │ │ │ ├── badge-4k.svg
│ │ │ │ ├── badge-8k-fill.svg
│ │ │ │ ├── badge-8k.svg
│ │ │ │ ├── badge-ad-fill.svg
│ │ │ │ ├── badge-ad.svg
│ │ │ │ ├── badge-ar-fill.svg
│ │ │ │ ├── badge-ar.svg
│ │ │ │ ├── badge-cc-fill.svg
│ │ │ │ ├── badge-cc.svg
│ │ │ │ ├── badge-hd-fill.svg
│ │ │ │ ├── badge-hd.svg
│ │ │ │ ├── badge-sd-fill.svg
│ │ │ │ ├── badge-sd.svg
│ │ │ │ ├── badge-tm-fill.svg
│ │ │ │ ├── badge-tm.svg
│ │ │ │ ├── badge-vo-fill.svg
│ │ │ │ ├── badge-vo.svg
│ │ │ │ ├── badge-vr-fill.svg
│ │ │ │ ├── badge-vr.svg
│ │ │ │ ├── badge-wc-fill.svg
│ │ │ │ ├── badge-wc.svg
│ │ │ │ ├── bag-check-fill.svg
│ │ │ │ ├── bag-check.svg
│ │ │ │ ├── bag-dash-fill.svg
│ │ │ │ ├── bag-dash.svg
│ │ │ │ ├── bag-fill.svg
│ │ │ │ ├── bag-heart-fill.svg
│ │ │ │ ├── bag-heart.svg
│ │ │ │ ├── bag-plus-fill.svg
│ │ │ │ ├── bag-plus.svg
│ │ │ │ ├── bag-x-fill.svg
│ │ │ │ ├── bag-x.svg
│ │ │ │ ├── bag.svg
│ │ │ │ ├── balloon-fill.svg
│ │ │ │ ├── balloon-heart-fill.svg
│ │ │ │ ├── balloon-heart.svg
│ │ │ │ ├── balloon.svg
│ │ │ │ ├── ban-fill.svg
│ │ │ │ ├── ban.svg
│ │ │ │ ├── bandaid-fill.svg
│ │ │ │ ├── bandaid.svg
│ │ │ │ ├── bank.svg
│ │ │ │ ├── bank2.svg
│ │ │ │ ├── bar-chart-fill.svg
│ │ │ │ ├── bar-chart-line-fill.svg
│ │ │ │ ├── bar-chart-line.svg
│ │ │ │ ├── bar-chart-steps.svg
│ │ │ │ ├── bar-chart.svg
│ │ │ │ ├── basket-fill.svg
│ │ │ │ ├── basket.svg
│ │ │ │ ├── basket2-fill.svg
│ │ │ │ ├── basket2.svg
│ │ │ │ ├── basket3-fill.svg
│ │ │ │ ├── basket3.svg
│ │ │ │ ├── battery-charging.svg
│ │ │ │ ├── battery-full.svg
│ │ │ │ ├── battery-half.svg
│ │ │ │ ├── battery.svg
│ │ │ │ ├── behance.svg
│ │ │ │ ├── bell-fill.svg
│ │ │ │ ├── bell-slash-fill.svg
│ │ │ │ ├── bell-slash.svg
│ │ │ │ ├── bell.svg
│ │ │ │ ├── bezier.svg
│ │ │ │ ├── bezier2.svg
│ │ │ │ ├── bicycle.svg
│ │ │ │ ├── bing.svg
│ │ │ │ ├── binoculars-fill.svg
│ │ │ │ ├── binoculars.svg
│ │ │ │ ├── blockquote-left.svg
│ │ │ │ ├── blockquote-right.svg
│ │ │ │ ├── bluetooth.svg
│ │ │ │ ├── body-text.svg
│ │ │ │ ├── book-fill.svg
│ │ │ │ ├── book-half.svg
│ │ │ │ ├── book.svg
│ │ │ │ ├── bookmark-check-fill.svg
│ │ │ │ ├── bookmark-check.svg
│ │ │ │ ├── bookmark-dash-fill.svg
│ │ │ │ ├── bookmark-dash.svg
│ │ │ │ ├── bookmark-fill.svg
│ │ │ │ ├── bookmark-heart-fill.svg
│ │ │ │ ├── bookmark-heart.svg
│ │ │ │ ├── bookmark-plus-fill.svg
│ │ │ │ ├── bookmark-plus.svg
│ │ │ │ ├── bookmark-star-fill.svg
│ │ │ │ ├── bookmark-star.svg
│ │ │ │ ├── bookmark-x-fill.svg
│ │ │ │ ├── bookmark-x.svg
│ │ │ │ ├── bookmark.svg
│ │ │ │ ├── bookmarks-fill.svg
│ │ │ │ ├── bookmarks.svg
│ │ │ │ ├── bookshelf.svg
│ │ │ │ ├── boombox-fill.svg
│ │ │ │ ├── boombox.svg
│ │ │ │ ├── bootstrap-fill.svg
│ │ │ │ ├── bootstrap-icons.svg
│ │ │ │ ├── bootstrap-reboot.svg
│ │ │ │ ├── bootstrap.svg
│ │ │ │ ├── border-all.svg
│ │ │ │ ├── border-bottom.svg
│ │ │ │ ├── border-center.svg
│ │ │ │ ├── border-inner.svg
│ │ │ │ ├── border-left.svg
│ │ │ │ ├── border-middle.svg
│ │ │ │ ├── border-outer.svg
│ │ │ │ ├── border-right.svg
│ │ │ │ ├── border-style.svg
│ │ │ │ ├── border-top.svg
│ │ │ │ ├── border-width.svg
│ │ │ │ ├── border.svg
│ │ │ │ ├── bounding-box-circles.svg
│ │ │ │ ├── bounding-box.svg
│ │ │ │ ├── box-arrow-down-left.svg
│ │ │ │ ├── box-arrow-down-right.svg
│ │ │ │ ├── box-arrow-down.svg
│ │ │ │ ├── box-arrow-in-down-left.svg
│ │ │ │ ├── box-arrow-in-down-right.svg
│ │ │ │ ├── box-arrow-in-down.svg
│ │ │ │ ├── box-arrow-in-left.svg
│ │ │ │ ├── box-arrow-in-right.svg
│ │ │ │ ├── box-arrow-in-up-left.svg
│ │ │ │ ├── box-arrow-in-up-right.svg
│ │ │ │ ├── box-arrow-in-up.svg
│ │ │ │ ├── box-arrow-left.svg
│ │ │ │ ├── box-arrow-right.svg
│ │ │ │ ├── box-arrow-up-left.svg
│ │ │ │ ├── box-arrow-up-right.svg
│ │ │ │ ├── box-arrow-up.svg
│ │ │ │ ├── box-fill.svg
│ │ │ │ ├── box-seam-fill.svg
│ │ │ │ ├── box-seam.svg
│ │ │ │ ├── box.svg
│ │ │ │ ├── box2-fill.svg
│ │ │ │ ├── box2-heart-fill.svg
│ │ │ │ ├── box2-heart.svg
│ │ │ │ ├── box2.svg
│ │ │ │ ├── boxes.svg
│ │ │ │ ├── braces-asterisk.svg
│ │ │ │ ├── braces.svg
│ │ │ │ ├── bricks.svg
│ │ │ │ ├── briefcase-fill.svg
│ │ │ │ ├── briefcase.svg
│ │ │ │ ├── brightness-alt-high-fill.svg
│ │ │ │ ├── brightness-alt-high.svg
│ │ │ │ ├── brightness-alt-low-fill.svg
│ │ │ │ ├── brightness-alt-low.svg
│ │ │ │ ├── brightness-high-fill.svg
│ │ │ │ ├── brightness-high.svg
│ │ │ │ ├── brightness-low-fill.svg
│ │ │ │ ├── brightness-low.svg
│ │ │ │ ├── brilliance.svg
│ │ │ │ ├── broadcast-pin.svg
│ │ │ │ ├── broadcast.svg
│ │ │ │ ├── browser-chrome.svg
│ │ │ │ ├── browser-edge.svg
│ │ │ │ ├── browser-firefox.svg
│ │ │ │ ├── browser-safari.svg
│ │ │ │ ├── brush-fill.svg
│ │ │ │ ├── brush.svg
│ │ │ │ ├── bucket-fill.svg
│ │ │ │ ├── bucket.svg
│ │ │ │ ├── bug-fill.svg
│ │ │ │ ├── bug.svg
│ │ │ │ ├── building-add.svg
│ │ │ │ ├── building-check.svg
│ │ │ │ ├── building-dash.svg
│ │ │ │ ├── building-down.svg
│ │ │ │ ├── building-exclamation.svg
│ │ │ │ ├── building-fill-add.svg
│ │ │ │ ├── building-fill-check.svg
│ │ │ │ ├── building-fill-dash.svg
│ │ │ │ ├── building-fill-down.svg
│ │ │ │ ├── building-fill-exclamation.svg
│ │ │ │ ├── building-fill-gear.svg
│ │ │ │ ├── building-fill-lock.svg
│ │ │ │ ├── building-fill-slash.svg
│ │ │ │ ├── building-fill-up.svg
│ │ │ │ ├── building-fill-x.svg
│ │ │ │ ├── building-fill.svg
│ │ │ │ ├── building-gear.svg
│ │ │ │ ├── building-lock.svg
│ │ │ │ ├── building-slash.svg
│ │ │ │ ├── building-up.svg
│ │ │ │ ├── building-x.svg
│ │ │ │ ├── building.svg
│ │ │ │ ├── buildings-fill.svg
│ │ │ │ ├── buildings.svg
│ │ │ │ ├── bullseye.svg
│ │ │ │ ├── bus-front-fill.svg
│ │ │ │ ├── bus-front.svg
│ │ │ │ ├── c-circle-fill.svg
│ │ │ │ ├── c-circle.svg
│ │ │ │ ├── c-square-fill.svg
│ │ │ │ ├── c-square.svg
│ │ │ │ ├── cake-fill.svg
│ │ │ │ ├── cake.svg
│ │ │ │ ├── cake2-fill.svg
│ │ │ │ ├── cake2.svg
│ │ │ │ ├── calculator-fill.svg
│ │ │ │ ├── calculator.svg
│ │ │ │ ├── calendar-check-fill.svg
│ │ │ │ ├── calendar-check.svg
│ │ │ │ ├── calendar-date-fill.svg
│ │ │ │ ├── calendar-date.svg
│ │ │ │ ├── calendar-day-fill.svg
│ │ │ │ ├── calendar-day.svg
│ │ │ │ ├── calendar-event-fill.svg
│ │ │ │ ├── calendar-event.svg
│ │ │ │ ├── calendar-fill.svg
│ │ │ │ ├── calendar-heart-fill.svg
│ │ │ │ ├── calendar-heart.svg
│ │ │ │ ├── calendar-minus-fill.svg
│ │ │ │ ├── calendar-minus.svg
│ │ │ │ ├── calendar-month-fill.svg
│ │ │ │ ├── calendar-month.svg
│ │ │ │ ├── calendar-plus-fill.svg
│ │ │ │ ├── calendar-plus.svg
│ │ │ │ ├── calendar-range-fill.svg
│ │ │ │ ├── calendar-range.svg
│ │ │ │ ├── calendar-week-fill.svg
│ │ │ │ ├── calendar-week.svg
│ │ │ │ ├── calendar-x-fill.svg
│ │ │ │ ├── calendar-x.svg
│ │ │ │ ├── calendar.svg
│ │ │ │ ├── calendar2-check-fill.svg
│ │ │ │ ├── calendar2-check.svg
│ │ │ │ ├── calendar2-date-fill.svg
│ │ │ │ ├── calendar2-date.svg
│ │ │ │ ├── calendar2-day-fill.svg
│ │ │ │ ├── calendar2-day.svg
│ │ │ │ ├── calendar2-event-fill.svg
│ │ │ │ ├── calendar2-event.svg
│ │ │ │ ├── calendar2-fill.svg
│ │ │ │ ├── calendar2-heart-fill.svg
│ │ │ │ ├── calendar2-heart.svg
│ │ │ │ ├── calendar2-minus-fill.svg
│ │ │ │ ├── calendar2-minus.svg
│ │ │ │ ├── calendar2-month-fill.svg
│ │ │ │ ├── calendar2-month.svg
│ │ │ │ ├── calendar2-plus-fill.svg
│ │ │ │ ├── calendar2-plus.svg
│ │ │ │ ├── calendar2-range-fill.svg
│ │ │ │ ├── calendar2-range.svg
│ │ │ │ ├── calendar2-week-fill.svg
│ │ │ │ ├── calendar2-week.svg
│ │ │ │ ├── calendar2-x-fill.svg
│ │ │ │ ├── calendar2-x.svg
│ │ │ │ ├── calendar2.svg
│ │ │ │ ├── calendar3-event-fill.svg
│ │ │ │ ├── calendar3-event.svg
│ │ │ │ ├── calendar3-fill.svg
│ │ │ │ ├── calendar3-range-fill.svg
│ │ │ │ ├── calendar3-range.svg
│ │ │ │ ├── calendar3-week-fill.svg
│ │ │ │ ├── calendar3-week.svg
│ │ │ │ ├── calendar3.svg
│ │ │ │ ├── calendar4-event.svg
│ │ │ │ ├── calendar4-range.svg
│ │ │ │ ├── calendar4-week.svg
│ │ │ │ ├── calendar4.svg
│ │ │ │ ├── camera-fill.svg
│ │ │ │ ├── camera-reels-fill.svg
│ │ │ │ ├── camera-reels.svg
│ │ │ │ ├── camera-video-fill.svg
│ │ │ │ ├── camera-video-off-fill.svg
│ │ │ │ ├── camera-video-off.svg
│ │ │ │ ├── camera-video.svg
│ │ │ │ ├── camera.svg
│ │ │ │ ├── camera2.svg
│ │ │ │ ├── capslock-fill.svg
│ │ │ │ ├── capslock.svg
│ │ │ │ ├── capsule-pill.svg
│ │ │ │ ├── capsule.svg
│ │ │ │ ├── car-front-fill.svg
│ │ │ │ ├── car-front.svg
│ │ │ │ ├── card-checklist.svg
│ │ │ │ ├── card-heading.svg
│ │ │ │ ├── card-image.svg
│ │ │ │ ├── card-list.svg
│ │ │ │ ├── card-text.svg
│ │ │ │ ├── caret-down-fill.svg
│ │ │ │ ├── caret-down-square-fill.svg
│ │ │ │ ├── caret-down-square.svg
│ │ │ │ ├── caret-down.svg
│ │ │ │ ├── caret-left-fill.svg
│ │ │ │ ├── caret-left-square-fill.svg
│ │ │ │ ├── caret-left-square.svg
│ │ │ │ ├── caret-left.svg
│ │ │ │ ├── caret-right-fill.svg
│ │ │ │ ├── caret-right-square-fill.svg
│ │ │ │ ├── caret-right-square.svg
│ │ │ │ ├── caret-right.svg
│ │ │ │ ├── caret-up-fill.svg
│ │ │ │ ├── caret-up-square-fill.svg
│ │ │ │ ├── caret-up-square.svg
│ │ │ │ ├── caret-up.svg
│ │ │ │ ├── cart-check-fill.svg
│ │ │ │ ├── cart-check.svg
│ │ │ │ ├── cart-dash-fill.svg
│ │ │ │ ├── cart-dash.svg
│ │ │ │ ├── cart-fill.svg
│ │ │ │ ├── cart-plus-fill.svg
│ │ │ │ ├── cart-plus.svg
│ │ │ │ ├── cart-x-fill.svg
│ │ │ │ ├── cart-x.svg
│ │ │ │ ├── cart.svg
│ │ │ │ ├── cart2.svg
│ │ │ │ ├── cart3.svg
│ │ │ │ ├── cart4.svg
│ │ │ │ ├── cash-coin.svg
│ │ │ │ ├── cash-stack.svg
│ │ │ │ ├── cash.svg
│ │ │ │ ├── cassette-fill.svg
│ │ │ │ ├── cassette.svg
│ │ │ │ ├── cast.svg
│ │ │ │ ├── cc-circle-fill.svg
│ │ │ │ ├── cc-circle.svg
│ │ │ │ ├── cc-square-fill.svg
│ │ │ │ ├── cc-square.svg
│ │ │ │ ├── chat-dots-fill.svg
│ │ │ │ ├── chat-dots.svg
│ │ │ │ ├── chat-fill.svg
│ │ │ │ ├── chat-heart-fill.svg
│ │ │ │ ├── chat-heart.svg
│ │ │ │ ├── chat-left-dots-fill.svg
│ │ │ │ ├── chat-left-dots.svg
│ │ │ │ ├── chat-left-fill.svg
│ │ │ │ ├── chat-left-heart-fill.svg
│ │ │ │ ├── chat-left-heart.svg
│ │ │ │ ├── chat-left-quote-fill.svg
│ │ │ │ ├── chat-left-quote.svg
│ │ │ │ ├── chat-left-text-fill.svg
│ │ │ │ ├── chat-left-text.svg
│ │ │ │ ├── chat-left.svg
│ │ │ │ ├── chat-quote-fill.svg
│ │ │ │ ├── chat-quote.svg
│ │ │ │ ├── chat-right-dots-fill.svg
│ │ │ │ ├── chat-right-dots.svg
│ │ │ │ ├── chat-right-fill.svg
│ │ │ │ ├── chat-right-heart-fill.svg
│ │ │ │ ├── chat-right-heart.svg
│ │ │ │ ├── chat-right-quote-fill.svg
│ │ │ │ ├── chat-right-quote.svg
│ │ │ │ ├── chat-right-text-fill.svg
│ │ │ │ ├── chat-right-text.svg
│ │ │ │ ├── chat-right.svg
│ │ │ │ ├── chat-square-dots-fill.svg
│ │ │ │ ├── chat-square-dots.svg
│ │ │ │ ├── chat-square-fill.svg
│ │ │ │ ├── chat-square-heart-fill.svg
│ │ │ │ ├── chat-square-heart.svg
│ │ │ │ ├── chat-square-quote-fill.svg
│ │ │ │ ├── chat-square-quote.svg
│ │ │ │ ├── chat-square-text-fill.svg
│ │ │ │ ├── chat-square-text.svg
│ │ │ │ ├── chat-square.svg
│ │ │ │ ├── chat-text-fill.svg
│ │ │ │ ├── chat-text.svg
│ │ │ │ ├── chat.svg
│ │ │ │ ├── check-all.svg
│ │ │ │ ├── check-circle-fill.svg
│ │ │ │ ├── check-circle.svg
│ │ │ │ ├── check-lg.svg
│ │ │ │ ├── check-square-fill.svg
│ │ │ │ ├── check-square.svg
│ │ │ │ ├── check.svg
│ │ │ │ ├── check2-all.svg
│ │ │ │ ├── check2-circle.svg
│ │ │ │ ├── check2-square.svg
│ │ │ │ ├── check2.svg
│ │ │ │ ├── chevron-bar-contract.svg
│ │ │ │ ├── chevron-bar-down.svg
│ │ │ │ ├── chevron-bar-expand.svg
│ │ │ │ ├── chevron-bar-left.svg
│ │ │ │ ├── chevron-bar-right.svg
│ │ │ │ ├── chevron-bar-up.svg
│ │ │ │ ├── chevron-compact-down.svg
│ │ │ │ ├── chevron-compact-left.svg
│ │ │ │ ├── chevron-compact-right.svg
│ │ │ │ ├── chevron-compact-up.svg
│ │ │ │ ├── chevron-contract.svg
│ │ │ │ ├── chevron-double-down.svg
│ │ │ │ ├── chevron-double-left.svg
│ │ │ │ ├── chevron-double-right.svg
│ │ │ │ ├── chevron-double-up.svg
│ │ │ │ ├── chevron-down.svg
│ │ │ │ ├── chevron-expand.svg
│ │ │ │ ├── chevron-left.svg
│ │ │ │ ├── chevron-right.svg
│ │ │ │ ├── chevron-up.svg
│ │ │ │ ├── circle-fill.svg
│ │ │ │ ├── circle-half.svg
│ │ │ │ ├── circle-square.svg
│ │ │ │ ├── circle.svg
│ │ │ │ ├── clipboard-check-fill.svg
│ │ │ │ ├── clipboard-check.svg
│ │ │ │ ├── clipboard-data-fill.svg
│ │ │ │ ├── clipboard-data.svg
│ │ │ │ ├── clipboard-fill.svg
│ │ │ │ ├── clipboard-heart-fill.svg
│ │ │ │ ├── clipboard-heart.svg
│ │ │ │ ├── clipboard-minus-fill.svg
│ │ │ │ ├── clipboard-minus.svg
│ │ │ │ ├── clipboard-plus-fill.svg
│ │ │ │ ├── clipboard-plus.svg
│ │ │ │ ├── clipboard-pulse.svg
│ │ │ │ ├── clipboard-x-fill.svg
│ │ │ │ ├── clipboard-x.svg
│ │ │ │ ├── clipboard.svg
│ │ │ │ ├── clipboard2-check-fill.svg
│ │ │ │ ├── clipboard2-check.svg
│ │ │ │ ├── clipboard2-data-fill.svg
│ │ │ │ ├── clipboard2-data.svg
│ │ │ │ ├── clipboard2-fill.svg
│ │ │ │ ├── clipboard2-heart-fill.svg
│ │ │ │ ├── clipboard2-heart.svg
│ │ │ │ ├── clipboard2-minus-fill.svg
│ │ │ │ ├── clipboard2-minus.svg
│ │ │ │ ├── clipboard2-plus-fill.svg
│ │ │ │ ├── clipboard2-plus.svg
│ │ │ │ ├── clipboard2-pulse-fill.svg
│ │ │ │ ├── clipboard2-pulse.svg
│ │ │ │ ├── clipboard2-x-fill.svg
│ │ │ │ ├── clipboard2-x.svg
│ │ │ │ ├── clipboard2.svg
│ │ │ │ ├── clock-fill.svg
│ │ │ │ ├── clock-history.svg
│ │ │ │ ├── clock.svg
│ │ │ │ ├── cloud-arrow-down-fill.svg
│ │ │ │ ├── cloud-arrow-down.svg
│ │ │ │ ├── cloud-arrow-up-fill.svg
│ │ │ │ ├── cloud-arrow-up.svg
│ │ │ │ ├── cloud-check-fill.svg
│ │ │ │ ├── cloud-check.svg
│ │ │ │ ├── cloud-download-fill.svg
│ │ │ │ ├── cloud-download.svg
│ │ │ │ ├── cloud-drizzle-fill.svg
│ │ │ │ ├── cloud-drizzle.svg
│ │ │ │ ├── cloud-fill.svg
│ │ │ │ ├── cloud-fog-fill.svg
│ │ │ │ ├── cloud-fog.svg
│ │ │ │ ├── cloud-fog2-fill.svg
│ │ │ │ ├── cloud-fog2.svg
│ │ │ │ ├── cloud-hail-fill.svg
│ │ │ │ ├── cloud-hail.svg
│ │ │ │ ├── cloud-haze-fill.svg
│ │ │ │ ├── cloud-haze.svg
│ │ │ │ ├── cloud-haze2-fill.svg
│ │ │ │ ├── cloud-haze2.svg
│ │ │ │ ├── cloud-lightning-fill.svg
│ │ │ │ ├── cloud-lightning-rain-fill.svg
│ │ │ │ ├── cloud-lightning-rain.svg
│ │ │ │ ├── cloud-lightning.svg
│ │ │ │ ├── cloud-minus-fill.svg
│ │ │ │ ├── cloud-minus.svg
│ │ │ │ ├── cloud-moon-fill.svg
│ │ │ │ ├── cloud-moon.svg
│ │ │ │ ├── cloud-plus-fill.svg
│ │ │ │ ├── cloud-plus.svg
│ │ │ │ ├── cloud-rain-fill.svg
│ │ │ │ ├── cloud-rain-heavy-fill.svg
│ │ │ │ ├── cloud-rain-heavy.svg
│ │ │ │ ├── cloud-rain.svg
│ │ │ │ ├── cloud-slash-fill.svg
│ │ │ │ ├── cloud-slash.svg
│ │ │ │ ├── cloud-sleet-fill.svg
│ │ │ │ ├── cloud-sleet.svg
│ │ │ │ ├── cloud-snow-fill.svg
│ │ │ │ ├── cloud-snow.svg
│ │ │ │ ├── cloud-sun-fill.svg
│ │ │ │ ├── cloud-sun.svg
│ │ │ │ ├── cloud-upload-fill.svg
│ │ │ │ ├── cloud-upload.svg
│ │ │ │ ├── cloud.svg
│ │ │ │ ├── clouds-fill.svg
│ │ │ │ ├── clouds.svg
│ │ │ │ ├── cloudy-fill.svg
│ │ │ │ ├── cloudy.svg
│ │ │ │ ├── code-slash.svg
│ │ │ │ ├── code-square.svg
│ │ │ │ ├── code.svg
│ │ │ │ ├── coin.svg
│ │ │ │ ├── collection-fill.svg
│ │ │ │ ├── collection-play-fill.svg
│ │ │ │ ├── collection-play.svg
│ │ │ │ ├── collection.svg
│ │ │ │ ├── columns-gap.svg
│ │ │ │ ├── columns.svg
│ │ │ │ ├── command.svg
│ │ │ │ ├── compass-fill.svg
│ │ │ │ ├── compass.svg
│ │ │ │ ├── cone-striped.svg
│ │ │ │ ├── cone.svg
│ │ │ │ ├── controller.svg
│ │ │ │ ├── cookie.svg
│ │ │ │ ├── copy.svg
│ │ │ │ ├── cpu-fill.svg
│ │ │ │ ├── cpu.svg
│ │ │ │ ├── credit-card-2-back-fill.svg
│ │ │ │ ├── credit-card-2-back.svg
│ │ │ │ ├── credit-card-2-front-fill.svg
│ │ │ │ ├── credit-card-2-front.svg
│ │ │ │ ├── credit-card-fill.svg
│ │ │ │ ├── credit-card.svg
│ │ │ │ ├── crop.svg
│ │ │ │ ├── crosshair.svg
│ │ │ │ ├── crosshair2.svg
│ │ │ │ ├── cup-fill.svg
│ │ │ │ ├── cup-hot-fill.svg
│ │ │ │ ├── cup-hot.svg
│ │ │ │ ├── cup-straw.svg
│ │ │ │ ├── cup.svg
│ │ │ │ ├── currency-bitcoin.svg
│ │ │ │ ├── currency-dollar.svg
│ │ │ │ ├── currency-euro.svg
│ │ │ │ ├── currency-exchange.svg
│ │ │ │ ├── currency-pound.svg
│ │ │ │ ├── currency-rupee.svg
│ │ │ │ ├── currency-yen.svg
│ │ │ │ ├── cursor-fill.svg
│ │ │ │ ├── cursor-text.svg
│ │ │ │ ├── cursor.svg
│ │ │ │ ├── dash-circle-dotted.svg
│ │ │ │ ├── dash-circle-fill.svg
│ │ │ │ ├── dash-circle.svg
│ │ │ │ ├── dash-lg.svg
│ │ │ │ ├── dash-square-dotted.svg
│ │ │ │ ├── dash-square-fill.svg
│ │ │ │ ├── dash-square.svg
│ │ │ │ ├── dash.svg
│ │ │ │ ├── database-add.svg
│ │ │ │ ├── database-check.svg
│ │ │ │ ├── database-dash.svg
│ │ │ │ ├── database-down.svg
│ │ │ │ ├── database-exclamation.svg
│ │ │ │ ├── database-fill-add.svg
│ │ │ │ ├── database-fill-check.svg
│ │ │ │ ├── database-fill-dash.svg
│ │ │ │ ├── database-fill-down.svg
│ │ │ │ ├── database-fill-exclamation.svg
│ │ │ │ ├── database-fill-gear.svg
│ │ │ │ ├── database-fill-lock.svg
│ │ │ │ ├── database-fill-slash.svg
│ │ │ │ ├── database-fill-up.svg
│ │ │ │ ├── database-fill-x.svg
│ │ │ │ ├── database-fill.svg
│ │ │ │ ├── database-gear.svg
│ │ │ │ ├── database-lock.svg
│ │ │ │ ├── database-slash.svg
│ │ │ │ ├── database-up.svg
│ │ │ │ ├── database-x.svg
│ │ │ │ ├── database.svg
│ │ │ │ ├── device-hdd-fill.svg
│ │ │ │ ├── device-hdd.svg
│ │ │ │ ├── device-ssd-fill.svg
│ │ │ │ ├── device-ssd.svg
│ │ │ │ ├── diagram-2-fill.svg
│ │ │ │ ├── diagram-2.svg
│ │ │ │ ├── diagram-3-fill.svg
│ │ │ │ ├── diagram-3.svg
│ │ │ │ ├── diamond-fill.svg
│ │ │ │ ├── diamond-half.svg
│ │ │ │ ├── diamond.svg
│ │ │ │ ├── dice-1-fill.svg
│ │ │ │ ├── dice-1.svg
│ │ │ │ ├── dice-2-fill.svg
│ │ │ │ ├── dice-2.svg
│ │ │ │ ├── dice-3-fill.svg
│ │ │ │ ├── dice-3.svg
│ │ │ │ ├── dice-4-fill.svg
│ │ │ │ ├── dice-4.svg
│ │ │ │ ├── dice-5-fill.svg
│ │ │ │ ├── dice-5.svg
│ │ │ │ ├── dice-6-fill.svg
│ │ │ │ ├── dice-6.svg
│ │ │ │ ├── disc-fill.svg
│ │ │ │ ├── disc.svg
│ │ │ │ ├── discord.svg
│ │ │ │ ├── display-fill.svg
│ │ │ │ ├── display.svg
│ │ │ │ ├── displayport-fill.svg
│ │ │ │ ├── displayport.svg
│ │ │ │ ├── distribute-horizontal.svg
│ │ │ │ ├── distribute-vertical.svg
│ │ │ │ ├── door-closed-fill.svg
│ │ │ │ ├── door-closed.svg
│ │ │ │ ├── door-open-fill.svg
│ │ │ │ ├── door-open.svg
│ │ │ │ ├── dot.svg
│ │ │ │ ├── download.svg
│ │ │ │ ├── dpad-fill.svg
│ │ │ │ ├── dpad.svg
│ │ │ │ ├── dribbble.svg
│ │ │ │ ├── dropbox.svg
│ │ │ │ ├── droplet-fill.svg
│ │ │ │ ├── droplet-half.svg
│ │ │ │ ├── droplet.svg
│ │ │ │ ├── duffle-fill.svg
│ │ │ │ ├── duffle.svg
│ │ │ │ ├── ear-fill.svg
│ │ │ │ ├── ear.svg
│ │ │ │ ├── earbuds.svg
│ │ │ │ ├── easel-fill.svg
│ │ │ │ ├── easel.svg
│ │ │ │ ├── easel2-fill.svg
│ │ │ │ ├── easel2.svg
│ │ │ │ ├── easel3-fill.svg
│ │ │ │ ├── easel3.svg
│ │ │ │ ├── egg-fill.svg
│ │ │ │ ├── egg-fried.svg
│ │ │ │ ├── egg.svg
│ │ │ │ ├── eject-fill.svg
│ │ │ │ ├── eject.svg
│ │ │ │ ├── emoji-angry-fill.svg
│ │ │ │ ├── emoji-angry.svg
│ │ │ │ ├── emoji-astonished-fill.svg
│ │ │ │ ├── emoji-astonished.svg
│ │ │ │ ├── emoji-dizzy-fill.svg
│ │ │ │ ├── emoji-dizzy.svg
│ │ │ │ ├── emoji-expressionless-fill.svg
│ │ │ │ ├── emoji-expressionless.svg
│ │ │ │ ├── emoji-frown-fill.svg
│ │ │ │ ├── emoji-frown.svg
│ │ │ │ ├── emoji-grimace-fill.svg
│ │ │ │ ├── emoji-grimace.svg
│ │ │ │ ├── emoji-grin-fill.svg
│ │ │ │ ├── emoji-grin.svg
│ │ │ │ ├── emoji-heart-eyes-fill.svg
│ │ │ │ ├── emoji-heart-eyes.svg
│ │ │ │ ├── emoji-kiss-fill.svg
│ │ │ │ ├── emoji-kiss.svg
│ │ │ │ ├── emoji-laughing-fill.svg
│ │ │ │ ├── emoji-laughing.svg
│ │ │ │ ├── emoji-neutral-fill.svg
│ │ │ │ ├── emoji-neutral.svg
│ │ │ │ ├── emoji-smile-fill.svg
│ │ │ │ ├── emoji-smile-upside-down-fill.svg
│ │ │ │ ├── emoji-smile-upside-down.svg
│ │ │ │ ├── emoji-smile.svg
│ │ │ │ ├── emoji-sunglasses-fill.svg
│ │ │ │ ├── emoji-sunglasses.svg
│ │ │ │ ├── emoji-surprise-fill.svg
│ │ │ │ ├── emoji-surprise.svg
│ │ │ │ ├── emoji-tear-fill.svg
│ │ │ │ ├── emoji-tear.svg
│ │ │ │ ├── emoji-wink-fill.svg
│ │ │ │ ├── emoji-wink.svg
│ │ │ │ ├── envelope-arrow-down-fill.svg
│ │ │ │ ├── envelope-arrow-down.svg
│ │ │ │ ├── envelope-arrow-up-fill.svg
│ │ │ │ ├── envelope-arrow-up.svg
│ │ │ │ ├── envelope-at-fill.svg
│ │ │ │ ├── envelope-at.svg
│ │ │ │ ├── envelope-check-fill.svg
│ │ │ │ ├── envelope-check.svg
│ │ │ │ ├── envelope-dash-fill.svg
│ │ │ │ ├── envelope-dash.svg
│ │ │ │ ├── envelope-exclamation-fill.svg
│ │ │ │ ├── envelope-exclamation.svg
│ │ │ │ ├── envelope-fill.svg
│ │ │ │ ├── envelope-heart-fill.svg
│ │ │ │ ├── envelope-heart.svg
│ │ │ │ ├── envelope-open-fill.svg
│ │ │ │ ├── envelope-open-heart-fill.svg
│ │ │ │ ├── envelope-open-heart.svg
│ │ │ │ ├── envelope-open.svg
│ │ │ │ ├── envelope-paper-fill.svg
│ │ │ │ ├── envelope-paper-heart-fill.svg
│ │ │ │ ├── envelope-paper-heart.svg
│ │ │ │ ├── envelope-paper.svg
│ │ │ │ ├── envelope-plus-fill.svg
│ │ │ │ ├── envelope-plus.svg
│ │ │ │ ├── envelope-slash-fill.svg
│ │ │ │ ├── envelope-slash.svg
│ │ │ │ ├── envelope-x-fill.svg
│ │ │ │ ├── envelope-x.svg
│ │ │ │ ├── envelope.svg
│ │ │ │ ├── eraser-fill.svg
│ │ │ │ ├── eraser.svg
│ │ │ │ ├── escape.svg
│ │ │ │ ├── ethernet.svg
│ │ │ │ ├── ev-front-fill.svg
│ │ │ │ ├── ev-front.svg
│ │ │ │ ├── ev-station-fill.svg
│ │ │ │ ├── ev-station.svg
│ │ │ │ ├── exclamation-circle-fill.svg
│ │ │ │ ├── exclamation-circle.svg
│ │ │ │ ├── exclamation-diamond-fill.svg
│ │ │ │ ├── exclamation-diamond.svg
│ │ │ │ ├── exclamation-lg.svg
│ │ │ │ ├── exclamation-octagon-fill.svg
│ │ │ │ ├── exclamation-octagon.svg
│ │ │ │ ├── exclamation-square-fill.svg
│ │ │ │ ├── exclamation-square.svg
│ │ │ │ ├── exclamation-triangle-fill.svg
│ │ │ │ ├── exclamation-triangle.svg
│ │ │ │ ├── exclamation.svg
│ │ │ │ ├── exclude.svg
│ │ │ │ ├── explicit-fill.svg
│ │ │ │ ├── explicit.svg
│ │ │ │ ├── exposure.svg
│ │ │ │ ├── eye-fill.svg
│ │ │ │ ├── eye-slash-fill.svg
│ │ │ │ ├── eye-slash.svg
│ │ │ │ ├── eye.svg
│ │ │ │ ├── eyedropper.svg
│ │ │ │ ├── eyeglasses.svg
│ │ │ │ ├── facebook.svg
│ │ │ │ ├── fan.svg
│ │ │ │ ├── fast-forward-btn-fill.svg
│ │ │ │ ├── fast-forward-btn.svg
│ │ │ │ ├── fast-forward-circle-fill.svg
│ │ │ │ ├── fast-forward-circle.svg
│ │ │ │ ├── fast-forward-fill.svg
│ │ │ │ ├── fast-forward.svg
│ │ │ │ ├── feather.svg
│ │ │ │ ├── feather2.svg
│ │ │ │ ├── file-arrow-down-fill.svg
│ │ │ │ ├── file-arrow-down.svg
│ │ │ │ ├── file-arrow-up-fill.svg
│ │ │ │ ├── file-arrow-up.svg
│ │ │ │ ├── file-bar-graph-fill.svg
│ │ │ │ ├── file-bar-graph.svg
│ │ │ │ ├── file-binary-fill.svg
│ │ │ │ ├── file-binary.svg
│ │ │ │ ├── file-break-fill.svg
│ │ │ │ ├── file-break.svg
│ │ │ │ ├── file-check-fill.svg
│ │ │ │ ├── file-check.svg
│ │ │ │ ├── file-code-fill.svg
│ │ │ │ ├── file-code.svg
│ │ │ │ ├── file-diff-fill.svg
│ │ │ │ ├── file-diff.svg
│ │ │ │ ├── file-earmark-arrow-down-fill.svg
│ │ │ │ ├── file-earmark-arrow-down.svg
│ │ │ │ ├── file-earmark-arrow-up-fill.svg
│ │ │ │ ├── file-earmark-arrow-up.svg
│ │ │ │ ├── file-earmark-bar-graph-fill.svg
│ │ │ │ ├── file-earmark-bar-graph.svg
│ │ │ │ ├── file-earmark-binary-fill.svg
│ │ │ │ ├── file-earmark-binary.svg
│ │ │ │ ├── file-earmark-break-fill.svg
│ │ │ │ ├── file-earmark-break.svg
│ │ │ │ ├── file-earmark-check-fill.svg
│ │ │ │ ├── file-earmark-check.svg
│ │ │ │ ├── file-earmark-code-fill.svg
│ │ │ │ ├── file-earmark-code.svg
│ │ │ │ ├── file-earmark-diff-fill.svg
│ │ │ │ ├── file-earmark-diff.svg
│ │ │ │ ├── file-earmark-easel-fill.svg
│ │ │ │ ├── file-earmark-easel.svg
│ │ │ │ ├── file-earmark-excel-fill.svg
│ │ │ │ ├── file-earmark-excel.svg
│ │ │ │ ├── file-earmark-fill.svg
│ │ │ │ ├── file-earmark-font-fill.svg
│ │ │ │ ├── file-earmark-font.svg
│ │ │ │ ├── file-earmark-image-fill.svg
│ │ │ │ ├── file-earmark-image.svg
│ │ │ │ ├── file-earmark-lock-fill.svg
│ │ │ │ ├── file-earmark-lock.svg
│ │ │ │ ├── file-earmark-lock2-fill.svg
│ │ │ │ ├── file-earmark-lock2.svg
│ │ │ │ ├── file-earmark-medical-fill.svg
│ │ │ │ ├── file-earmark-medical.svg
│ │ │ │ ├── file-earmark-minus-fill.svg
│ │ │ │ ├── file-earmark-minus.svg
│ │ │ │ ├── file-earmark-music-fill.svg
│ │ │ │ ├── file-earmark-music.svg
│ │ │ │ ├── file-earmark-pdf-fill.svg
│ │ │ │ ├── file-earmark-pdf.svg
│ │ │ │ ├── file-earmark-person-fill.svg
│ │ │ │ ├── file-earmark-person.svg
│ │ │ │ ├── file-earmark-play-fill.svg
│ │ │ │ ├── file-earmark-play.svg
│ │ │ │ ├── file-earmark-plus-fill.svg
│ │ │ │ ├── file-earmark-plus.svg
│ │ │ │ ├── file-earmark-post-fill.svg
│ │ │ │ ├── file-earmark-post.svg
│ │ │ │ ├── file-earmark-ppt-fill.svg
│ │ │ │ ├── file-earmark-ppt.svg
│ │ │ │ ├── file-earmark-richtext-fill.svg
│ │ │ │ ├── file-earmark-richtext.svg
│ │ │ │ ├── file-earmark-ruled-fill.svg
│ │ │ │ ├── file-earmark-ruled.svg
│ │ │ │ ├── file-earmark-slides-fill.svg
│ │ │ │ ├── file-earmark-slides.svg
│ │ │ │ ├── file-earmark-spreadsheet-fill.svg
│ │ │ │ ├── file-earmark-spreadsheet.svg
│ │ │ │ ├── file-earmark-text-fill.svg
│ │ │ │ ├── file-earmark-text.svg
│ │ │ │ ├── file-earmark-word-fill.svg
│ │ │ │ ├── file-earmark-word.svg
│ │ │ │ ├── file-earmark-x-fill.svg
│ │ │ │ ├── file-earmark-x.svg
│ │ │ │ ├── file-earmark-zip-fill.svg
│ │ │ │ ├── file-earmark-zip.svg
│ │ │ │ ├── file-earmark.svg
│ │ │ │ ├── file-easel-fill.svg
│ │ │ │ ├── file-easel.svg
│ │ │ │ ├── file-excel-fill.svg
│ │ │ │ ├── file-excel.svg
│ │ │ │ ├── file-fill.svg
│ │ │ │ ├── file-font-fill.svg
│ │ │ │ ├── file-font.svg
│ │ │ │ ├── file-image-fill.svg
│ │ │ │ ├── file-image.svg
│ │ │ │ ├── file-lock-fill.svg
│ │ │ │ ├── file-lock.svg
│ │ │ │ ├── file-lock2-fill.svg
│ │ │ │ ├── file-lock2.svg
│ │ │ │ ├── file-medical-fill.svg
│ │ │ │ ├── file-medical.svg
│ │ │ │ ├── file-minus-fill.svg
│ │ │ │ ├── file-minus.svg
│ │ │ │ ├── file-music-fill.svg
│ │ │ │ ├── file-music.svg
│ │ │ │ ├── file-pdf-fill.svg
│ │ │ │ ├── file-pdf.svg
│ │ │ │ ├── file-person-fill.svg
│ │ │ │ ├── file-person.svg
│ │ │ │ ├── file-play-fill.svg
│ │ │ │ ├── file-play.svg
│ │ │ │ ├── file-plus-fill.svg
│ │ │ │ ├── file-plus.svg
│ │ │ │ ├── file-post-fill.svg
│ │ │ │ ├── file-post.svg
│ │ │ │ ├── file-ppt-fill.svg
│ │ │ │ ├── file-ppt.svg
│ │ │ │ ├── file-richtext-fill.svg
│ │ │ │ ├── file-richtext.svg
│ │ │ │ ├── file-ruled-fill.svg
│ │ │ │ ├── file-ruled.svg
│ │ │ │ ├── file-slides-fill.svg
│ │ │ │ ├── file-slides.svg
│ │ │ │ ├── file-spreadsheet-fill.svg
│ │ │ │ ├── file-spreadsheet.svg
│ │ │ │ ├── file-text-fill.svg
│ │ │ │ ├── file-text.svg
│ │ │ │ ├── file-word-fill.svg
│ │ │ │ ├── file-word.svg
│ │ │ │ ├── file-x-fill.svg
│ │ │ │ ├── file-x.svg
│ │ │ │ ├── file-zip-fill.svg
│ │ │ │ ├── file-zip.svg
│ │ │ │ ├── file.svg
│ │ │ │ ├── files-alt.svg
│ │ │ │ ├── files.svg
│ │ │ │ ├── filetype-aac.svg
│ │ │ │ ├── filetype-ai.svg
│ │ │ │ ├── filetype-bmp.svg
│ │ │ │ ├── filetype-cs.svg
│ │ │ │ ├── filetype-css.svg
│ │ │ │ ├── filetype-csv.svg
│ │ │ │ ├── filetype-doc.svg
│ │ │ │ ├── filetype-docx.svg
│ │ │ │ ├── filetype-exe.svg
│ │ │ │ ├── filetype-gif.svg
│ │ │ │ ├── filetype-heic.svg
│ │ │ │ ├── filetype-html.svg
│ │ │ │ ├── filetype-java.svg
│ │ │ │ ├── filetype-jpg.svg
│ │ │ │ ├── filetype-js.svg
│ │ │ │ ├── filetype-json.svg
│ │ │ │ ├── filetype-jsx.svg
│ │ │ │ ├── filetype-key.svg
│ │ │ │ ├── filetype-m4p.svg
│ │ │ │ ├── filetype-md.svg
│ │ │ │ ├── filetype-mdx.svg
│ │ │ │ ├── filetype-mov.svg
│ │ │ │ ├── filetype-mp3.svg
│ │ │ │ ├── filetype-mp4.svg
│ │ │ │ ├── filetype-otf.svg
│ │ │ │ ├── filetype-pdf.svg
│ │ │ │ ├── filetype-php.svg
│ │ │ │ ├── filetype-png.svg
│ │ │ │ ├── filetype-ppt.svg
│ │ │ │ ├── filetype-pptx.svg
│ │ │ │ ├── filetype-psd.svg
│ │ │ │ ├── filetype-py.svg
│ │ │ │ ├── filetype-raw.svg
│ │ │ │ ├── filetype-rb.svg
│ │ │ │ ├── filetype-sass.svg
│ │ │ │ ├── filetype-scss.svg
│ │ │ │ ├── filetype-sh.svg
│ │ │ │ ├── filetype-sql.svg
│ │ │ │ ├── filetype-svg.svg
│ │ │ │ ├── filetype-tiff.svg
│ │ │ │ ├── filetype-tsx.svg
│ │ │ │ ├── filetype-ttf.svg
│ │ │ │ ├── filetype-txt.svg
│ │ │ │ ├── filetype-wav.svg
│ │ │ │ ├── filetype-woff.svg
│ │ │ │ ├── filetype-xls.svg
│ │ │ │ ├── filetype-xlsx.svg
│ │ │ │ ├── filetype-xml.svg
│ │ │ │ ├── filetype-yml.svg
│ │ │ │ ├── film.svg
│ │ │ │ ├── filter-circle-fill.svg
│ │ │ │ ├── filter-circle.svg
│ │ │ │ ├── filter-left.svg
│ │ │ │ ├── filter-right.svg
│ │ │ │ ├── filter-square-fill.svg
│ │ │ │ ├── filter-square.svg
│ │ │ │ ├── filter.svg
│ │ │ │ ├── fingerprint.svg
│ │ │ │ ├── fire.svg
│ │ │ │ ├── flag-fill.svg
│ │ │ │ ├── flag.svg
│ │ │ │ ├── floppy-fill.svg
│ │ │ │ ├── floppy.svg
│ │ │ │ ├── floppy2-fill.svg
│ │ │ │ ├── floppy2.svg
│ │ │ │ ├── flower1.svg
│ │ │ │ ├── flower2.svg
│ │ │ │ ├── flower3.svg
│ │ │ │ ├── folder-check.svg
│ │ │ │ ├── folder-fill.svg
│ │ │ │ ├── folder-minus.svg
│ │ │ │ ├── folder-plus.svg
│ │ │ │ ├── folder-symlink-fill.svg
│ │ │ │ ├── folder-symlink.svg
│ │ │ │ ├── folder-x.svg
│ │ │ │ ├── folder.svg
│ │ │ │ ├── folder2-open.svg
│ │ │ │ ├── folder2.svg
│ │ │ │ ├── font
│ │ │ │ ├── bootstrap-icons.css
│ │ │ │ ├── bootstrap-icons.json
│ │ │ │ ├── bootstrap-icons.min.css
│ │ │ │ ├── bootstrap-icons.scss
│ │ │ │ └── fonts
│ │ │ │ │ ├── bootstrap-icons.woff
│ │ │ │ │ └── bootstrap-icons.woff2
│ │ │ │ ├── fonts.svg
│ │ │ │ ├── forward-fill.svg
│ │ │ │ ├── forward.svg
│ │ │ │ ├── front.svg
│ │ │ │ ├── fuel-pump-diesel-fill.svg
│ │ │ │ ├── fuel-pump-diesel.svg
│ │ │ │ ├── fuel-pump-fill.svg
│ │ │ │ ├── fuel-pump.svg
│ │ │ │ ├── fullscreen-exit.svg
│ │ │ │ ├── fullscreen.svg
│ │ │ │ ├── funnel-fill.svg
│ │ │ │ ├── funnel.svg
│ │ │ │ ├── gear-fill.svg
│ │ │ │ ├── gear-wide-connected.svg
│ │ │ │ ├── gear-wide.svg
│ │ │ │ ├── gear.svg
│ │ │ │ ├── gem.svg
│ │ │ │ ├── gender-ambiguous.svg
│ │ │ │ ├── gender-female.svg
│ │ │ │ ├── gender-male.svg
│ │ │ │ ├── gender-neuter.svg
│ │ │ │ ├── gender-trans.svg
│ │ │ │ ├── geo-alt-fill.svg
│ │ │ │ ├── geo-alt.svg
│ │ │ │ ├── geo-fill.svg
│ │ │ │ ├── geo.svg
│ │ │ │ ├── gift-fill.svg
│ │ │ │ ├── gift.svg
│ │ │ │ ├── git.svg
│ │ │ │ ├── github.svg
│ │ │ │ ├── gitlab.svg
│ │ │ │ ├── globe-americas.svg
│ │ │ │ ├── globe-asia-australia.svg
│ │ │ │ ├── globe-central-south-asia.svg
│ │ │ │ ├── globe-europe-africa.svg
│ │ │ │ ├── globe.svg
│ │ │ │ ├── globe2.svg
│ │ │ │ ├── google-play.svg
│ │ │ │ ├── google.svg
│ │ │ │ ├── gpu-card.svg
│ │ │ │ ├── graph-down-arrow.svg
│ │ │ │ ├── graph-down.svg
│ │ │ │ ├── graph-up-arrow.svg
│ │ │ │ ├── graph-up.svg
│ │ │ │ ├── grid-1x2-fill.svg
│ │ │ │ ├── grid-1x2.svg
│ │ │ │ ├── grid-3x2-gap-fill.svg
│ │ │ │ ├── grid-3x2-gap.svg
│ │ │ │ ├── grid-3x2.svg
│ │ │ │ ├── grid-3x3-gap-fill.svg
│ │ │ │ ├── grid-3x3-gap.svg
│ │ │ │ ├── grid-3x3.svg
│ │ │ │ ├── grid-fill.svg
│ │ │ │ ├── grid.svg
│ │ │ │ ├── grip-horizontal.svg
│ │ │ │ ├── grip-vertical.svg
│ │ │ │ ├── h-circle-fill.svg
│ │ │ │ ├── h-circle.svg
│ │ │ │ ├── h-square-fill.svg
│ │ │ │ ├── h-square.svg
│ │ │ │ ├── hammer.svg
│ │ │ │ ├── hand-index-fill.svg
│ │ │ │ ├── hand-index-thumb-fill.svg
│ │ │ │ ├── hand-index-thumb.svg
│ │ │ │ ├── hand-index.svg
│ │ │ │ ├── hand-thumbs-down-fill.svg
│ │ │ │ ├── hand-thumbs-down.svg
│ │ │ │ ├── hand-thumbs-up-fill.svg
│ │ │ │ ├── hand-thumbs-up.svg
│ │ │ │ ├── handbag-fill.svg
│ │ │ │ ├── handbag.svg
│ │ │ │ ├── hash.svg
│ │ │ │ ├── hdd-fill.svg
│ │ │ │ ├── hdd-network-fill.svg
│ │ │ │ ├── hdd-network.svg
│ │ │ │ ├── hdd-rack-fill.svg
│ │ │ │ ├── hdd-rack.svg
│ │ │ │ ├── hdd-stack-fill.svg
│ │ │ │ ├── hdd-stack.svg
│ │ │ │ ├── hdd.svg
│ │ │ │ ├── hdmi-fill.svg
│ │ │ │ ├── hdmi.svg
│ │ │ │ ├── headphones.svg
│ │ │ │ ├── headset-vr.svg
│ │ │ │ ├── headset.svg
│ │ │ │ ├── heart-arrow.svg
│ │ │ │ ├── heart-fill.svg
│ │ │ │ ├── heart-half.svg
│ │ │ │ ├── heart-pulse-fill.svg
│ │ │ │ ├── heart-pulse.svg
│ │ │ │ ├── heart.svg
│ │ │ │ ├── heartbreak-fill.svg
│ │ │ │ ├── heartbreak.svg
│ │ │ │ ├── hearts.svg
│ │ │ │ ├── heptagon-fill.svg
│ │ │ │ ├── heptagon-half.svg
│ │ │ │ ├── heptagon.svg
│ │ │ │ ├── hexagon-fill.svg
│ │ │ │ ├── hexagon-half.svg
│ │ │ │ ├── hexagon.svg
│ │ │ │ ├── highlighter.svg
│ │ │ │ ├── highlights.svg
│ │ │ │ ├── hospital-fill.svg
│ │ │ │ ├── hospital.svg
│ │ │ │ ├── hourglass-bottom.svg
│ │ │ │ ├── hourglass-split.svg
│ │ │ │ ├── hourglass-top.svg
│ │ │ │ ├── hourglass.svg
│ │ │ │ ├── house-add-fill.svg
│ │ │ │ ├── house-add.svg
│ │ │ │ ├── house-check-fill.svg
│ │ │ │ ├── house-check.svg
│ │ │ │ ├── house-dash-fill.svg
│ │ │ │ ├── house-dash.svg
│ │ │ │ ├── house-door-fill.svg
│ │ │ │ ├── house-door.svg
│ │ │ │ ├── house-down-fill.svg
│ │ │ │ ├── house-down.svg
│ │ │ │ ├── house-exclamation-fill.svg
│ │ │ │ ├── house-exclamation.svg
│ │ │ │ ├── house-fill.svg
│ │ │ │ ├── house-gear-fill.svg
│ │ │ │ ├── house-gear.svg
│ │ │ │ ├── house-heart-fill.svg
│ │ │ │ ├── house-heart.svg
│ │ │ │ ├── house-lock-fill.svg
│ │ │ │ ├── house-lock.svg
│ │ │ │ ├── house-slash-fill.svg
│ │ │ │ ├── house-slash.svg
│ │ │ │ ├── house-up-fill.svg
│ │ │ │ ├── house-up.svg
│ │ │ │ ├── house-x-fill.svg
│ │ │ │ ├── house-x.svg
│ │ │ │ ├── house.svg
│ │ │ │ ├── houses-fill.svg
│ │ │ │ ├── houses.svg
│ │ │ │ ├── hr.svg
│ │ │ │ ├── hurricane.svg
│ │ │ │ ├── hypnotize.svg
│ │ │ │ ├── image-alt.svg
│ │ │ │ ├── image-fill.svg
│ │ │ │ ├── image.svg
│ │ │ │ ├── images.svg
│ │ │ │ ├── inbox-fill.svg
│ │ │ │ ├── inbox.svg
│ │ │ │ ├── inboxes-fill.svg
│ │ │ │ ├── inboxes.svg
│ │ │ │ ├── incognito.svg
│ │ │ │ ├── indent.svg
│ │ │ │ ├── infinity.svg
│ │ │ │ ├── info-circle-fill.svg
│ │ │ │ ├── info-circle.svg
│ │ │ │ ├── info-lg.svg
│ │ │ │ ├── info-square-fill.svg
│ │ │ │ ├── info-square.svg
│ │ │ │ ├── info.svg
│ │ │ │ ├── input-cursor-text.svg
│ │ │ │ ├── input-cursor.svg
│ │ │ │ ├── instagram.svg
│ │ │ │ ├── intersect.svg
│ │ │ │ ├── journal-album.svg
│ │ │ │ ├── journal-arrow-down.svg
│ │ │ │ ├── journal-arrow-up.svg
│ │ │ │ ├── journal-bookmark-fill.svg
│ │ │ │ ├── journal-bookmark.svg
│ │ │ │ ├── journal-check.svg
│ │ │ │ ├── journal-code.svg
│ │ │ │ ├── journal-medical.svg
│ │ │ │ ├── journal-minus.svg
│ │ │ │ ├── journal-plus.svg
│ │ │ │ ├── journal-richtext.svg
│ │ │ │ ├── journal-text.svg
│ │ │ │ ├── journal-x.svg
│ │ │ │ ├── journal.svg
│ │ │ │ ├── journals.svg
│ │ │ │ ├── joystick.svg
│ │ │ │ ├── justify-left.svg
│ │ │ │ ├── justify-right.svg
│ │ │ │ ├── justify.svg
│ │ │ │ ├── kanban-fill.svg
│ │ │ │ ├── kanban.svg
│ │ │ │ ├── key-fill.svg
│ │ │ │ ├── key.svg
│ │ │ │ ├── keyboard-fill.svg
│ │ │ │ ├── keyboard.svg
│ │ │ │ ├── ladder.svg
│ │ │ │ ├── lamp-fill.svg
│ │ │ │ ├── lamp.svg
│ │ │ │ ├── laptop-fill.svg
│ │ │ │ ├── laptop.svg
│ │ │ │ ├── layer-backward.svg
│ │ │ │ ├── layer-forward.svg
│ │ │ │ ├── layers-fill.svg
│ │ │ │ ├── layers-half.svg
│ │ │ │ ├── layers.svg
│ │ │ │ ├── layout-sidebar-inset-reverse.svg
│ │ │ │ ├── layout-sidebar-inset.svg
│ │ │ │ ├── layout-sidebar-reverse.svg
│ │ │ │ ├── layout-sidebar.svg
│ │ │ │ ├── layout-split.svg
│ │ │ │ ├── layout-text-sidebar-reverse.svg
│ │ │ │ ├── layout-text-sidebar.svg
│ │ │ │ ├── layout-text-window-reverse.svg
│ │ │ │ ├── layout-text-window.svg
│ │ │ │ ├── layout-three-columns.svg
│ │ │ │ ├── layout-wtf.svg
│ │ │ │ ├── life-preserver.svg
│ │ │ │ ├── lightbulb-fill.svg
│ │ │ │ ├── lightbulb-off-fill.svg
│ │ │ │ ├── lightbulb-off.svg
│ │ │ │ ├── lightbulb.svg
│ │ │ │ ├── lightning-charge-fill.svg
│ │ │ │ ├── lightning-charge.svg
│ │ │ │ ├── lightning-fill.svg
│ │ │ │ ├── lightning.svg
│ │ │ │ ├── line.svg
│ │ │ │ ├── link-45deg.svg
│ │ │ │ ├── link.svg
│ │ │ │ ├── linkedin.svg
│ │ │ │ ├── list-check.svg
│ │ │ │ ├── list-columns-reverse.svg
│ │ │ │ ├── list-columns.svg
│ │ │ │ ├── list-nested.svg
│ │ │ │ ├── list-ol.svg
│ │ │ │ ├── list-stars.svg
│ │ │ │ ├── list-task.svg
│ │ │ │ ├── list-ul.svg
│ │ │ │ ├── list.svg
│ │ │ │ ├── lock-fill.svg
│ │ │ │ ├── lock.svg
│ │ │ │ ├── luggage-fill.svg
│ │ │ │ ├── luggage.svg
│ │ │ │ ├── lungs-fill.svg
│ │ │ │ ├── lungs.svg
│ │ │ │ ├── magic.svg
│ │ │ │ ├── magnet-fill.svg
│ │ │ │ ├── magnet.svg
│ │ │ │ ├── mailbox-flag.svg
│ │ │ │ ├── mailbox.svg
│ │ │ │ ├── mailbox2-flag.svg
│ │ │ │ ├── mailbox2.svg
│ │ │ │ ├── map-fill.svg
│ │ │ │ ├── map.svg
│ │ │ │ ├── markdown-fill.svg
│ │ │ │ ├── markdown.svg
│ │ │ │ ├── marker-tip.svg
│ │ │ │ ├── mask.svg
│ │ │ │ ├── mastodon.svg
│ │ │ │ ├── medium.svg
│ │ │ │ ├── megaphone-fill.svg
│ │ │ │ ├── megaphone.svg
│ │ │ │ ├── memory.svg
│ │ │ │ ├── menu-app-fill.svg
│ │ │ │ ├── menu-app.svg
│ │ │ │ ├── menu-button-fill.svg
│ │ │ │ ├── menu-button-wide-fill.svg
│ │ │ │ ├── menu-button-wide.svg
│ │ │ │ ├── menu-button.svg
│ │ │ │ ├── menu-down.svg
│ │ │ │ ├── menu-up.svg
│ │ │ │ ├── messenger.svg
│ │ │ │ ├── meta.svg
│ │ │ │ ├── mic-fill.svg
│ │ │ │ ├── mic-mute-fill.svg
│ │ │ │ ├── mic-mute.svg
│ │ │ │ ├── mic.svg
│ │ │ │ ├── microsoft-teams.svg
│ │ │ │ ├── microsoft.svg
│ │ │ │ ├── minecart-loaded.svg
│ │ │ │ ├── minecart.svg
│ │ │ │ ├── modem-fill.svg
│ │ │ │ ├── modem.svg
│ │ │ │ ├── moisture.svg
│ │ │ │ ├── moon-fill.svg
│ │ │ │ ├── moon-stars-fill.svg
│ │ │ │ ├── moon-stars.svg
│ │ │ │ ├── moon.svg
│ │ │ │ ├── mortarboard-fill.svg
│ │ │ │ ├── mortarboard.svg
│ │ │ │ ├── motherboard-fill.svg
│ │ │ │ ├── motherboard.svg
│ │ │ │ ├── mouse-fill.svg
│ │ │ │ ├── mouse.svg
│ │ │ │ ├── mouse2-fill.svg
│ │ │ │ ├── mouse2.svg
│ │ │ │ ├── mouse3-fill.svg
│ │ │ │ ├── mouse3.svg
│ │ │ │ ├── music-note-beamed.svg
│ │ │ │ ├── music-note-list.svg
│ │ │ │ ├── music-note.svg
│ │ │ │ ├── music-player-fill.svg
│ │ │ │ ├── music-player.svg
│ │ │ │ ├── newspaper.svg
│ │ │ │ ├── nintendo-switch.svg
│ │ │ │ ├── node-minus-fill.svg
│ │ │ │ ├── node-minus.svg
│ │ │ │ ├── node-plus-fill.svg
│ │ │ │ ├── node-plus.svg
│ │ │ │ ├── noise-reduction.svg
│ │ │ │ ├── nut-fill.svg
│ │ │ │ ├── nut.svg
│ │ │ │ ├── nvidia.svg
│ │ │ │ ├── nvme-fill.svg
│ │ │ │ ├── nvme.svg
│ │ │ │ ├── octagon-fill.svg
│ │ │ │ ├── octagon-half.svg
│ │ │ │ ├── octagon.svg
│ │ │ │ ├── opencollective.svg
│ │ │ │ ├── optical-audio-fill.svg
│ │ │ │ ├── optical-audio.svg
│ │ │ │ ├── option.svg
│ │ │ │ ├── outlet.svg
│ │ │ │ ├── p-circle-fill.svg
│ │ │ │ ├── p-circle.svg
│ │ │ │ ├── p-square-fill.svg
│ │ │ │ ├── p-square.svg
│ │ │ │ ├── paint-bucket.svg
│ │ │ │ ├── palette-fill.svg
│ │ │ │ ├── palette.svg
│ │ │ │ ├── palette2.svg
│ │ │ │ ├── paperclip.svg
│ │ │ │ ├── paragraph.svg
│ │ │ │ ├── pass-fill.svg
│ │ │ │ ├── pass.svg
│ │ │ │ ├── passport-fill.svg
│ │ │ │ ├── passport.svg
│ │ │ │ ├── patch-check-fill.svg
│ │ │ │ ├── patch-check.svg
│ │ │ │ ├── patch-exclamation-fill.svg
│ │ │ │ ├── patch-exclamation.svg
│ │ │ │ ├── patch-minus-fill.svg
│ │ │ │ ├── patch-minus.svg
│ │ │ │ ├── patch-plus-fill.svg
│ │ │ │ ├── patch-plus.svg
│ │ │ │ ├── patch-question-fill.svg
│ │ │ │ ├── patch-question.svg
│ │ │ │ ├── pause-btn-fill.svg
│ │ │ │ ├── pause-btn.svg
│ │ │ │ ├── pause-circle-fill.svg
│ │ │ │ ├── pause-circle.svg
│ │ │ │ ├── pause-fill.svg
│ │ │ │ ├── pause.svg
│ │ │ │ ├── paypal.svg
│ │ │ │ ├── pc-display-horizontal.svg
│ │ │ │ ├── pc-display.svg
│ │ │ │ ├── pc-horizontal.svg
│ │ │ │ ├── pc.svg
│ │ │ │ ├── pci-card-network.svg
│ │ │ │ ├── pci-card-sound.svg
│ │ │ │ ├── pci-card.svg
│ │ │ │ ├── peace-fill.svg
│ │ │ │ ├── peace.svg
│ │ │ │ ├── pen-fill.svg
│ │ │ │ ├── pen.svg
│ │ │ │ ├── pencil-fill.svg
│ │ │ │ ├── pencil-square.svg
│ │ │ │ ├── pencil.svg
│ │ │ │ ├── pentagon-fill.svg
│ │ │ │ ├── pentagon-half.svg
│ │ │ │ ├── pentagon.svg
│ │ │ │ ├── people-fill.svg
│ │ │ │ ├── people.svg
│ │ │ │ ├── percent.svg
│ │ │ │ ├── person-add.svg
│ │ │ │ ├── person-arms-up.svg
│ │ │ │ ├── person-badge-fill.svg
│ │ │ │ ├── person-badge.svg
│ │ │ │ ├── person-bounding-box.svg
│ │ │ │ ├── person-check-fill.svg
│ │ │ │ ├── person-check.svg
│ │ │ │ ├── person-circle.svg
│ │ │ │ ├── person-dash-fill.svg
│ │ │ │ ├── person-dash.svg
│ │ │ │ ├── person-down.svg
│ │ │ │ ├── person-exclamation.svg
│ │ │ │ ├── person-fill-add.svg
│ │ │ │ ├── person-fill-check.svg
│ │ │ │ ├── person-fill-dash.svg
│ │ │ │ ├── person-fill-down.svg
│ │ │ │ ├── person-fill-exclamation.svg
│ │ │ │ ├── person-fill-gear.svg
│ │ │ │ ├── person-fill-lock.svg
│ │ │ │ ├── person-fill-slash.svg
│ │ │ │ ├── person-fill-up.svg
│ │ │ │ ├── person-fill-x.svg
│ │ │ │ ├── person-fill.svg
│ │ │ │ ├── person-gear.svg
│ │ │ │ ├── person-heart.svg
│ │ │ │ ├── person-hearts.svg
│ │ │ │ ├── person-lines-fill.svg
│ │ │ │ ├── person-lock.svg
│ │ │ │ ├── person-plus-fill.svg
│ │ │ │ ├── person-plus.svg
│ │ │ │ ├── person-raised-hand.svg
│ │ │ │ ├── person-rolodex.svg
│ │ │ │ ├── person-slash.svg
│ │ │ │ ├── person-square.svg
│ │ │ │ ├── person-standing-dress.svg
│ │ │ │ ├── person-standing.svg
│ │ │ │ ├── person-up.svg
│ │ │ │ ├── person-vcard-fill.svg
│ │ │ │ ├── person-vcard.svg
│ │ │ │ ├── person-video.svg
│ │ │ │ ├── person-video2.svg
│ │ │ │ ├── person-video3.svg
│ │ │ │ ├── person-walking.svg
│ │ │ │ ├── person-wheelchair.svg
│ │ │ │ ├── person-workspace.svg
│ │ │ │ ├── person-x-fill.svg
│ │ │ │ ├── person-x.svg
│ │ │ │ ├── person.svg
│ │ │ │ ├── phone-fill.svg
│ │ │ │ ├── phone-flip.svg
│ │ │ │ ├── phone-landscape-fill.svg
│ │ │ │ ├── phone-landscape.svg
│ │ │ │ ├── phone-vibrate-fill.svg
│ │ │ │ ├── phone-vibrate.svg
│ │ │ │ ├── phone.svg
│ │ │ │ ├── pie-chart-fill.svg
│ │ │ │ ├── pie-chart.svg
│ │ │ │ ├── piggy-bank-fill.svg
│ │ │ │ ├── piggy-bank.svg
│ │ │ │ ├── pin-angle-fill.svg
│ │ │ │ ├── pin-angle.svg
│ │ │ │ ├── pin-fill.svg
│ │ │ │ ├── pin-map-fill.svg
│ │ │ │ ├── pin-map.svg
│ │ │ │ ├── pin.svg
│ │ │ │ ├── pinterest.svg
│ │ │ │ ├── pip-fill.svg
│ │ │ │ ├── pip.svg
│ │ │ │ ├── play-btn-fill.svg
│ │ │ │ ├── play-btn.svg
│ │ │ │ ├── play-circle-fill.svg
│ │ │ │ ├── play-circle.svg
│ │ │ │ ├── play-fill.svg
│ │ │ │ ├── play.svg
│ │ │ │ ├── playstation.svg
│ │ │ │ ├── plug-fill.svg
│ │ │ │ ├── plug.svg
│ │ │ │ ├── plugin.svg
│ │ │ │ ├── plus-circle-dotted.svg
│ │ │ │ ├── plus-circle-fill.svg
│ │ │ │ ├── plus-circle.svg
│ │ │ │ ├── plus-lg.svg
│ │ │ │ ├── plus-slash-minus.svg
│ │ │ │ ├── plus-square-dotted.svg
│ │ │ │ ├── plus-square-fill.svg
│ │ │ │ ├── plus-square.svg
│ │ │ │ ├── plus.svg
│ │ │ │ ├── postage-fill.svg
│ │ │ │ ├── postage-heart-fill.svg
│ │ │ │ ├── postage-heart.svg
│ │ │ │ ├── postage.svg
│ │ │ │ ├── postcard-fill.svg
│ │ │ │ ├── postcard-heart-fill.svg
│ │ │ │ ├── postcard-heart.svg
│ │ │ │ ├── postcard.svg
│ │ │ │ ├── power.svg
│ │ │ │ ├── prescription.svg
│ │ │ │ ├── prescription2.svg
│ │ │ │ ├── printer-fill.svg
│ │ │ │ ├── printer.svg
│ │ │ │ ├── projector-fill.svg
│ │ │ │ ├── projector.svg
│ │ │ │ ├── puzzle-fill.svg
│ │ │ │ ├── puzzle.svg
│ │ │ │ ├── qr-code-scan.svg
│ │ │ │ ├── qr-code.svg
│ │ │ │ ├── question-circle-fill.svg
│ │ │ │ ├── question-circle.svg
│ │ │ │ ├── question-diamond-fill.svg
│ │ │ │ ├── question-diamond.svg
│ │ │ │ ├── question-lg.svg
│ │ │ │ ├── question-octagon-fill.svg
│ │ │ │ ├── question-octagon.svg
│ │ │ │ ├── question-square-fill.svg
│ │ │ │ ├── question-square.svg
│ │ │ │ ├── question.svg
│ │ │ │ ├── quora.svg
│ │ │ │ ├── quote.svg
│ │ │ │ ├── r-circle-fill.svg
│ │ │ │ ├── r-circle.svg
│ │ │ │ ├── r-square-fill.svg
│ │ │ │ ├── r-square.svg
│ │ │ │ ├── radar.svg
│ │ │ │ ├── radioactive.svg
│ │ │ │ ├── rainbow.svg
│ │ │ │ ├── receipt-cutoff.svg
│ │ │ │ ├── receipt.svg
│ │ │ │ ├── reception-0.svg
│ │ │ │ ├── reception-1.svg
│ │ │ │ ├── reception-2.svg
│ │ │ │ ├── reception-3.svg
│ │ │ │ ├── reception-4.svg
│ │ │ │ ├── record-btn-fill.svg
│ │ │ │ ├── record-btn.svg
│ │ │ │ ├── record-circle-fill.svg
│ │ │ │ ├── record-circle.svg
│ │ │ │ ├── record-fill.svg
│ │ │ │ ├── record.svg
│ │ │ │ ├── record2-fill.svg
│ │ │ │ ├── record2.svg
│ │ │ │ ├── recycle.svg
│ │ │ │ ├── reddit.svg
│ │ │ │ ├── regex.svg
│ │ │ │ ├── repeat-1.svg
│ │ │ │ ├── repeat.svg
│ │ │ │ ├── reply-all-fill.svg
│ │ │ │ ├── reply-all.svg
│ │ │ │ ├── reply-fill.svg
│ │ │ │ ├── reply.svg
│ │ │ │ ├── rewind-btn-fill.svg
│ │ │ │ ├── rewind-btn.svg
│ │ │ │ ├── rewind-circle-fill.svg
│ │ │ │ ├── rewind-circle.svg
│ │ │ │ ├── rewind-fill.svg
│ │ │ │ ├── rewind.svg
│ │ │ │ ├── robot.svg
│ │ │ │ ├── rocket-fill.svg
│ │ │ │ ├── rocket-takeoff-fill.svg
│ │ │ │ ├── rocket-takeoff.svg
│ │ │ │ ├── rocket.svg
│ │ │ │ ├── router-fill.svg
│ │ │ │ ├── router.svg
│ │ │ │ ├── rss-fill.svg
│ │ │ │ ├── rss.svg
│ │ │ │ ├── rulers.svg
│ │ │ │ ├── safe-fill.svg
│ │ │ │ ├── safe.svg
│ │ │ │ ├── safe2-fill.svg
│ │ │ │ ├── safe2.svg
│ │ │ │ ├── save-fill.svg
│ │ │ │ ├── save.svg
│ │ │ │ ├── save2-fill.svg
│ │ │ │ ├── save2.svg
│ │ │ │ ├── scissors.svg
│ │ │ │ ├── scooter.svg
│ │ │ │ ├── screwdriver.svg
│ │ │ │ ├── sd-card-fill.svg
│ │ │ │ ├── sd-card.svg
│ │ │ │ ├── search-heart-fill.svg
│ │ │ │ ├── search-heart.svg
│ │ │ │ ├── search.svg
│ │ │ │ ├── segmented-nav.svg
│ │ │ │ ├── send-arrow-down-fill.svg
│ │ │ │ ├── send-arrow-down.svg
│ │ │ │ ├── send-arrow-up-fill.svg
│ │ │ │ ├── send-arrow-up.svg
│ │ │ │ ├── send-check-fill.svg
│ │ │ │ ├── send-check.svg
│ │ │ │ ├── send-dash-fill.svg
│ │ │ │ ├── send-dash.svg
│ │ │ │ ├── send-exclamation-fill.svg
│ │ │ │ ├── send-exclamation.svg
│ │ │ │ ├── send-fill.svg
│ │ │ │ ├── send-plus-fill.svg
│ │ │ │ ├── send-plus.svg
│ │ │ │ ├── send-slash-fill.svg
│ │ │ │ ├── send-slash.svg
│ │ │ │ ├── send-x-fill.svg
│ │ │ │ ├── send-x.svg
│ │ │ │ ├── send.svg
│ │ │ │ ├── server.svg
│ │ │ │ ├── shadows.svg
│ │ │ │ ├── share-fill.svg
│ │ │ │ ├── share.svg
│ │ │ │ ├── shield-check.svg
│ │ │ │ ├── shield-exclamation.svg
│ │ │ │ ├── shield-fill-check.svg
│ │ │ │ ├── shield-fill-exclamation.svg
│ │ │ │ ├── shield-fill-minus.svg
│ │ │ │ ├── shield-fill-plus.svg
│ │ │ │ ├── shield-fill-x.svg
│ │ │ │ ├── shield-fill.svg
│ │ │ │ ├── shield-lock-fill.svg
│ │ │ │ ├── shield-lock.svg
│ │ │ │ ├── shield-minus.svg
│ │ │ │ ├── shield-plus.svg
│ │ │ │ ├── shield-shaded.svg
│ │ │ │ ├── shield-slash-fill.svg
│ │ │ │ ├── shield-slash.svg
│ │ │ │ ├── shield-x.svg
│ │ │ │ ├── shield.svg
│ │ │ │ ├── shift-fill.svg
│ │ │ │ ├── shift.svg
│ │ │ │ ├── shop-window.svg
│ │ │ │ ├── shop.svg
│ │ │ │ ├── shuffle.svg
│ │ │ │ ├── sign-dead-end-fill.svg
│ │ │ │ ├── sign-dead-end.svg
│ │ │ │ ├── sign-do-not-enter-fill.svg
│ │ │ │ ├── sign-do-not-enter.svg
│ │ │ │ ├── sign-intersection-fill.svg
│ │ │ │ ├── sign-intersection-side-fill.svg
│ │ │ │ ├── sign-intersection-side.svg
│ │ │ │ ├── sign-intersection-t-fill.svg
│ │ │ │ ├── sign-intersection-t.svg
│ │ │ │ ├── sign-intersection-y-fill.svg
│ │ │ │ ├── sign-intersection-y.svg
│ │ │ │ ├── sign-intersection.svg
│ │ │ │ ├── sign-merge-left-fill.svg
│ │ │ │ ├── sign-merge-left.svg
│ │ │ │ ├── sign-merge-right-fill.svg
│ │ │ │ ├── sign-merge-right.svg
│ │ │ │ ├── sign-no-left-turn-fill.svg
│ │ │ │ ├── sign-no-left-turn.svg
│ │ │ │ ├── sign-no-parking-fill.svg
│ │ │ │ ├── sign-no-parking.svg
│ │ │ │ ├── sign-no-right-turn-fill.svg
│ │ │ │ ├── sign-no-right-turn.svg
│ │ │ │ ├── sign-railroad-fill.svg
│ │ │ │ ├── sign-railroad.svg
│ │ │ │ ├── sign-stop-fill.svg
│ │ │ │ ├── sign-stop-lights-fill.svg
│ │ │ │ ├── sign-stop-lights.svg
│ │ │ │ ├── sign-stop.svg
│ │ │ │ ├── sign-turn-left-fill.svg
│ │ │ │ ├── sign-turn-left.svg
│ │ │ │ ├── sign-turn-right-fill.svg
│ │ │ │ ├── sign-turn-right.svg
│ │ │ │ ├── sign-turn-slight-left-fill.svg
│ │ │ │ ├── sign-turn-slight-left.svg
│ │ │ │ ├── sign-turn-slight-right-fill.svg
│ │ │ │ ├── sign-turn-slight-right.svg
│ │ │ │ ├── sign-yield-fill.svg
│ │ │ │ ├── sign-yield.svg
│ │ │ │ ├── signal.svg
│ │ │ │ ├── signpost-2-fill.svg
│ │ │ │ ├── signpost-2.svg
│ │ │ │ ├── signpost-fill.svg
│ │ │ │ ├── signpost-split-fill.svg
│ │ │ │ ├── signpost-split.svg
│ │ │ │ ├── signpost.svg
│ │ │ │ ├── sim-fill.svg
│ │ │ │ ├── sim-slash-fill.svg
│ │ │ │ ├── sim-slash.svg
│ │ │ │ ├── sim.svg
│ │ │ │ ├── sina-weibo.svg
│ │ │ │ ├── skip-backward-btn-fill.svg
│ │ │ │ ├── skip-backward-btn.svg
│ │ │ │ ├── skip-backward-circle-fill.svg
│ │ │ │ ├── skip-backward-circle.svg
│ │ │ │ ├── skip-backward-fill.svg
│ │ │ │ ├── skip-backward.svg
│ │ │ │ ├── skip-end-btn-fill.svg
│ │ │ │ ├── skip-end-btn.svg
│ │ │ │ ├── skip-end-circle-fill.svg
│ │ │ │ ├── skip-end-circle.svg
│ │ │ │ ├── skip-end-fill.svg
│ │ │ │ ├── skip-end.svg
│ │ │ │ ├── skip-forward-btn-fill.svg
│ │ │ │ ├── skip-forward-btn.svg
│ │ │ │ ├── skip-forward-circle-fill.svg
│ │ │ │ ├── skip-forward-circle.svg
│ │ │ │ ├── skip-forward-fill.svg
│ │ │ │ ├── skip-forward.svg
│ │ │ │ ├── skip-start-btn-fill.svg
│ │ │ │ ├── skip-start-btn.svg
│ │ │ │ ├── skip-start-circle-fill.svg
│ │ │ │ ├── skip-start-circle.svg
│ │ │ │ ├── skip-start-fill.svg
│ │ │ │ ├── skip-start.svg
│ │ │ │ ├── skype.svg
│ │ │ │ ├── slack.svg
│ │ │ │ ├── slash-circle-fill.svg
│ │ │ │ ├── slash-circle.svg
│ │ │ │ ├── slash-lg.svg
│ │ │ │ ├── slash-square-fill.svg
│ │ │ │ ├── slash-square.svg
│ │ │ │ ├── slash.svg
│ │ │ │ ├── sliders.svg
│ │ │ │ ├── sliders2-vertical.svg
│ │ │ │ ├── sliders2.svg
│ │ │ │ ├── smartwatch.svg
│ │ │ │ ├── snapchat.svg
│ │ │ │ ├── snow.svg
│ │ │ │ ├── snow2.svg
│ │ │ │ ├── snow3.svg
│ │ │ │ ├── sort-alpha-down-alt.svg
│ │ │ │ ├── sort-alpha-down.svg
│ │ │ │ ├── sort-alpha-up-alt.svg
│ │ │ │ ├── sort-alpha-up.svg
│ │ │ │ ├── sort-down-alt.svg
│ │ │ │ ├── sort-down.svg
│ │ │ │ ├── sort-numeric-down-alt.svg
│ │ │ │ ├── sort-numeric-down.svg
│ │ │ │ ├── sort-numeric-up-alt.svg
│ │ │ │ ├── sort-numeric-up.svg
│ │ │ │ ├── sort-up-alt.svg
│ │ │ │ ├── sort-up.svg
│ │ │ │ ├── soundwave.svg
│ │ │ │ ├── sourceforge.svg
│ │ │ │ ├── speaker-fill.svg
│ │ │ │ ├── speaker.svg
│ │ │ │ ├── speedometer.svg
│ │ │ │ ├── speedometer2.svg
│ │ │ │ ├── spellcheck.svg
│ │ │ │ ├── spotify.svg
│ │ │ │ ├── square-fill.svg
│ │ │ │ ├── square-half.svg
│ │ │ │ ├── square.svg
│ │ │ │ ├── stack-overflow.svg
│ │ │ │ ├── stack.svg
│ │ │ │ ├── star-fill.svg
│ │ │ │ ├── star-half.svg
│ │ │ │ ├── star.svg
│ │ │ │ ├── stars.svg
│ │ │ │ ├── steam.svg
│ │ │ │ ├── stickies-fill.svg
│ │ │ │ ├── stickies.svg
│ │ │ │ ├── sticky-fill.svg
│ │ │ │ ├── sticky.svg
│ │ │ │ ├── stop-btn-fill.svg
│ │ │ │ ├── stop-btn.svg
│ │ │ │ ├── stop-circle-fill.svg
│ │ │ │ ├── stop-circle.svg
│ │ │ │ ├── stop-fill.svg
│ │ │ │ ├── stop.svg
│ │ │ │ ├── stoplights-fill.svg
│ │ │ │ ├── stoplights.svg
│ │ │ │ ├── stopwatch-fill.svg
│ │ │ │ ├── stopwatch.svg
│ │ │ │ ├── strava.svg
│ │ │ │ ├── stripe.svg
│ │ │ │ ├── subscript.svg
│ │ │ │ ├── substack.svg
│ │ │ │ ├── subtract.svg
│ │ │ │ ├── suit-club-fill.svg
│ │ │ │ ├── suit-club.svg
│ │ │ │ ├── suit-diamond-fill.svg
│ │ │ │ ├── suit-diamond.svg
│ │ │ │ ├── suit-heart-fill.svg
│ │ │ │ ├── suit-heart.svg
│ │ │ │ ├── suit-spade-fill.svg
│ │ │ │ ├── suit-spade.svg
│ │ │ │ ├── suitcase-fill.svg
│ │ │ │ ├── suitcase-lg-fill.svg
│ │ │ │ ├── suitcase-lg.svg
│ │ │ │ ├── suitcase.svg
│ │ │ │ ├── suitcase2-fill.svg
│ │ │ │ ├── suitcase2.svg
│ │ │ │ ├── sun-fill.svg
│ │ │ │ ├── sun.svg
│ │ │ │ ├── sunglasses.svg
│ │ │ │ ├── sunrise-fill.svg
│ │ │ │ ├── sunrise.svg
│ │ │ │ ├── sunset-fill.svg
│ │ │ │ ├── sunset.svg
│ │ │ │ ├── superscript.svg
│ │ │ │ ├── symmetry-horizontal.svg
│ │ │ │ ├── symmetry-vertical.svg
│ │ │ │ ├── table.svg
│ │ │ │ ├── tablet-fill.svg
│ │ │ │ ├── tablet-landscape-fill.svg
│ │ │ │ ├── tablet-landscape.svg
│ │ │ │ ├── tablet.svg
│ │ │ │ ├── tag-fill.svg
│ │ │ │ ├── tag.svg
│ │ │ │ ├── tags-fill.svg
│ │ │ │ ├── tags.svg
│ │ │ │ ├── taxi-front-fill.svg
│ │ │ │ ├── taxi-front.svg
│ │ │ │ ├── telegram.svg
│ │ │ │ ├── telephone-fill.svg
│ │ │ │ ├── telephone-forward-fill.svg
│ │ │ │ ├── telephone-forward.svg
│ │ │ │ ├── telephone-inbound-fill.svg
│ │ │ │ ├── telephone-inbound.svg
│ │ │ │ ├── telephone-minus-fill.svg
│ │ │ │ ├── telephone-minus.svg
│ │ │ │ ├── telephone-outbound-fill.svg
│ │ │ │ ├── telephone-outbound.svg
│ │ │ │ ├── telephone-plus-fill.svg
│ │ │ │ ├── telephone-plus.svg
│ │ │ │ ├── telephone-x-fill.svg
│ │ │ │ ├── telephone-x.svg
│ │ │ │ ├── telephone.svg
│ │ │ │ ├── tencent-qq.svg
│ │ │ │ ├── terminal-dash.svg
│ │ │ │ ├── terminal-fill.svg
│ │ │ │ ├── terminal-plus.svg
│ │ │ │ ├── terminal-split.svg
│ │ │ │ ├── terminal-x.svg
│ │ │ │ ├── terminal.svg
│ │ │ │ ├── text-center.svg
│ │ │ │ ├── text-indent-left.svg
│ │ │ │ ├── text-indent-right.svg
│ │ │ │ ├── text-left.svg
│ │ │ │ ├── text-paragraph.svg
│ │ │ │ ├── text-right.svg
│ │ │ │ ├── text-wrap.svg
│ │ │ │ ├── textarea-resize.svg
│ │ │ │ ├── textarea-t.svg
│ │ │ │ ├── textarea.svg
│ │ │ │ ├── thermometer-half.svg
│ │ │ │ ├── thermometer-high.svg
│ │ │ │ ├── thermometer-low.svg
│ │ │ │ ├── thermometer-snow.svg
│ │ │ │ ├── thermometer-sun.svg
│ │ │ │ ├── thermometer.svg
│ │ │ │ ├── threads-fill.svg
│ │ │ │ ├── threads.svg
│ │ │ │ ├── three-dots-vertical.svg
│ │ │ │ ├── three-dots.svg
│ │ │ │ ├── thunderbolt-fill.svg
│ │ │ │ ├── thunderbolt.svg
│ │ │ │ ├── ticket-detailed-fill.svg
│ │ │ │ ├── ticket-detailed.svg
│ │ │ │ ├── ticket-fill.svg
│ │ │ │ ├── ticket-perforated-fill.svg
│ │ │ │ ├── ticket-perforated.svg
│ │ │ │ ├── ticket.svg
│ │ │ │ ├── tiktok.svg
│ │ │ │ ├── toggle-off.svg
│ │ │ │ ├── toggle-on.svg
│ │ │ │ ├── toggle2-off.svg
│ │ │ │ ├── toggle2-on.svg
│ │ │ │ ├── toggles.svg
│ │ │ │ ├── toggles2.svg
│ │ │ │ ├── tools.svg
│ │ │ │ ├── tornado.svg
│ │ │ │ ├── train-freight-front-fill.svg
│ │ │ │ ├── train-freight-front.svg
│ │ │ │ ├── train-front-fill.svg
│ │ │ │ ├── train-front.svg
│ │ │ │ ├── train-lightrail-front-fill.svg
│ │ │ │ ├── train-lightrail-front.svg
│ │ │ │ ├── translate.svg
│ │ │ │ ├── transparency.svg
│ │ │ │ ├── trash-fill.svg
│ │ │ │ ├── trash.svg
│ │ │ │ ├── trash2-fill.svg
│ │ │ │ ├── trash2.svg
│ │ │ │ ├── trash3-fill.svg
│ │ │ │ ├── trash3.svg
│ │ │ │ ├── tree-fill.svg
│ │ │ │ ├── tree.svg
│ │ │ │ ├── trello.svg
│ │ │ │ ├── triangle-fill.svg
│ │ │ │ ├── triangle-half.svg
│ │ │ │ ├── triangle.svg
│ │ │ │ ├── trophy-fill.svg
│ │ │ │ ├── trophy.svg
│ │ │ │ ├── tropical-storm.svg
│ │ │ │ ├── truck-flatbed.svg
│ │ │ │ ├── truck-front-fill.svg
│ │ │ │ ├── truck-front.svg
│ │ │ │ ├── truck.svg
│ │ │ │ ├── tsunami.svg
│ │ │ │ ├── tv-fill.svg
│ │ │ │ ├── tv.svg
│ │ │ │ ├── twitch.svg
│ │ │ │ ├── twitter-x.svg
│ │ │ │ ├── twitter.svg
│ │ │ │ ├── type-bold.svg
│ │ │ │ ├── type-h1.svg
│ │ │ │ ├── type-h2.svg
│ │ │ │ ├── type-h3.svg
│ │ │ │ ├── type-h4.svg
│ │ │ │ ├── type-h5.svg
│ │ │ │ ├── type-h6.svg
│ │ │ │ ├── type-italic.svg
│ │ │ │ ├── type-strikethrough.svg
│ │ │ │ ├── type-underline.svg
│ │ │ │ ├── type.svg
│ │ │ │ ├── ubuntu.svg
│ │ │ │ ├── ui-checks-grid.svg
│ │ │ │ ├── ui-checks.svg
│ │ │ │ ├── ui-radios-grid.svg
│ │ │ │ ├── ui-radios.svg
│ │ │ │ ├── umbrella-fill.svg
│ │ │ │ ├── umbrella.svg
│ │ │ │ ├── unindent.svg
│ │ │ │ ├── union.svg
│ │ │ │ ├── unity.svg
│ │ │ │ ├── universal-access-circle.svg
│ │ │ │ ├── universal-access.svg
│ │ │ │ ├── unlock-fill.svg
│ │ │ │ ├── unlock.svg
│ │ │ │ ├── upc-scan.svg
│ │ │ │ ├── upc.svg
│ │ │ │ ├── upload.svg
│ │ │ │ ├── usb-c-fill.svg
│ │ │ │ ├── usb-c.svg
│ │ │ │ ├── usb-drive-fill.svg
│ │ │ │ ├── usb-drive.svg
│ │ │ │ ├── usb-fill.svg
│ │ │ │ ├── usb-micro-fill.svg
│ │ │ │ ├── usb-micro.svg
│ │ │ │ ├── usb-mini-fill.svg
│ │ │ │ ├── usb-mini.svg
│ │ │ │ ├── usb-plug-fill.svg
│ │ │ │ ├── usb-plug.svg
│ │ │ │ ├── usb-symbol.svg
│ │ │ │ ├── usb.svg
│ │ │ │ ├── valentine.svg
│ │ │ │ ├── valentine2.svg
│ │ │ │ ├── vector-pen.svg
│ │ │ │ ├── view-list.svg
│ │ │ │ ├── view-stacked.svg
│ │ │ │ ├── vignette.svg
│ │ │ │ ├── vimeo.svg
│ │ │ │ ├── vinyl-fill.svg
│ │ │ │ ├── vinyl.svg
│ │ │ │ ├── virus.svg
│ │ │ │ ├── virus2.svg
│ │ │ │ ├── voicemail.svg
│ │ │ │ ├── volume-down-fill.svg
│ │ │ │ ├── volume-down.svg
│ │ │ │ ├── volume-mute-fill.svg
│ │ │ │ ├── volume-mute.svg
│ │ │ │ ├── volume-off-fill.svg
│ │ │ │ ├── volume-off.svg
│ │ │ │ ├── volume-up-fill.svg
│ │ │ │ ├── volume-up.svg
│ │ │ │ ├── vr.svg
│ │ │ │ ├── wallet-fill.svg
│ │ │ │ ├── wallet.svg
│ │ │ │ ├── wallet2.svg
│ │ │ │ ├── watch.svg
│ │ │ │ ├── water.svg
│ │ │ │ ├── webcam-fill.svg
│ │ │ │ ├── webcam.svg
│ │ │ │ ├── wechat.svg
│ │ │ │ ├── whatsapp.svg
│ │ │ │ ├── wifi-1.svg
│ │ │ │ ├── wifi-2.svg
│ │ │ │ ├── wifi-off.svg
│ │ │ │ ├── wifi.svg
│ │ │ │ ├── wikipedia.svg
│ │ │ │ ├── wind.svg
│ │ │ │ ├── window-dash.svg
│ │ │ │ ├── window-desktop.svg
│ │ │ │ ├── window-dock.svg
│ │ │ │ ├── window-fullscreen.svg
│ │ │ │ ├── window-plus.svg
│ │ │ │ ├── window-sidebar.svg
│ │ │ │ ├── window-split.svg
│ │ │ │ ├── window-stack.svg
│ │ │ │ ├── window-x.svg
│ │ │ │ ├── window.svg
│ │ │ │ ├── windows.svg
│ │ │ │ ├── wordpress.svg
│ │ │ │ ├── wrench-adjustable-circle-fill.svg
│ │ │ │ ├── wrench-adjustable-circle.svg
│ │ │ │ ├── wrench-adjustable.svg
│ │ │ │ ├── wrench.svg
│ │ │ │ ├── x-circle-fill.svg
│ │ │ │ ├── x-circle.svg
│ │ │ │ ├── x-diamond-fill.svg
│ │ │ │ ├── x-diamond.svg
│ │ │ │ ├── x-lg.svg
│ │ │ │ ├── x-octagon-fill.svg
│ │ │ │ ├── x-octagon.svg
│ │ │ │ ├── x-square-fill.svg
│ │ │ │ ├── x-square.svg
│ │ │ │ ├── x.svg
│ │ │ │ ├── xbox.svg
│ │ │ │ ├── yelp.svg
│ │ │ │ ├── yin-yang.svg
│ │ │ │ ├── youtube.svg
│ │ │ │ ├── zoom-in.svg
│ │ │ │ └── zoom-out.svg
│ │ ├── bootstrap
│ │ │ └── 5.3.3
│ │ │ │ ├── css
│ │ │ │ ├── bootstrap-grid.css
│ │ │ │ ├── bootstrap-grid.css.map
│ │ │ │ ├── bootstrap-grid.min.css
│ │ │ │ ├── bootstrap-grid.min.css.map
│ │ │ │ ├── bootstrap-grid.rtl.css
│ │ │ │ ├── bootstrap-grid.rtl.css.map
│ │ │ │ ├── bootstrap-grid.rtl.min.css
│ │ │ │ ├── bootstrap-grid.rtl.min.css.map
│ │ │ │ ├── bootstrap-reboot.css
│ │ │ │ ├── bootstrap-reboot.css.map
│ │ │ │ ├── bootstrap-reboot.min.css
│ │ │ │ ├── bootstrap-reboot.min.css.map
│ │ │ │ ├── bootstrap-reboot.rtl.css
│ │ │ │ ├── bootstrap-reboot.rtl.css.map
│ │ │ │ ├── bootstrap-reboot.rtl.min.css
│ │ │ │ ├── bootstrap-reboot.rtl.min.css.map
│ │ │ │ ├── bootstrap-utilities.css
│ │ │ │ ├── bootstrap-utilities.css.map
│ │ │ │ ├── bootstrap-utilities.min.css
│ │ │ │ ├── bootstrap-utilities.min.css.map
│ │ │ │ ├── bootstrap-utilities.rtl.css
│ │ │ │ ├── bootstrap-utilities.rtl.css.map
│ │ │ │ ├── bootstrap-utilities.rtl.min.css
│ │ │ │ ├── bootstrap-utilities.rtl.min.css.map
│ │ │ │ ├── bootstrap.css
│ │ │ │ ├── bootstrap.css.map
│ │ │ │ ├── bootstrap.min.css
│ │ │ │ ├── bootstrap.min.css.map
│ │ │ │ ├── bootstrap.rtl.css
│ │ │ │ ├── bootstrap.rtl.css.map
│ │ │ │ ├── bootstrap.rtl.min.css
│ │ │ │ └── bootstrap.rtl.min.css.map
│ │ │ │ └── js
│ │ │ │ ├── bootstrap.bundle.js
│ │ │ │ ├── bootstrap.bundle.js.map
│ │ │ │ ├── bootstrap.bundle.min.js
│ │ │ │ ├── bootstrap.bundle.min.js.map
│ │ │ │ ├── bootstrap.esm.js
│ │ │ │ ├── bootstrap.esm.js.map
│ │ │ │ ├── bootstrap.esm.min.js
│ │ │ │ ├── bootstrap.esm.min.js.map
│ │ │ │ ├── bootstrap.js
│ │ │ │ ├── bootstrap.js.map
│ │ │ │ ├── bootstrap.min.js
│ │ │ │ └── bootstrap.min.js.map
│ │ ├── hashtag-linkify.js
│ │ ├── htmx
│ │ │ ├── 1.9.11
│ │ │ │ ├── htmx.js
│ │ │ │ └── htmx.min.js
│ │ │ └── ext
│ │ │ │ └── hx-get-with-timestamp.js
│ │ ├── observe-node-insertion.js
│ │ └── toast-messages.js
│ ├── templates
│ │ ├── _crispy_form.html
│ │ ├── _crispy_form_and_formset.html
│ │ ├── _messages_as_event.html
│ │ ├── base.html
│ │ ├── crispy_form.html
│ │ ├── crispy_form_and_formset.html
│ │ ├── nextjs_base.html
│ │ └── root.html
│ ├── templatetags
│ │ └── uuid_tags.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── examples
│ ├── fib1.py
│ ├── fib2-memoization.py
│ └── fib3-using-django-cache.py
├── html
│ ├── csr-apicall.html
│ ├── csr.html
│ └── react.html
├── manage.py
├── mysite
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── photolog
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_alter_note_options_note_tags_comment.py
│ │ └── __init__.py
│ ├── models.py
│ ├── templates
│ │ └── photolog
│ │ │ ├── _comment_form.html
│ │ │ ├── _comment_list.html
│ │ │ ├── _note_list.html
│ │ │ ├── _user_follow.html
│ │ │ ├── base.html
│ │ │ ├── index.html
│ │ │ ├── note_detail.html
│ │ │ ├── user_list.html
│ │ │ └── user_page.html
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── pytest.ini
├── requirements.txt
└── requirements
│ ├── common.txt
│ ├── dev.txt
│ └── prod.txt
├── myreact01-cra
├── .gitignore
├── README.md
├── package-lock.json
├── package.json
├── public
│ ├── favicon.ico
│ ├── index.html
│ ├── logo192.png
│ ├── logo512.png
│ ├── manifest.json
│ └── robots.txt
├── scripts
│ └── deploy.mjs
└── src
│ ├── App.css
│ ├── App.js
│ ├── App.test.js
│ ├── App2.js
│ ├── App3.js
│ ├── App4.js
│ ├── App5.js
│ ├── App6.jsx
│ ├── App7.jsx
│ ├── App8.css
│ ├── App8.jsx
│ ├── api.js
│ ├── components
│ ├── Avatar.css
│ ├── Avatar.jsx
│ ├── Counter.jsx
│ ├── Footer.jsx
│ ├── IFrameModal.jsx
│ ├── Message.jsx
│ ├── Message.module.scss
│ ├── Profile.jsx
│ ├── Profile.module.scss
│ ├── Shared.scss
│ ├── TextInput.jsx
│ ├── TodoForm.jsx
│ └── TopNav.jsx
│ ├── constants.js
│ ├── contexts
│ └── StatusContext.js
│ ├── index.css
│ ├── index.js
│ ├── logo.svg
│ ├── pages
│ ├── RouterErrorPage.jsx
│ ├── blog
│ │ ├── IndexPage.jsx
│ │ ├── Layout.jsx
│ │ ├── PostDetailPage.jsx
│ │ └── data.js
│ └── todos
│ │ └── TodoList.js
│ ├── reportWebVitals.js
│ └── setupTests.js
├── myreact02-parcel
├── .gitignore
├── package-lock.json
├── package.json
└── src
│ ├── index.html
│ └── index.js
└── myreact03-daisyui
├── .gitignore
├── README.md
├── package-lock.json
├── package.json
├── public
├── favicon.ico
├── index.html
├── logo192.png
├── logo512.png
├── manifest.json
└── robots.txt
├── src
├── App.css
├── App.js
├── App.test.js
├── index.css
├── index.js
├── logo.svg
├── reportWebVitals.js
└── setupTests.js
└── tailwind.config.js
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | .env*
3 | venv
4 | db.sqlite3
5 | __pycache__
6 | staticfiles
7 | mediafiles
8 | .DS_Store
9 | .python-version
10 | draft_models.py
11 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # (인프런) 파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
2 |
3 | + 장고 4.2 기준
4 | + [강의 바로가기](https://inf.run/Fcn6n)
5 |
6 | 
7 |
8 |
--------------------------------------------------------------------------------
/banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/banner.png
--------------------------------------------------------------------------------
/mydjango01/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | venv
3 | db.sqlite3
4 | __pycache__
5 | /staticfiles
6 | /mediafiles
7 | .DS_Store
8 |
--------------------------------------------------------------------------------
/mydjango01/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | // 프로젝트/.vscode/extensions.json
2 | // - 아래 설정을 추가하면 확장 탭에서
3 | // 추천 확장으로 확인하실 수 있습니다.
4 | {
5 | "recommendations": [
6 | "ms-python.python",
7 | "ms-python.black-formatter",
8 | "batisteo.vscode-django",
9 | "Glavin001.unibeautify-vscode",
10 | "esbenp.prettier-vscode",
11 | "PKief.material-icon-theme"
12 | ]
13 | }
--------------------------------------------------------------------------------
/mydjango01/mysite/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango01/mysite/__init__.py
--------------------------------------------------------------------------------
/mydjango01/mysite/urls.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 | from django.urls import path
3 | from django.http import HttpResponse
4 |
5 |
6 | def root(request):
7 | return HttpResponse("hello vscode")
8 |
9 |
10 | urlpatterns = [
11 | path("admin/", admin.site.urls),
12 | path("", root),
13 | ]
14 |
--------------------------------------------------------------------------------
/mydjango02/melon-20230906.sqlite3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango02/melon-20230906.sqlite3
--------------------------------------------------------------------------------
/mydjango03-hottrack/hottrack/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango03-hottrack/hottrack/__init__.py
--------------------------------------------------------------------------------
/mydjango03-hottrack/hottrack/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class HottrackConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "hottrack"
7 | verbose_name = "핫트랙"
8 |
--------------------------------------------------------------------------------
/mydjango03-hottrack/hottrack/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango03-hottrack/hottrack/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango03-hottrack/hottrack/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango03-hottrack/mysite/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango03-hottrack/mysite/__init__.py
--------------------------------------------------------------------------------
/mydjango03-hottrack/requirements.txt:
--------------------------------------------------------------------------------
1 | django==4.2.7
2 | django-debug-toolbar==4.2.0
3 | requests==2.31.0
4 | pillow==10.1.0
5 | pandas==2.1.3
6 |
--------------------------------------------------------------------------------
/mydjango04/accounts/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/accounts/__init__.py
--------------------------------------------------------------------------------
/mydjango04/accounts/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 | from .models import User, SuperUser, Profile
3 |
4 |
5 | @admin.register(User)
6 | class UserAdmin(admin.ModelAdmin):
7 | pass
8 |
9 |
10 | @admin.register(SuperUser)
11 | class SuperUserAdmin(admin.ModelAdmin):
12 | pass
13 |
14 |
15 | @admin.register(Profile)
16 | class ProfileAdmin(admin.ModelAdmin):
17 | pass
18 |
--------------------------------------------------------------------------------
/mydjango04/accounts/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class AccountsConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "accounts"
7 |
--------------------------------------------------------------------------------
/mydjango04/accounts/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/accounts/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/accounts/templates/accounts/password_change_form.html:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/mydjango04/accounts/templates/accounts/password_reset_email.html:
--------------------------------------------------------------------------------
1 | {% extends "registration/password_reset_email.html" %}
2 |
3 | {% block reset_link %}
4 | {{ protocol }}://{{ domain }}{% url 'accounts:password_reset_confirm' uidb64=uid token=token %}
5 | {% endblock %}
6 |
--------------------------------------------------------------------------------
/mydjango04/accounts/templates/accounts/signup_form.html:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/mydjango04/accounts/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/blog/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/blog/__init__.py
--------------------------------------------------------------------------------
/mydjango04/blog/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class BlogConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "blog"
7 |
--------------------------------------------------------------------------------
/mydjango04/blog/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/blog/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/blog/templates/blog/post_new.html:
--------------------------------------------------------------------------------
1 |
2 | {{ errors }}
3 |
4 |
5 | request.GET: {{ request.GET }}
6 | request.POST: {{ request.POST }}
7 | request.FILES: {{ request.FILES }}
--------------------------------------------------------------------------------
/mydjango04/blog/templates/blog/tag_form.html:
--------------------------------------------------------------------------------
1 | {# blog/templates/blog/tag_form.html #}
2 |
3 | {% extends "blog/base.html" %}
4 |
5 | {% block title %}태그 폼{% endblock %}
6 |
7 | {% block content %}
8 | 태그 폼
9 | {% include "blog/_tag_form.html" %}
10 | {% endblock %}
--------------------------------------------------------------------------------
/mydjango04/blog/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/cafe/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/cafe/__init__.py
--------------------------------------------------------------------------------
/mydjango04/cafe/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/cafe/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class CafeConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "cafe"
7 |
--------------------------------------------------------------------------------
/mydjango04/cafe/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/cafe/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/cafe/models.py:
--------------------------------------------------------------------------------
1 | from django.db import models
2 |
3 | # Create your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/cafe/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/cafe/urls.py:
--------------------------------------------------------------------------------
1 | from django.urls import path
2 | from . import views
3 |
4 | app_name = "cafe"
5 |
6 | urlpatterns = [
7 | path("", views.coffee_stamp, name="coffee_stamp"),
8 | path("free-coffee/", views.coffee_free, name="coffee_free"),
9 | ]
10 |
--------------------------------------------------------------------------------
/mydjango04/components/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/components/__init__.py
--------------------------------------------------------------------------------
/mydjango04/components/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/components/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class ComponentsConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "components"
7 |
--------------------------------------------------------------------------------
/mydjango04/components/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/components/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/components/models.py:
--------------------------------------------------------------------------------
1 | from django.db import models
2 |
3 | # Create your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/components/src-django-components/hello_world/hello_world.css:
--------------------------------------------------------------------------------
1 | /* components/src-django-components/hello_world/hello_world.css */
2 | /* - 각 컴포넌트마다 반복되는 것이 아니라, 웹페이지에서 1회만 수행 */
3 |
4 | .hello-world-component { display: inline-block; border: 1px dashed #ccc; padding: 10px; }
5 | .hello-world-component h1 { cursor: pointer; color: blue; margin: 0; }
6 | .hello-world-component h1:hover { color: red; }
7 |
--------------------------------------------------------------------------------
/mydjango04/components/src-django-components/hello_world/hello_world.html:
--------------------------------------------------------------------------------
1 | {# components/src-django-components/hello_world/hello_world.html #}
2 |
3 |
4 |
Hello - {{ name|default:"익명" }}
5 |
6 |
--------------------------------------------------------------------------------
/mydjango04/components/src-django-components/hello_world/hello_world.js:
--------------------------------------------------------------------------------
1 | /* components/src-django-components/hello_world/hello_world.js */
2 | /* - 각 컴포넌트마다 반복되는 것이 아니라, 웹페이지에서 1회만 수행 */
3 |
4 | (function () {
5 | document.querySelectorAll(".hello-world-component h1").forEach(el => {
6 | el.onclick = function (e) {
7 | alert(e.target.textContent);
8 | };
9 | });
10 | })()
11 |
--------------------------------------------------------------------------------
/mydjango04/components/static/components-pure/hello-world.css:
--------------------------------------------------------------------------------
1 | /* components/static/components-pure/hello-world.css */
2 |
3 | .hello-world-component { display: inline-block; border: 1px dashed #ccc; padding: 10px; }
4 | .hello-world-component h1 { cursor: pointer; color: blue; margin: 0; }
5 | .hello-world-component h1:hover { color: red; }
6 |
--------------------------------------------------------------------------------
/mydjango04/components/static/components-pure/hello-world.js:
--------------------------------------------------------------------------------
1 | /* components/static/components-pure/hello-world.js */
2 |
3 | (function () {
4 | document.querySelectorAll(".hello-world-component h1").forEach(el => {
5 | el.onclick = function (e) {
6 | alert(e.target.textContent);
7 | };
8 | });
9 | })()
--------------------------------------------------------------------------------
/mydjango04/components/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/components/views.py:
--------------------------------------------------------------------------------
1 | from django.shortcuts import render
2 |
3 | # Create your views here.
4 |
--------------------------------------------------------------------------------
/mydjango04/core/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/core/__init__.py
--------------------------------------------------------------------------------
/mydjango04/core/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/core/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class CoreConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "core"
7 |
--------------------------------------------------------------------------------
/mydjango04/core/crispy_bootstrap5_ext/layout.py:
--------------------------------------------------------------------------------
1 | from crispy_forms.bootstrap import TabHolder
2 |
3 |
4 | class BorderedTabHolder(TabHolder):
5 | template = "core/crispy_bootstrap5_ext/layout/tab.html"
6 |
--------------------------------------------------------------------------------
/mydjango04/core/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/core/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/core/models.py:
--------------------------------------------------------------------------------
1 | from django.db import models
2 |
3 | # Create your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/core/static/core/star-rating-js/img/star-empty.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/mydjango04/core/static/core/star-rating-js/img/star-full.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/mydjango04/core/templates/core/forms/widgets/horizontal_radio.html:
--------------------------------------------------------------------------------
1 |
7 |
8 | {% include "django/forms/widgets/radio.html" %}
9 |
--------------------------------------------------------------------------------
/mydjango04/core/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/core/urls.py:
--------------------------------------------------------------------------------
1 | # core/urls.py
2 |
3 | from django.urls import path
4 | from . import views
5 |
6 | app_name = "core" # URL Reverse를 위한 Namespace 지정
7 |
8 | urlpatterns = [
9 | path("", views.index, name="index"), # URL Reverse를 위한 URL Pattern명 지정
10 | ]
11 |
--------------------------------------------------------------------------------
/mydjango04/core/views.py:
--------------------------------------------------------------------------------
1 | from django.contrib import messages
2 | from django.shortcuts import render
3 |
4 |
5 | def index(request):
6 | messages.debug(request, "디버그 메시지")
7 | messages.info(request, "정보 메시지")
8 | messages.success(request, "성공 메시지")
9 | messages.warning(request, "경고 메시지")
10 | messages.error(request, "에러 메시지")
11 |
12 | return render(request, "core/index.html")
13 |
--------------------------------------------------------------------------------
/mydjango04/hottrack/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/hottrack/__init__.py
--------------------------------------------------------------------------------
/mydjango04/hottrack/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class HottrackConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "hottrack"
7 | verbose_name = "핫트랙"
8 |
--------------------------------------------------------------------------------
/mydjango04/hottrack/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/hottrack/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/hottrack/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/mysite/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/mysite/__init__.py
--------------------------------------------------------------------------------
/mydjango04/school/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/school/__init__.py
--------------------------------------------------------------------------------
/mydjango04/school/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/school/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class SchoolConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "school"
7 |
--------------------------------------------------------------------------------
/mydjango04/school/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/school/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/school/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/school/views.py:
--------------------------------------------------------------------------------
1 | from django.shortcuts import render
2 |
3 | # Create your views here.
4 |
--------------------------------------------------------------------------------
/mydjango04/shop/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/shop/__init__.py
--------------------------------------------------------------------------------
/mydjango04/shop/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/mydjango04/shop/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class ShopConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "shop"
7 |
--------------------------------------------------------------------------------
/mydjango04/shop/migrations/0003_auto_20231214_0823.py:
--------------------------------------------------------------------------------
1 | # Generated by Django 4.2.7 on 2023-12-14 08:23
2 |
3 | from django.db import migrations
4 |
5 |
6 | class Migration(migrations.Migration):
7 | dependencies = [
8 | ("shop", "0002_insert_zipcode_data"),
9 | ]
10 |
11 | operations = []
12 |
--------------------------------------------------------------------------------
/mydjango04/shop/migrations/0004_auto_20231214_0823.py:
--------------------------------------------------------------------------------
1 | # Generated by Django 4.2.7 on 2023-12-14 08:23
2 |
3 | from django.db import migrations
4 |
5 |
6 | class Migration(migrations.Migration):
7 | dependencies = [
8 | ("shop", "0003_auto_20231214_0823"),
9 | ]
10 |
11 | operations = []
12 |
--------------------------------------------------------------------------------
/mydjango04/shop/migrations/0005_auto_20231214_0823.py:
--------------------------------------------------------------------------------
1 | # Generated by Django 4.2.7 on 2023-12-14 08:23
2 |
3 | from django.db import migrations
4 |
5 |
6 | class Migration(migrations.Migration):
7 | dependencies = [
8 | ("shop", "0004_auto_20231214_0823"),
9 | ]
10 |
11 | operations = []
12 |
--------------------------------------------------------------------------------
/mydjango04/shop/migrations/0006_auto_20231214_0823.py:
--------------------------------------------------------------------------------
1 | # Generated by Django 4.2.7 on 2023-12-14 08:23
2 |
3 | from django.db import migrations
4 |
5 |
6 | class Migration(migrations.Migration):
7 | dependencies = [
8 | ("shop", "0005_auto_20231214_0823"),
9 | ]
10 |
11 | operations = []
12 |
--------------------------------------------------------------------------------
/mydjango04/shop/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/shop/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/shop/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mydjango04/shop/urls.py:
--------------------------------------------------------------------------------
1 | from django.urls import path
2 | from . import views
3 |
4 |
5 | urlpatterns = [
6 | path("travel/current/update/", views.current_travel_edit),
7 | ]
8 |
--------------------------------------------------------------------------------
/mydjango04/weblog/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/weblog/__init__.py
--------------------------------------------------------------------------------
/mydjango04/weblog/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class WeblogConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "weblog"
7 |
--------------------------------------------------------------------------------
/mydjango04/weblog/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mydjango04/weblog/migrations/__init__.py
--------------------------------------------------------------------------------
/mydjango04/weblog/templates/weblog/post_confirm_delete.html:
--------------------------------------------------------------------------------
1 | 포스팅 삭제
2 |
3 |
15 |
--------------------------------------------------------------------------------
/mydjango04/weblog/templates/weblog/post_detail.html:
--------------------------------------------------------------------------------
1 | {{ post.title }}
2 |
3 | {{ post.content }}
4 |
5 |
6 |
7 | 수정하기
8 | 삭제하기
9 |
--------------------------------------------------------------------------------
/mydjango04/weblog/templates/weblog/post_form.html:
--------------------------------------------------------------------------------
1 | {{ form.media }}
2 |
3 | Post Form
4 |
5 |
12 |
--------------------------------------------------------------------------------
/mydjango04/weblog/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/mynextjs/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "next/core-web-vitals"
3 | }
4 |
--------------------------------------------------------------------------------
/mynextjs/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "paths": {
4 | "@/*": ["./src/*"]
5 | }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/mynextjs/next.config.mjs:
--------------------------------------------------------------------------------
1 | /** @type {import('next').NextConfig} */
2 | const nextConfig = {
3 | trailingSlash: true,
4 | };
5 |
6 | export default nextConfig;
7 |
--------------------------------------------------------------------------------
/mynextjs/postcss.config.mjs:
--------------------------------------------------------------------------------
1 | /** @type {import('postcss-load-config').Config} */
2 | const config = {
3 | plugins: {
4 | tailwindcss: {},
5 | },
6 | };
7 |
8 | export default config;
9 |
--------------------------------------------------------------------------------
/mynextjs/src/app/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/mynextjs/src/app/favicon.ico
--------------------------------------------------------------------------------
/myproj/.gitignore:
--------------------------------------------------------------------------------
1 | .parcel-cache
2 | node_modules
3 |
--------------------------------------------------------------------------------
/myproj/accounts/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/accounts/__init__.py
--------------------------------------------------------------------------------
/myproj/accounts/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 | from django.contrib.auth.admin import UserAdmin as DjangoUserAdmin
3 | from .models import User
4 |
5 |
6 | @admin.register(User)
7 | class UserAdmin(DjangoUserAdmin):
8 | pass
9 |
--------------------------------------------------------------------------------
/myproj/accounts/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class AccountsConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "accounts"
7 |
--------------------------------------------------------------------------------
/myproj/accounts/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/accounts/migrations/__init__.py
--------------------------------------------------------------------------------
/myproj/accounts/templates/accounts/base.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
--------------------------------------------------------------------------------
/myproj/accounts/templates/accounts/welcome_email/content.txt:
--------------------------------------------------------------------------------
1 | {{ username }}님. 서비스 가입을 환영합니다.
2 |
3 | - 운영자 드림
--------------------------------------------------------------------------------
/myproj/accounts/templates/accounts/welcome_email/subject.txt:
--------------------------------------------------------------------------------
1 | 서비스 가입을 환영합니다.
2 |
--------------------------------------------------------------------------------
/myproj/accounts/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/myproj/accounts/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/accounts/tests/__init__.py
--------------------------------------------------------------------------------
/myproj/blog/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/blog/__init__.py
--------------------------------------------------------------------------------
/myproj/blog/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 | from .models import Post, Comment, Todo
3 |
4 |
5 | @admin.register(Post)
6 | class PostAdmin(admin.ModelAdmin):
7 | pass
8 |
9 |
10 | @admin.register(Comment)
11 | class CommentAdmin(admin.ModelAdmin):
12 | pass
13 |
14 |
15 | @admin.register(Todo)
16 | class TodoAdmin(admin.ModelAdmin):
17 | pass
18 |
--------------------------------------------------------------------------------
/myproj/blog/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class BlogConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "blog"
7 |
--------------------------------------------------------------------------------
/myproj/blog/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/blog/migrations/__init__.py
--------------------------------------------------------------------------------
/myproj/blog/templates/blog/index.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
3 | {% block content %}
4 | blog/index.html 템플릿
5 |
6 |
7 | {% for post in post_list %}
8 | - {{ post.title }}
9 | {% endfor %}
10 |
11 | {% endblock %}
12 |
--------------------------------------------------------------------------------
/myproj/blog/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/myproj/blog/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/blog/tests/__init__.py
--------------------------------------------------------------------------------
/myproj/core/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/core/__init__.py
--------------------------------------------------------------------------------
/myproj/core/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | # Register your models here.
4 |
--------------------------------------------------------------------------------
/myproj/core/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class CoreConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "core"
7 |
--------------------------------------------------------------------------------
/myproj/core/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/core/migrations/__init__.py
--------------------------------------------------------------------------------
/myproj/core/models.py:
--------------------------------------------------------------------------------
1 | from django.db import models
2 |
3 | # Create your models here.
4 |
--------------------------------------------------------------------------------
/myproj/core/react_components_map.py:
--------------------------------------------------------------------------------
1 | # react-components 명령을 통해 자동 생성되는 파일입니다.
2 | mapper = {
3 | "hello_world.html": {
4 | "css": [
5 | "react_dist/hello_world.38d394c2.css"
6 | ],
7 | "js": [
8 | "react_dist/hello_world.771e87f6.js"
9 | ]
10 | }
11 | }
--------------------------------------------------------------------------------
/myproj/core/src-django-components/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/core/src-django-components/__init__.py
--------------------------------------------------------------------------------
/myproj/core/src-django-components/carousel/carousel.css:
--------------------------------------------------------------------------------
1 |
2 | .carousel-component .carousel-indicators [data-bs-target] {
3 | width: 12px;
4 | height: 12px;
5 | border-radius: 50%;
6 | }
7 |
8 | .carousel-component img {
9 | user-select: none;
10 | pointer-events: none;
11 | }
12 |
--------------------------------------------------------------------------------
/myproj/core/src-django-components/hello_world/hello_world.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/src-django-components/modal_form/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/core/src-django-components/modal_form/__init__.py
--------------------------------------------------------------------------------
/myproj/core/src-django-components/modal_form/modal_form.py:
--------------------------------------------------------------------------------
1 | from django_components import register, Component
2 |
3 |
4 | @register("modal-form")
5 | class ModalForm(Component):
6 | template_name = "modal_form/modal_form.html"
7 |
8 | class Media:
9 | js = [
10 | "observe-node-insertion.js",
11 | "modal_form/modal_form.js",
12 | ]
13 |
--------------------------------------------------------------------------------
/myproj/core/src-django-components/react_dist/hello_world.38d394c2.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/core/src-django-components/react_dist/hello_world.38d394c2.css
--------------------------------------------------------------------------------
/myproj/core/src-django-components/react_dist/hello_world.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/src-react-components/src/hello_world.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/myproj/core/src-react-components/src/hello_world.module.css:
--------------------------------------------------------------------------------
1 | .container {
2 | }
3 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/1-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/1-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/1-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/7-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/7-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/7-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/align-bottom.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/align-center.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/align-end.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/align-middle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/align-start.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/align-top.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/alt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/amd.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/app.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/archive-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-90deg-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-90deg-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-90deg-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-90deg-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-clockwise.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-down-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-down-left-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-down-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-down-right-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-down-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-down-short.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-left-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-left-short.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-right-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-right-short.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-up-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-up-left-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-up-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-up-right-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-up-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-up-short.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrow-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/arrows.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/asterisk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/back.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bag-dash-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bag-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bag-heart-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/ban-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/ban.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bar-chart-line-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bar-chart-line.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/battery.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bell-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bookmark-dash-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bookmark-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bookmark-heart-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bookmark.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bookshelf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/border-all.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bounding-box.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/box2-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/box2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/brilliance.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/bucket-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/calendar-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/calendar-minus-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/calendar-range-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/calendar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/calendar3-event-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/calendar3-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/calendar3-range-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/camera-video-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/capsule.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-down-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-down-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-left-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-left-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-right-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-right-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-up-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-up-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/caret-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/cash.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-left-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-left-heart-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-right-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-right-heart-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chat-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/check-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/check-lg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/check.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/check2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-bar-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-compact-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-compact-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-compact-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-compact-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/chevron-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/circle-half.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/clock-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/clock.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/cloud-fog2-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/cloudy-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/code.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/columns.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/compass-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/compass.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/cone.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/credit-card-2-back-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/credit-card-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/crop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/currency-yen.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/cursor-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/cursor.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dash-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dash-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dash-lg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dash-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dash.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/diamond-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dice-1-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dice-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dice-2-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dice-3-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/disc-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/display-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/displayport-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/door-closed-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/door-closed.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/dot.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/easel3-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/easel3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/egg-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/eject-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/emoji-expressionless-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/envelope-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/exclamation-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/exclamation-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/exclamation-lg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/exclamation.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/exclude.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/explicit-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/exposure.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/eye-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-arrow-up-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-break-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-check-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-earmark-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-earmark-minus-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-earmark-ruled-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-earmark.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-minus-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-person.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-play-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-plus-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-post-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-ppt-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-ruled-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-ruled.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file-spreadsheet-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/file.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/files-alt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/film.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/filter-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/filter-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/filter-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/filter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/font/fonts/bootstrap-icons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/core/static/bootstrap-icons/1.11.3/font/fonts/bootstrap-icons.woff
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/font/fonts/bootstrap-icons.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/core/static/bootstrap-icons/1.11.3/font/fonts/bootstrap-icons.woff2
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/fonts.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/forward-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/front.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/funnel-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/gender-female.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/gender-male.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/gender-neuter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/geo-alt-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/graph-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/h-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/h-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/h-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/headphones.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/heart-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/heartbreak-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/hexagon-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/hexagon-half.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/hexagon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/hr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/hurricane.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/image-alt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/key-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/ladder.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/laptop-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/laptop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/layout-sidebar-reverse.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/layout-sidebar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/layout-split.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/lightning-charge-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/lightning-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/list-nested.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/list.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/lock-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/lock.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/magnet-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/magnet.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/mask.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/microsoft.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/mouse-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/mouse.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/mouse2-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/music-note.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/nut-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/option.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/paperclip.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/paragraph.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pass-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pause-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pause-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pause.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/peace-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pentagon-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/person-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/person-dash-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/person-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/person-heart.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/phone-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/phone-landscape-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/phone-landscape.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/phone.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pie-chart-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pie-chart.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/pip-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/play-btn-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/play-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/play-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/play-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/play.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/plus-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/plus-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/plus-lg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/plus-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/plus.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/power.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record-btn-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record-btn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record2-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/record2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/reply-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/rulers.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/save2-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/search.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/segmented-nav.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/send.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/share-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/shift-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/shift.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/sign-intersection-t-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/signpost-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/signpost-split-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/signpost.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-end-btn-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-end-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-end-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-end.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-start-btn-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-start-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-start-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/skip-start.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/slash-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/slash-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/slash-lg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/slash-square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/slash.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/square-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/square-half.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/square.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/stop-btn-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/stop-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/stop-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/stop-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/stop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/strava.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/substack.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/subtract.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/suit-diamond-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/suit-heart-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/symmetry-horizontal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/symmetry-vertical.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/table.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/tablet-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/tablet-landscape-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/tablet-landscape.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/tablet.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/tag-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/three-dots-vertical.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/three-dots.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/tiktok.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/toggle-off.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/toggle-on.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/toggle2-off.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/toggle2-on.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/triangle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/tv-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/twitch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/twitter-x.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/type-h1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/type-h4.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/type-italic.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/type-underline.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/union.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/unlock-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/unlock.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/usb-c-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/usb-c.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/usb-drive-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/usb-drive.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/usb-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/usb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/vinyl-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/vinyl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/voicemail.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/volume-off-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/windows.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/x-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/x-lg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/bootstrap-icons/1.11.3/x.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/myproj/core/static/hashtag-linkify.js:
--------------------------------------------------------------------------------
1 | (function() {
2 | observeNodeInsertion("[data-hashtag-linkify]", el => {
3 | const link = el.getAttribute("data-hashtag-linkify") || "";
4 | let html = el.innerHTML;
5 | const replacement = `#$1`;
6 | html = html.replace(/#([\wㄱ-힣]+)/g, replacement);
7 | el.innerHTML = html;
8 | });
9 | })();
--------------------------------------------------------------------------------
/myproj/core/templates/crispy_form.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 | {% load crispy_forms_tags %}
3 |
4 | {% block content %}
5 | {% include "_crispy_form.html" with form=form form_title=form_title %}
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/myproj/core/templates/crispy_form_and_formset.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 | {% load crispy_forms_tags %}
3 |
4 | {% block content %}
5 | {% include "_crispy_form_and_formset.html" with form=form formset=formset form_title=form_title form_submit_label=form_submit_label %}
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/myproj/core/templates/root.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 | {% load component_tags %}
3 |
4 | {% block content %}
5 | root.html
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/myproj/core/templatetags/uuid_tags.py:
--------------------------------------------------------------------------------
1 | from django import template
2 | import uuid
3 |
4 | register = template.Library()
5 |
6 |
7 | @register.simple_tag
8 | def generate_uuid4(prefix=None, length=None) -> str:
9 | uuid4_hex = uuid.uuid4().hex
10 | if length:
11 | uuid4_hex = uuid4_hex[:length]
12 | return (prefix or "") + uuid4_hex
13 |
--------------------------------------------------------------------------------
/myproj/core/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/myproj/core/urls.py:
--------------------------------------------------------------------------------
1 | from django.urls import path
2 | from django.views.generic import TemplateView
3 |
4 | from . import views
5 |
6 | app_name = "core"
7 |
8 | urlpatterns = [
9 | # path("", TemplateView.as_view(template_name="root.html"), name="root"),
10 | ]
11 |
--------------------------------------------------------------------------------
/myproj/core/views.py:
--------------------------------------------------------------------------------
1 | from django.shortcuts import render
2 |
3 | # Create your views here.
4 |
--------------------------------------------------------------------------------
/myproj/mysite/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/mysite/__init__.py
--------------------------------------------------------------------------------
/myproj/photolog/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/photolog/__init__.py
--------------------------------------------------------------------------------
/myproj/photolog/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 | from .models import Note, Photo
3 |
4 |
5 | @admin.register(Note)
6 | class NoteAdmin(admin.ModelAdmin):
7 | list_display = ["title"]
8 |
9 |
10 | @admin.register(Photo)
11 | class PhotoAdmin(admin.ModelAdmin):
12 | pass
13 |
--------------------------------------------------------------------------------
/myproj/photolog/apps.py:
--------------------------------------------------------------------------------
1 | from django.apps import AppConfig
2 |
3 |
4 | class PhotologConfig(AppConfig):
5 | default_auto_field = "django.db.models.BigAutoField"
6 | name = "photolog"
7 |
--------------------------------------------------------------------------------
/myproj/photolog/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myproj/photolog/migrations/__init__.py
--------------------------------------------------------------------------------
/myproj/photolog/templates/photolog/base.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
3 | {% block content %}
4 | {% block photolog-content %}
5 | {% endblock %}
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/myproj/photolog/templates/photolog/index.html:
--------------------------------------------------------------------------------
1 | {% extends "photolog/base.html" %}
2 | {% load component_tags %}
3 |
4 | {% block photolog-content %}
5 | {% include "photolog/_note_list.html" with note_list=note_list %}
6 | {% endblock %}
--------------------------------------------------------------------------------
/myproj/photolog/tests.py:
--------------------------------------------------------------------------------
1 | from django.test import TestCase
2 |
3 | # Create your tests here.
4 |
--------------------------------------------------------------------------------
/myproj/pytest.ini:
--------------------------------------------------------------------------------
1 | [pytest]
2 | DJANGO_SETTINGS_MODULE = mysite.settings
3 | python_files = test_*.py
4 | testpaths = ./*/tests
5 | addopts = --testdox
6 |
--------------------------------------------------------------------------------
/myproj/requirements.txt:
--------------------------------------------------------------------------------
1 | -r requirements/prod.txt
2 |
--------------------------------------------------------------------------------
/myproj/requirements/dev.txt:
--------------------------------------------------------------------------------
1 | -r common.txt
2 |
3 | django-debug-toolbar==4.3.0
4 | ipython
5 |
--------------------------------------------------------------------------------
/myproj/requirements/prod.txt:
--------------------------------------------------------------------------------
1 | -r common.txt
2 |
3 | psycopg2-binary
4 |
5 | gunicorn
6 |
7 | uvicorn[standard]
8 |
9 | sentry-sdk[django]
10 |
--------------------------------------------------------------------------------
/myreact01-cra/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myreact01-cra/public/favicon.ico
--------------------------------------------------------------------------------
/myreact01-cra/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myreact01-cra/public/logo192.png
--------------------------------------------------------------------------------
/myreact01-cra/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myreact01-cra/public/logo512.png
--------------------------------------------------------------------------------
/myreact01-cra/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/myreact01-cra/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from '@testing-library/react';
2 | import App from './App';
3 |
4 | test('renders learn react link', () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/myreact01-cra/src/App5.js:
--------------------------------------------------------------------------------
1 | import TodoList from "./pages/todos/TodoList";
2 |
3 | function App() {
4 | return ;
5 | }
6 |
7 | export default App;
8 |
--------------------------------------------------------------------------------
/myreact01-cra/src/App6.jsx:
--------------------------------------------------------------------------------
1 | import Counter from "./components/Counter";
2 |
3 | function App() {
4 | return ;
5 | }
6 |
7 | export default App;
8 |
--------------------------------------------------------------------------------
/myreact01-cra/src/App8.css:
--------------------------------------------------------------------------------
1 | .nav-links .active {
2 | background-color: yellow;
3 | }
4 |
--------------------------------------------------------------------------------
/myreact01-cra/src/components/Footer.jsx:
--------------------------------------------------------------------------------
1 | function Footer() {
2 | const year = new Date().getFullYear();
3 | return ;
4 | }
5 |
6 | export default Footer;
7 |
--------------------------------------------------------------------------------
/myreact01-cra/src/components/Message.jsx:
--------------------------------------------------------------------------------
1 | // components/Message.jsx
2 |
3 | import Styles from "./Message.module.scss";
4 |
5 | function Message() {
6 | return Message 컴포넌트
;
7 | }
8 |
9 | export default Message;
10 |
--------------------------------------------------------------------------------
/myreact01-cra/src/components/Message.module.scss:
--------------------------------------------------------------------------------
1 | /* components/Message.module.css */
2 |
3 | @import "./Shared";
4 |
5 | .wrapper {
6 | color: lighten($text-color, 30%);
7 | background-color: lighten($background-color, 30%);
8 | }
9 |
--------------------------------------------------------------------------------
/myreact01-cra/src/components/Profile.jsx:
--------------------------------------------------------------------------------
1 | // components/Profile.jsx
2 |
3 | import Styles from "./Profile.module.scss";
4 |
5 | function Profile() {
6 | return Profile 컴포넌트
;
7 | }
8 |
9 | export default Profile;
10 |
--------------------------------------------------------------------------------
/myreact01-cra/src/components/Profile.module.scss:
--------------------------------------------------------------------------------
1 | /* components/Profile.module.css */
2 |
3 | @import "./Shared";
4 |
5 | .wrapper {
6 | color: darken($text-color, 30%);
7 | background-color: darken($background-color, 30%);
8 | }
9 |
--------------------------------------------------------------------------------
/myreact01-cra/src/components/Shared.scss:
--------------------------------------------------------------------------------
1 | $text-color: orange;
2 | $background-color: gray;
3 |
--------------------------------------------------------------------------------
/myreact01-cra/src/pages/blog/Layout.jsx:
--------------------------------------------------------------------------------
1 | import { Outlet } from "react-router-dom";
2 |
3 | function Layout() {
4 | return (
5 |
6 |
블로그
7 |
8 |
9 | );
10 | }
11 |
12 | export default Layout;
13 |
--------------------------------------------------------------------------------
/myreact01-cra/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom';
6 |
--------------------------------------------------------------------------------
/myreact02-parcel/.gitignore:
--------------------------------------------------------------------------------
1 | .parcel-cache
2 | node_modules
3 | dist
4 |
--------------------------------------------------------------------------------
/myreact02-parcel/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "scripts": {
3 | "start": "parcel src/index.html"
4 | },
5 | "devDependencies": {
6 | "parcel": "^2.12.0",
7 | "process": "^0.11.10"
8 | },
9 | "dependencies": {
10 | "react": "^18.3.1",
11 | "react-dom": "^18.3.1"
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/myreact02-parcel/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/myreact02-parcel/src/index.js:
--------------------------------------------------------------------------------
1 | // src/index.js
2 |
3 | import {createRoot} from "react-dom/client";
4 |
5 | function App() {
6 | return (
7 |
8 |
Hello React.
9 |
10 | );
11 | }
12 |
13 | // js 단에서 리액트 컴포넌트를 렌더링할 요소를 지정
14 | const rootEl = document.getElementById("root");
15 | const root = createRoot(rootEl)
16 | root.render();
17 |
--------------------------------------------------------------------------------
/myreact03-daisyui/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myreact03-daisyui/public/favicon.ico
--------------------------------------------------------------------------------
/myreact03-daisyui/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myreact03-daisyui/public/logo192.png
--------------------------------------------------------------------------------
/myreact03-daisyui/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyhub-kr/course-django-complete-guide-v3/c0d965ac1a1df9a33986b70ff6d8a65e8b699fc9/myreact03-daisyui/public/logo512.png
--------------------------------------------------------------------------------
/myreact03-daisyui/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/myreact03-daisyui/src/App.js:
--------------------------------------------------------------------------------
1 | import {Button} from "react-daisyui";
2 |
3 | function App() {
4 | return (
5 |
6 |
7 | Hello world!
8 |
9 |
10 |
11 | );
12 | }
13 |
14 | export default App;
15 |
--------------------------------------------------------------------------------
/myreact03-daisyui/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from '@testing-library/react';
2 | import App from './App';
3 |
4 | test('renders learn react link', () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/myreact03-daisyui/src/index.css:
--------------------------------------------------------------------------------
1 | @tailwind base;
2 | @tailwind components;
3 | @tailwind utilities;
4 |
--------------------------------------------------------------------------------
/myreact03-daisyui/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom';
6 |
--------------------------------------------------------------------------------
/myreact03-daisyui/tailwind.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 | module.exports = {
3 | content: [
4 | "./src/**/*.{js,jsx,ts,tsx}",
5 | 'node_modules/daisyui/dist/**/*.js',
6 | 'node_modules/react-daisyui/dist/**/*.js',
7 | ],
8 | theme: {
9 | extend: {},
10 | },
11 | plugins: [
12 | require('daisyui'),
13 | ],
14 | }
15 |
16 |
--------------------------------------------------------------------------------