Skip to content

Commit b543a44

Browse files
committed
docs: rewrite README as portfolio overview
1 parent ea891b4 commit b543a44

1 file changed

Lines changed: 47 additions & 36 deletions

File tree

README.md

Lines changed: 47 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,70 @@
1-
# Ngportfolio
1+
# Alexey Popov — Portfolio
22

3-
This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 22.0.3.
3+
**Tech Lead / Senior Angular Developer (NgRx)** · 14+ years · Web (SSR) · Smart TV · Mobile (Ionic) · Desktop (Tauri/Rust)
44

5-
## Development server
5+
🌐 **Live:** https://asdalexey.github.io/  ·  🇬🇧 [/en/](https://asdalexey.github.io/en/)  ·  🇷🇺 [/ru/](https://asdalexey.github.io/ru/)
66

7-
To start a local development server, run:
7+
This repository is my personal portfolio — and the site itself is the demo: a production-grade **Angular 22**
8+
application, fully bilingual, prerendered for SEO, and covered by tests at 100%.
89

9-
```bash
10-
ng serve
11-
```
10+
---
1211

13-
Once the server is running, open your browser and navigate to `http://localhost:4200/`. The application will automatically reload whenever you modify any of the source files.
12+
## Highlights
1413

15-
## Code scaffolding
14+
- **Angular 22** — standalone components, **zoneless** change detection, signals, `inject()`, strict TypeScript, OnPush everywhere.
15+
- **Bilingual (EN / RU)**`@angular/localize` with prerendered `/en/` and `/ru/` builds, language switcher, browser-language redirect.
16+
- **SEO-first** — static prerendering (SSG), per-locale meta/Open Graph/Twitter, `hreflang` + canonical, JSON-LD (`Person` / `WebSite` / `ProfilePage`), `sitemap.xml`, `robots.txt`, OG image.
17+
- **100% test coverage** — Vitest + my own [`vitest-auto-spy`](https://www.npmjs.com/package/vitest-auto-spy) library (dogfooded).
18+
- **Lighthouse** — Accessibility, Best Practices and SEO at **100**; performance tuned with self-hosted fonts, inlined critical CSS and zero render-blocking third-party requests.
19+
- **Quality gates** — ESLint (+ custom local rules), Prettier, Stylelint, Husky hooks, madge (circular deps), jscpd.
20+
- **CI/CD** — GitHub Actions builds both locales and deploys to GitHub Pages.
1621

17-
Angular CLI includes powerful code scaffolding tools. To generate a new component, run:
22+
## Tech stack
1823

19-
```bash
20-
ng generate component component-name
21-
```
24+
`Angular 22` · `TypeScript` · `RxJS` · `SCSS` · `@angular/localize` · `Vitest` · `vitest-auto-spy` ·
25+
`ESLint` · `Prettier` · `Stylelint` · `GitHub Actions` · `Bun`
2226

23-
For a complete list of available schematics (such as `components`, `directives`, or `pipes`), run:
27+
## Local development
2428

2529
```bash
26-
ng generate --help
30+
bun install
31+
bun run start # http://localhost:4200/ (source locale, EN)
32+
bun run start:ru # Russian locale
2733
```
2834

29-
## Building
30-
31-
To build the project run:
35+
## Common scripts
3236

3337
```bash
34-
ng build
38+
bun run build # production build, both locales, prerendered
39+
bun run assemble # add redirect / sitemap / robots / og-image to dist
40+
bun run test:coverage # Vitest with 100% coverage gate
41+
bun run check:code-quality # prettier + eslint + stylelint
42+
bun run madge # circular-dependency check
3543
```
3644

37-
This will compile your project and store the build artifacts in the `dist/` directory. By default, the production build optimizes your application for performance and speed.
38-
39-
## Running unit tests
40-
41-
To execute unit tests with the [Vitest](https://vitest.dev/) test runner, use the following command:
45+
## Project structure
4246

43-
```bash
44-
ng test
4547
```
46-
47-
## Running end-to-end tests
48-
49-
For end-to-end (e2e) testing, run:
50-
51-
```bash
52-
ng e2e
48+
src/app/
49+
├── core/ # models + framework services (SEO, structured data, locale)
50+
├── features/portfolio/
51+
│ ├── sections/ # hero · about · experience · projects
52+
│ └── portfolio.component
53+
└── shared/
54+
├── components/ # nav · footer · language-switcher · cards · icon
55+
└── data/ # locale-independent content
56+
src/locale/ # messages.ru.xlf
57+
seo/ # robots.txt · sitemap.xml · root redirect
5358
```
5459

55-
Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs.
60+
## Deployment
61+
62+
Pushing to `main` triggers [`.github/workflows/deploy.yml`](.github/workflows/deploy.yml): it builds the
63+
EN + RU locales, assembles the site root, and publishes to GitHub Pages (source: GitHub Actions).
5664

57-
## Additional Resources
65+
## Contact
5866

59-
For more information on using the Angular CLI, including detailed command references, visit the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
67+
- **GitHub:** [@ASDAlexey](https://github.com/ASDAlexey)
68+
- **LinkedIn:** [alexey-popov](https://www.linkedin.com/in/alexey-popov-7988a874/)
69+
- **Email:** ASDAlexey@yandex.ru
70+
- **Location:** Taganrog, Russia · UTC+3 · remote-first

0 commit comments

Comments
 (0)