- Astro 53.5%
- TypeScript 43%
- CSS 2.7%
- JavaScript 0.8%
| .forgejo/workflows | ||
| .vscode | ||
| content | ||
| public | ||
| src | ||
| .gitignore | ||
| .prettierrc | ||
| astro.config.mjs | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
Salor; land
Небольшой сайт для нашего прекрасного творческого сообщества.
У каждого уважающего себя сообщества есть точка входа. Куда могут зайти пользователи и узнать побольше о нас. Чем занимается дружное сообщество, какие у него планы и цели.
Также сайт позиционирует себя как творческая площадка для участником. Потому помимо новостей и календаря событий, на нём также присутствует пользовательские страницы. Их можно расценивать как некоторое подобие форума для участников.
Возможности:
- Главная страница с динамическими новостями.
- Календарь событий. С просмотром всех прошедших и предстоящих событий на месяц.
- Пользовательские страницы. Где каждый участник может творить историю.
- Доска объявлений: Будьте в курсе всего что происходит.
Техническая часть из которых состоит сайт:
- Astro каркас сайта.
- React для реактивных компонентов.
- Tailwindcss быстрое написание стилей для сайта.
- Lucide набор красивых иконок.
- Markdown язык разметки для страниц.
Сборка
Чтобы собрать сайт локально, начнём с клонирования репозитория:
git clone https://git.miroq.ru/salor/site
Устанавливаем необходимые зависимости для запуска через bun:
bun install
Запускаем тестовую среду для отладки сайта с авто перезагрузкой при изменениях:
bun dev
Для того чтобы собрать готовый сайт:
bun run build
Вот и всё, ничего как видите сложного в этом нету. По крайней мере для тех кто разбирается в этом.
Структура проекта
Давайте теперь разберёмся где и что лежит. Рассмотрим только часто используемые директории:
├── content/ - Динамические данные, участвующие в сборке сайта.
│ ├── pages/ - Пользовательские страницы в формате md/mdx.
│ ├── announces.json - Список анонсов на главной странице.
│ └── events.json - СОбытия для календаря.
├── src/ - Исходный код сайта на Astro + React.
│ ├── features/ - Разделённый по доменам функционал.
│ ├── pages/ - Страницы сайта, собирающие компоненты воедино.
│ └── shared/ - Часто используемые примитивные компоненты.
├── public/ - Статические файлы, участвующие в сборке (лого).
└── package.json - Описание astro проекта.
Разработка
Немного про то, как записать свои изменения.
Предположим что у вас уже есть необходимые навыки.
Вы можете изменить файлы в content и src.
- Выполняете
bun formatчтобы форматировать все файлы через prettier. Он позволяет поддерживать единый стиль кода в проекте. - Выполняете
bun lintиbun checkчтобы убедиться что в проекте нету ошибок. Если они есть, то для начала стоит их исправить. - Проводите локальную сборку сайта при помощи
bun run build. - Если сборка прошла успешно, можно делать отправку в репозиторий.
Более подробно о разработке вы можете узнать creative.
Поддержка
Проект предоставляется под свободной лицензией GPL-3.0-or-later.
Если вы желаете привнести свой вклад в развитие, мы будем только рады.
Есть несколько способов помочь нам:
- Принять участие в бета-тестировании.
- Писать свои пользовательские страницы.
- Расширять функционал сайта.
Давайте вместе сделаем наш дом приятнее.
