Skip to content

Commit 7ca91df

Browse files
committed
docs: refresh readme with stack and content guidance
1 parent d28f774 commit 7ca91df

File tree

1 file changed

+36
-118
lines changed

1 file changed

+36
-118
lines changed

README.md

Lines changed: 36 additions & 118 deletions
Original file line numberDiff line numberDiff line change
@@ -1,125 +1,43 @@
1-
# OneLiteFeather Blog
1+
# OneLiteFeather Blog / Site
22

3-
A multilingual blog platform built with Nuxt 3, featuring content in both German and English.
3+
Multilingual (de/en) Nuxt site with @nuxt/content, SEO/i18n, and feature-based components.
44

5-
## Project Overview
6-
7-
This project serves as the official blog for OneLiteFeather.net, providing articles and information in multiple languages. It's built with modern web technologies to ensure fast loading times, SEO optimization, and a great user experience.
8-
9-
## Features
10-
11-
- Multilingual content (German and English)
12-
- Responsive design with Tailwind CSS
13-
- SEO optimized with meta tags, sitemap, and robots.txt
14-
- Content management using Nuxt Content
15-
- Social media preview images
16-
- Structured data for better search engine visibility
17-
18-
## Roadmap
19-
20-
This project is intended to become the normal/official site for OneLiteFeather.net. Future plans include:
21-
22-
- Expanding content categories
23-
- Enhancing user experience
24-
- Improving performance metrics
25-
- Adding more interactive elements
26-
- Integrating with other OneLiteFeather services
27-
28-
## Technologies Used
29-
30-
- [Nuxt 3](https://nuxt.com/) - Vue.js framework
31-
- [Nuxt Content](https://content.nuxtjs.org/) - Content management
32-
- [Nuxt i18n](https://i18n.nuxtjs.org/) - Internationalization
33-
- [Tailwind CSS](https://tailwindcss.com/) - Styling
34-
- [Nuxt SEO](https://nuxtseo.com/) - SEO optimization
5+
## Stack
6+
- Nuxt 3 + TypeScript, Tailwind CSS
7+
- @nuxt/content for Markdown/data collections (blog, sponsors, timeline, etc.)
8+
- @nuxtjs/i18n, @nuxtjs/seo, @nuxtjs/sitemap, nuxt-schema-org
9+
- FontAwesome (brands/solid) + @nuxt/image (Cloudflare provider)
3510

3611
## Project Structure
37-
38-
- `content/` - Blog posts and other content (organized by language)
39-
- `components/` - Vue components
40-
- `layouts/` - Page layouts
41-
- `pages/` - Application pages
42-
- `public/` - Static assets
43-
- `i18n/` - Internationalization configuration
44-
45-
## Setup
46-
47-
Make sure to install dependencies:
48-
49-
```bash
50-
# Using pnpm (recommended)
51-
pnpm install
52-
53-
# Using npm
54-
npm install
55-
56-
# Using yarn
57-
yarn install
58-
59-
# Using bun
60-
bun install
61-
```
62-
63-
## Development Server
64-
65-
Start the development server on `http://localhost:3000`:
66-
67-
```bash
68-
# Using pnpm (recommended)
69-
pnpm dev
70-
71-
# Using npm
72-
npm run dev
73-
74-
# Using yarn
75-
yarn dev
76-
77-
# Using bun
78-
bun run dev
79-
```
80-
81-
## Production
82-
83-
Build the application for production:
84-
85-
```bash
86-
# Using pnpm (recommended)
87-
pnpm build
88-
89-
# Using npm
90-
npm run build
91-
92-
# Using yarn
93-
yarn build
94-
95-
# Using bun
96-
bun run build
97-
```
98-
99-
Locally preview production build:
100-
101-
```bash
102-
# Using pnpm (recommended)
103-
pnpm preview
104-
105-
# Using npm
106-
npm run preview
107-
108-
# Using yarn
109-
yarn preview
110-
111-
# Using bun
112-
bun run preview
113-
```
114-
115-
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
12+
- `content/` — localized collections (`blog_{locale}`, `sponsors_{locale}`, etc.)
13+
- `components/features/` — navigation, footer, sponsoring, OpenCollective, home sections
14+
- `components/base/` — primitives (buttons, typography, icons)
15+
- `layouts/` — shared layout chrome
16+
- `pages/` — route-driven pages
17+
- `i18n/locales/` — locale message files
18+
19+
## Scripts
20+
- Install: `pnpm install`
21+
- Dev: `pnpm dev`
22+
- Build: `pnpm build`
23+
- Preview: `pnpm preview`
24+
- Generate (SSG): `pnpm generate`
25+
26+
## Content authoring
27+
- Blog posts live under `content/blog/{locale}/`. Frontmatter supports `title`, `description`, `slug`, `pubDate`, `canonical`, `alternates`, `sitemap`, etc.
28+
- Sponsors: `content/sponsors/{locale}/home.json` supports `name`, `url`, `description`, `badge`, plus optional `logo` (URL) or `icon` (`"fab cloudflare"` style).
29+
- Schema for all collections lives in `content.config.ts`.
30+
31+
## SEO / i18n
32+
- `usePageSeo` + `useHomeSeo` provide canonical/hreflang and social meta.
33+
- Sitemap is auto-generated with i18n-aware content source and alternates.
34+
- Schema.org via `nuxt-schema-org`; site config from `nuxt.config.ts`.
11635

11736
## Releases
37+
- Semantic-release on main with conventional commits. Run `pnpm release` (with push access) to publish tags/changelog.
38+
- Footer version is pulled from `package.json` (`appConfig.version`).
11839

119-
- Main branch uses `semantic-release` with conventional commits to automate versions, changelog, git tag, and package.json updates.
120-
- Run `pnpm release` on the main branch with push access; it updates `CHANGELOG.md`, bumps the version, and creates the release commit/tag.
121-
- The current app version is surfaced in the footer from `appConfig.version` (pulled from `package.json`).
122-
123-
## Testing
124-
125-
This project is tested with BrowserStack.
40+
## Contributing
41+
- Use 2-space indentation and `<script setup lang="ts">`.
42+
- Prefer feature components under `components/features/` and shared primitives in `components/base/`.
43+
- Keep diffs small; follow existing naming (`PascalCase.vue`, route-based pages).

0 commit comments

Comments
 (0)