Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/eggsy/website

🧬 Source code of my personal website. Everything is included. Written in NuxtJS, TypeScript and Windi CSS!
https://github.com/eggsy/website

blog discord firebase nuxt portfolio premid tailwind-css typescript vue windi-css

Last synced: about 17 hours ago
JSON representation

🧬 Source code of my personal website. Everything is included. Written in NuxtJS, TypeScript and Windi CSS!

Awesome Lists containing this project

README

        

eggsy.xyz




Deploy status

Codacy code quality

My personal portfolio website, built with Nuxt.js, Windi CSS, TypeScript and Firebase.

### ✨ Features

Website features many custom built systems, integrations and pages!

- βœ… Projects, experiences, skills, GitHub Repositories, favorite songs, contact pages.
- βœ… Fully static markdown-driven blog with Nuxt Content.
- βœ… Firebase integration.
- βœ… Real-time Discord profile data using [Lanyard API](https://github.com/Phineas/lanyard/).
- βœ… Last.fm API to display top tracks and recently played songs-[example](https://eggsy.xyz/me/songs).
- βœ… Written in TypeScript.
- βœ… Tons of handmade custom components.

### πŸ”§ Getting Started

You need to install [Node.js](https://nodejs.org/) and [Git](https://git-scm.com/downloads) to your machine. Node.js comes with its own package manager called `npm`, you can either use that or you can use [`pnpm`](https://pnpm.io/installation) since it's faster and caches downloaded dependencies properly.

- Clone the repository with `git clone https://github.com/eggsy/website`
- Install dependencies with your preffered package manager.
- With pnpm: `pnpm install`
- With NPM: `npm install`
- If you are going to use Firebase, you'll need to rename `.env.example` to `.env` and fill the config.
- **P.S.** You can use the website without the Fireabse integration as it requires a bunch of additional steps on its own. Read the title below for more information.
- Start the app:
- For development:
- With pnpm: `pnpm dev`
- With NPM: `npm run dev`
- To build and compile:
- With pnpm: `pnpm generate` (or `pnpm build`)
- With NPM: `npm run generate` or (`npm run build`)

If you are wondering about **how to host it on free/paid static hosting services** like (Netlify, Vercel etc.), you can refer to [Nuxt.js docs](https://nuxtjs.org/deployments/netlify/). My project is hosted on [Netlify](https://netlify.com).

### πŸ€” Don't need Firebase?

If you don't want to take the additional steps installing and configuring a Firebase account just to use the website, follow these steps:

1. Remove `firebase` and `@nuxtjs/firebase` modules via your package manager.
2. Remove `@nuxtjs/firebase` from `tsconfig.json`.
3. Remove `firebase` import and the line of `@nuxtjs/firebase` reference in the array in `config/modules.ts` file.
4. Remove `@/plugins/Firebase` reference from the plugins array in `config/plugins.ts` (remove the whole object), and delete that file from `plugins` directory, you don't need it anymore.
5. Delete `config/modules/firebase.ts`.
6. Delete the Daily page: `src/pages/daily.vue`.
- Delete existing links and references to this page as it might throw errors when building the app.

### πŸ’– Sponsors