A modern author & poet portfolio website built using React, Vite, and Tailwind CSS. This website showcases my blogs, poetry, books, and personal writing journey with a clean, minimal aesthetic inspired by literature-focused design — optimized for readability, performance, and scalability.
Website: https://authors-page-iota.vercel.app/
-
Architecture & Design Decisions
- Component Architecture
- Content Architecture
- Mermaid Diagram
This repository contains my personal author portfolio, built to present:
- My blogs & travel writing
- My poetry collections
- My published & upcoming books
- My creative identity as a writer
- My social & publishing presence
The website follows a content-first architecture, where:
- Blogs & poems are managed via Sanity CMS
- Books are managed via a simple data configuration file
- Layout and typography emphasize reading comfort
The UI is fully responsive and designed for:
- Readers
- Editors & publishers
- Literary platforms
- General audiences
- React — UI framework
- Vite — fast build tooling
- Tailwind CSS — utility-first styling
- Sanity CMS — blog & poetry content management
- Vercel — deployment & hosting
Minimal, calm, and distraction-free layout inspired by author websites and print aesthetics.
- Rich text support
- Headings, paragraphs, and formatting
- Separate blog & poetry sections
- Individual detail pages
Each book includes:
- Cover image
- Title
- Description
- External purchase/read links
Optimized for:
- Mobile reading
- Tablet browsing
- Desktop viewing
- Clean URLs
- Semantic HTML
- Optimized metadata
- Fast load times
- Vite-powered builds
- Tailwind’s minimal CSS output
- CDN delivery via Vercel
authors-page/
│
├── src/
│ ├── components/ # Header, Footer, reusable UI components
│ ├── pages/ # Home, Blogs, BlogDetail, Poetry, PoemDetail, Books, Contact
│ ├── data/ # Books data configuration
│ ├── assets/ # Images, book covers, hero images
│ ├── sanityClient.js # Sanity CMS client setup
│ ├── App.jsx # App routes
│ ├── main.jsx # Entry point
│
├── public/ # Favicon, static files
├── index.html
├── tailwind.config.js
├── package.json
├── README.md
git clone https://github.com/Deepak-J0shi/My-Authors-Page.git
cd My-Authors-Pagenpm installnpm run devApp will run at:
http://localhost:5173
npm run buildnpm run preview- Component-based layout
- Easy content-driven UI
- Scales well as content grows
- Typography consistency
- Fast design iteration
- Clean, minimal aesthetic
- No bloated CSS files
- Rich text editing
- Structured content
- Easy to add blogs & poems
- Separation of content & UI
- Seamless React deployment
- SPA routing support
- Global CDN
- Zero configuration
flowchart TD
A[Reader / Visitor] --> B[React UI]
B --> C[Sanity CMS Content]
B --> D[Static Book Data]
C --> E[Blog & Poetry Pages]
D --> F[Books Page]
B --> G[Reusable Components]
G --> H[Header / Footer / Layout]
B --> I[Vercel CDN Deployment]
- Large readable fonts
- Generous spacing
- Calm color palette
- Minimal visual noise
Home → Blogs → Poetry → Books → Contact
- Shared layout styles
- Consistent card design
- Unified typography system
- Hover transitions
- Micro-animations
- No heavy motion — content remains primary
→ React loads layout
→ Rendered via PortableText
→ Displayed via config
✔ Solved using proper SPA routing configuration.
✔ Solved with responsive typography & spacing.
Pros: Easy updates, clean separation Cons: Requires Sanity availability
- Built with Vite → ultra-fast dev & build
- Deployed on Vercel → instant global delivery
- Tailwind ensures minimal CSS bundle
- CMS data fetched efficiently
- Optimized for long-form reading