This commit initializes both the Nuxt frontend and the Rust backend of the new version of phundrak.com
phundrak.com
Introduction
This is the repository for my website phundrak.com which contains the
code available on the main branch. Code available on the develop
branch is available at beta.phundrak.com.
Architecture
The website follows a modern full-stack architecture:
- Backend: Rust using the Poem web framework (located in backend/)
- Frontend: Nuxt 4 + Vue 3 + TypeScript (located in frontend/)
Backend
The backend is written in Rust and provides a RESTful API using the Poem framework with OpenAPI support.
Running the Backend
To run the backend in development mode:
cd backend
cargo run
To run tests:
cd backend
cargo test
For continuous testing and linting during development, use bacon:
cd backend
bacon
Building the Backend
To build the backend for production:
cd backend
cargo build --release
The compiled binary will be available at backend/target/release/backend.
Frontend
The frontend is built with Nuxt 4, Vue 3, and TypeScript, providing a modern single-page application experience.
Installing Dependencies
First, install the required dependencies using pnpm:
cd frontend
pnpm install
Running the Frontend
To run the frontend in development mode:
cd frontend
pnpm dev
Building the Frontend
To build the frontend for production:
cd frontend
pnpm build
The compiled version of the website can then be found in frontend/.output.