mirror of https://github.com/mitchell/mjfs-us.git
Reorganize project, minor copy improvements, and minor refactors
This commit is contained in:
parent
e0a2e3df9d
commit
f56da3602e
|
@ -9,7 +9,7 @@ export default defineConfig({
|
||||||
siteTitle: "mjfs.us",
|
siteTitle: "mjfs.us",
|
||||||
nav: [
|
nav: [
|
||||||
{ text: "Home", link: "/" },
|
{ text: "Home", link: "/" },
|
||||||
{ text: "Experience", link: "/mystro" },
|
{ text: "Experience", link: "/jobs/mystro" },
|
||||||
{ text: "Contact", link: "/contact" },
|
{ text: "Contact", link: "/contact" },
|
||||||
],
|
],
|
||||||
|
|
||||||
|
@ -17,19 +17,19 @@ export default defineConfig({
|
||||||
{
|
{
|
||||||
text: "Work Experience",
|
text: "Work Experience",
|
||||||
items: [
|
items: [
|
||||||
{ text: "Mystro", link: "/mystro" },
|
{ text: "Mystro", link: "/jobs/mystro" },
|
||||||
{ text: "Rotabull", link: "/rotabull" },
|
{ text: "Rotabull", link: "/jobs/rotabull" },
|
||||||
{ text: "TV Time", link: "/tv-time" },
|
{ text: "TV Time", link: "/jobs/tv-time" },
|
||||||
{ text: "Hypremium", link: "/hypremium" },
|
{ text: "Hypremium", link: "/jobs/hypremium" },
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: "Personal Projects",
|
text: "Personal Projects",
|
||||||
items: [
|
items: [
|
||||||
{ text: "mjfs.us", link: "/mjfs-us" },
|
{ text: "mjfs.us", link: "/projects/mjfs-us" },
|
||||||
{ text: "mjfs.us (Old)", link: "/mjfs-us-react" },
|
{ text: "mjfs.us (Old)", link: "/projects/mjfs-us-react" },
|
||||||
{ text: "lambdarouter", link: "/lambdarouter" },
|
{ text: "lambdarouter", link: "/projects/lambdarouter" },
|
||||||
{ text: "selfpass", link: "/selfpass" },
|
{ text: "selfpass", link: "/projects/selfpass" },
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
18
README.md
18
README.md
|
@ -1,5 +1,17 @@
|
||||||
# mjfs-us
|
# mjfs-us
|
||||||
|
|
||||||
|
When creating this newest site, I decided to stick with TypeScript but instead go with Vue for fun.
|
||||||
|
Its powered by [VitePress](https://vitepress.dev/), a static site generator that uses Vite under the
|
||||||
|
hood to generate static HTML/JS/CSS assets from Markdown templates and Vue components. It's then
|
||||||
|
uploaded to S3 and distributed around the US by Cloudfront.
|
||||||
|
|
||||||
|
So far I've really enjoyed writing the bulk of the content in Markdown, while being able to add in
|
||||||
|
Vue single file components where desired. Vue feels very lightweight to write and use, even in this
|
||||||
|
hybrid environment. I've also been using this project a test-ground for [Bun](https://bun.sh/) as a
|
||||||
|
package manager and dev environment. So far so good!
|
||||||
|
|
||||||
|
# Development
|
||||||
|
|
||||||
To install dependencies:
|
To install dependencies:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
@ -12,4 +24,8 @@ To run:
|
||||||
bun run dev
|
bun run dev
|
||||||
```
|
```
|
||||||
|
|
||||||
This project was created using `bun init` in bun v1.1.12. [Bun](https://bun.sh) is a fast all-in-one JavaScript runtime.
|
To build:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bun run build
|
||||||
|
```
|
||||||
|
|
|
@ -10,6 +10,8 @@ const formattedDiscord = "zettam on Discord";
|
||||||
const discordLink = "https://discord.com/users/145338365133193226/";
|
const discordLink = "https://discord.com/users/145338365133193226/";
|
||||||
|
|
||||||
const { text, copy, isSupported } = useClipboard();
|
const { text, copy, isSupported } = useClipboard();
|
||||||
|
|
||||||
|
const copiedMsg = (text: string) => `Copied ${text} to clipboard`;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
@ -17,19 +19,19 @@ const { text, copy, isSupported } = useClipboard();
|
||||||
<VPButton
|
<VPButton
|
||||||
theme="brand"
|
theme="brand"
|
||||||
class="button"
|
class="button"
|
||||||
:text="text === email ? `Copied ${email}` : email"
|
:text="text === email ? copiedMsg(email) : 'E-mail'"
|
||||||
@click="copy(email)"
|
@click="copy(email)"
|
||||||
/>
|
/>
|
||||||
<VPButton
|
<VPButton
|
||||||
theme="alt"
|
theme="alt"
|
||||||
class="button"
|
class="button"
|
||||||
:text="text === phone ? `Copied ${phone}` : formattedPhone"
|
:text="text === phone ? copiedMsg(phone) : 'Phone'"
|
||||||
@click="copy(phone)"
|
@click="copy(phone)"
|
||||||
/>
|
/>
|
||||||
<VPButton
|
<VPButton
|
||||||
theme="alt"
|
theme="alt"
|
||||||
class="button"
|
class="button"
|
||||||
:text="text === discord ? `Copied ${discord}` : formattedDiscord"
|
:text="text === discord ? copiedMsg(discord) : 'Discord'"
|
||||||
@click="copy(discord)"
|
@click="copy(discord)"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
4
index.md
4
index.md
|
@ -14,8 +14,8 @@ features:
|
||||||
technologies like React.js, Ruby on Rails, Phoenix (Elixir), and Golang.
|
technologies like React.js, Ruby on Rails, Phoenix (Elixir), and Golang.
|
||||||
- title: Mobile
|
- title: Mobile
|
||||||
details:
|
details:
|
||||||
Extensive React-Native experience through production-level projects used by
|
Extensive React-Native experience through several green-field projects and an active app store
|
||||||
thousands of users to this day.
|
listing with thousands of daily active users.
|
||||||
- title: DevOps
|
- title: DevOps
|
||||||
details:
|
details:
|
||||||
A love of automation and a start in system administration helps me stay interested in
|
A love of automation and a start in system administration helps me stay interested in
|
||||||
|
|
|
@ -20,9 +20,9 @@
|
||||||
"typescript": "^5.0.0"
|
"typescript": "^5.0.0"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "bun vitepress dev",
|
"dev": "vitepress dev",
|
||||||
"build": "bun vitepress build",
|
"build": "vitepress build",
|
||||||
"preview": "bun vitepress preview",
|
"preview": "vitepress preview",
|
||||||
"typecheck": "bunx vue-tsc",
|
"typecheck": "bunx vue-tsc",
|
||||||
"format": "prettier -w .",
|
"format": "prettier -w .",
|
||||||
"lint": "eslint .",
|
"lint": "eslint .",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import RepoButton from "./components/RepoButton.vue";
|
import RepoButton from "../components/RepoButton.vue";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
# lambdarouter
|
# lambdarouter
|
|
@ -1,5 +1,5 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import RepoButton from "./components/RepoButton.vue";
|
import RepoButton from "../components/RepoButton.vue";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
# mjfs.us (React.js version)
|
# mjfs.us (React.js version)
|
|
@ -1,5 +1,5 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import RepoButton from "./components/RepoButton.vue";
|
import RepoButton from "../components/RepoButton.vue";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
# mjfs.us
|
# mjfs.us
|
||||||
|
@ -11,6 +11,7 @@ uploaded to S3 and distributed around the US by Cloudfront.
|
||||||
|
|
||||||
So far I've really enjoyed writing the bulk of the content in Markdown, while being able to add in
|
So far I've really enjoyed writing the bulk of the content in Markdown, while being able to add in
|
||||||
Vue single file components where desired. Vue feels very lightweight to write and use, even in this
|
Vue single file components where desired. Vue feels very lightweight to write and use, even in this
|
||||||
hybrid environment.
|
hybrid environment. I've also been using this project a test-ground for [Bun](https://bun.sh/) as a
|
||||||
|
package manager and dev environment. So far so good!
|
||||||
|
|
||||||
<RepoButton href="https://github.com/mitchell/mjfs-us" />
|
<RepoButton href="https://github.com/mitchell/mjfs-us" />
|
|
@ -1,5 +1,5 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import RepoButton from "./components/RepoButton.vue";
|
import RepoButton from "../components/RepoButton.vue";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
# selfpass
|
# selfpass
|
Loading…
Reference in New Issue